我使用的服務器是SUSE系統,在需要傳輸文件的時候需要在服務器上安裝FTP服務。安裝步驟如下。
1. 檢查SUSE上是否安裝了FTP服務
使用命令:rpm -qa | grep vsftp 檢查系統是否已經安裝了ftp服務。如果未安裝,則無回顯;已經安裝,回顯如下:
MYSUSE:~ # rpm -qa | grep vsftp
vsftpd-2.0.7-4.23.1
我系統並未安裝ftp服務,所以進行下一步。
2. FTP的rpm包下載
我是網上搜索找的。一般獲取安裝包的途徑有網上搜索和光盤拷貝,獲取還是挺容易的。我下載的安裝包是2.0.7版本,比較老了。不過這類工具包的差別並不大,使用沒有什么不同。
3. FTP安裝包安裝
使用命令:rpm -ivh vsftpd-2.0.7-4.23.1.x86_64.rpm 安裝ftp服務。安裝成功,回顯如下:
MYSUSE:/opt # rpm -ivh vsftpd-2.0.7-4.23.1.x86_64.rpm
Preparing... ########################################### [100%]
package vsftpd-2.0.7-4.23.1.x86_64 is already installed
4. 啟動vsftpd服務
使用命令:/etc/init.d/vsftpd start 啟動vsftpd服務。服務啟動成功,回顯如下:
MYSUSE:/opt # /etc/init.d/vsftpd start
Starting vsftpd done
5. 修改配置文件
通過修改vsftp的配置文件:vi /etc/vsftpd.conf,來配置ftp的各個參數。經過測試,我保留了一下幾個參數,可以使ftp功能正常使用。
write_enable=YES
local_enable=YES
local_umask=000
anonymous_enable=NO
anon_mkdir_write_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_lis
pam_service_name=vsftpd
以上配置,如果關鍵字編輯錯誤,會遇到啟動服務的時候,會遇到下面的報錯:
MYSUSE:/opt # /etc/init.d/vsftpd restart
Shutting down vsftpd done
Starting vsftpd startproc: exit status of parent of /usr/sbin/vsftpd: 1 failed
使用命令:sudo /usr/sbin/vsftpd,可以看到報錯的情況:
MYSUSE:/opt # sudo /usr/sbin/vsftpd
500 OOPS: unrecognised variable in config file: local_unmask
是配置文件中的local_umask編輯錯誤導致的。修改后,vsftpd服務可以成功啟動。
6. 配置ftp目錄及用戶
使用命令:mkdir /opt/ftp 創建ftp的主目錄。
使用命令:chmod 777 /opt/ftp 給該目錄賦權。可以根據需求自定義該文件夾權限。
使用命令:useradd -d /opt/ftp -m ftpuser 創建ftp用戶
使用命令:passwd ftpuser 配置ftp用戶ftpuser的密碼
7. 配置vsftp.chroot_list文件
在配置文件vsftp.conf中,chroot_list_file=/etc/vsftpd.chroot_list指定了ftp白名單的用戶配置文件。我們可以將想要不受限的用戶加到該文件里。
vi /etc/vsftpd.chrrot_list,在文件里添加剛剛創建的ftp用戶ftpuser。使用命令:wq 保存退出。
使用命令:service vsftpd restart 重啟vsftp服務,配置就完成了。