今天來說一下在RHEL5下使用VSftpd來搭建ftp服務器,在搭建之前首先要考慮自己的工作環境,我搭建ftp干什么,公司的具體要求是什么,然后再根據公司的需求來具體實施。下面是搭建的具體實驗步驟: 一、首先確定系統中已經安裝了VSftpd軟件包,可以使用如下命令來查看并安裝: liwei@linux# rpm -qa|grep vsftpd (如果有的話執行第二條就行了,若沒安裝,可以使用如下命令來安裝) liwei@linux# mount /dev/cdrom /media //掛載光盤到系統中 liwei@linux# rpm -vih /media/Server/vsftpd-版本號 //安裝VSftpd RHEL4(AS)中vsftpd的RPM軟件包在第1張光盤中,名為vsftpd-2.0.1-5.i386.rpm。默認情況下沒有安裝。Vsftpd的主配置文件是/etc/vsftpd.conf。未修改的主配置文件去掉注釋后如下(“;”后為解釋): anonymous_enable=YES ;是否允許匿名訪問 local_enable=YES ;是否允許本地用戶登錄 write_enable=YES ;是否允許本地用戶寫入 local_umask=022 ;生向掩碼(文件生成掩碼),跟權限有關,我記不住了,有興趣的朋友可以去查查,知道的朋友也請告訴我一下 dirmessage_enable=YES ;切換到FTP中的某目錄時,是否顯示該目錄下的隱含文件“.message” xferlog_enable=YES ;是否啟用啟用上傳和下載日志 connect_from_port_20=YES ;是否啟用FTP數據端口的連接請求 xferlog_std_format=YES ;是否讓FTP使用ftpd xferlog日志格式 pam_service_name=vsftpd ;設置PAM認證服務的配置文件,位于/etc/pam.d目錄下 userlist_enable=YES ;需與userlist_file配合使用,稍后介紹 listen=YES ;是否處于獨立啟動模式 tcp_wrappers=YES ;為YES時,以tcp_wrappers作為主機訪問控制方式 (去掉后,vsftpd的配置文件就這么一點^_^。) 使用如下命令可以檢測出是否安裝了vsftpd軟件,rpm -qa |grep vsftpd ,例如在我的centos 5.6中顯示的結果如下: 如果沒有安裝的話,可以下載安裝,也可以使用軟件源進行安裝。這里不再贅述。 (2)vsftpd軟件的使用 使用vsftpd軟件,主要包括如下幾個命令: 啟動ftp:service vsftpd start 停止ftp:service vsftpd stop 重啟ftp:service vsftpd restart 將 anonymous_enable=YES 改為 anonymous_enable=NO,意為不允許匿名用戶登陸; 將 anon_upload_enable=YES 改為 #anon_upload_enable=YES,意為不允許匿名用戶上傳文件; 將 anon_mkdir_write_enable=YES 改為 #anon_mkdir_write_enable=YES,意為不允許匿名用戶創建目錄; 檢查 local_enable=YES 是否這樣設置; 保存后退出。(要是設置為允許匿名用戶登錄,則使用anonymous這個用戶名,且密碼為任意字符,匿名用戶的目錄默認為是/var/ftp/pub。)
修改selinux中有關ftp的配置: getsebool -a | grep ftp setsebool -P ftp_home_dir on sftp并不是一個單獨的程序,實際上應該算是openssh的一部分,當主機啟動sshd服務時,sftp服務也同時被打開;關掉sshd服務時,sftp服務也不再能使用。要使用它,直接在終端執行sftp,它的語法幾乎和ftp一樣,而且具備ssh協議的命令補全功能,通配符也有效,selinux的設置基本上不用更改。 保存退出 編輯/etc/vsftpd.chroot_list文件,將ftp的帳戶名添加進去,保存退出
5.修改shell配置 vi編輯/etc/shells,如果該文件里沒有/usr/sbin/nologin或者/sbin/nologin(具體看當前系統配置)則追加進去
6.重啟vsftp服務并測試登錄 使用命令啟動vsftp服務:
|