安裝配置vsftpd做FTP服務,我們的Web應用使用git管理進行迭代,公共文件軟件存儲使用開源網盤Seafile來管理,基本夠用。想不到FTP的使用的場景,感覺它好像老去了,雖然現在基本沒有用到這個工具,但剛好公司公司刷一個硬件需要使用FTP來下載配置文件,于是研究使用了一下,記錄了一下使用過程。
安裝
在安裝前查看是否已安裝vsftpd
# 查看是否已安裝 方法一[root@localhost ~]# rpm -q vsftpdvsftpd-3.0.2-21.el7.x86_64# 查看是否已安裝 方法二[root@localhost ~]# vsftpd -vvsftpd: version 3.0.2# 安裝 vsftpd[root@localhost ~]# yum -y install vsftpd
查看位置
[root@localhost ~]# whereis vsftpdvsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
啟動vsftpd服務
systemctl start vsftpd.service
關閉firewall和SELinux
setenforce 0 # 設置SELinux 成為permissive模式 (關閉SELinux)setenforce 1 # 設置SELinux 成為enforcing模式 (開啟SELinux)# 或者修改配置vi /etc/selinux/config# SELINUX=enforcing# 注釋掉# SELINUXTYPE=targeted# 注釋掉SELINUX=disabled# 增加:wq! #保存退出setenforce 0
或者設置SELinux
getsebool -a | grep ftpsetsebool -P ftpd_full_access on
systemctl stop firewalld.service#停止firewallsystemctl disable firewalld.service#禁止firewall開機啟動
如果你不愿意關閉防火墻,需要防火墻添加FTP服務。
firewall-cmd --permanent --zone=public --add-service=ftpfirewall-cmd --reload
修改配置文件
配置文件/etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 不允許匿名訪問,禁用匿名登錄chroot_local_user=YES # 啟用限定用戶在其主目錄下use_localtime=YES # 使用本地時(自行添加)chroot_list_enable=YESlocal_enable=YES # 允許使用本地帳戶進行FTP用戶登錄驗證allow_writeable_chroot=YES # 如果啟用了限定用戶在其主目錄下需要添加這個配置,解決報錯 500 OOPS: vsftpd: refusing to run with writable root inside chroot()xferlog_enable=YES # 啟用上傳和下載的日志功能,默認開啟。local_umask=022 # 設置本地用戶默認文件掩碼022# FTP上本地的文件權限,默認是077,不過vsftpd安裝后的配置文件里默認是022
虛擬用戶高級參數
當virtual_use_local_privs=YES 時,虛擬用戶和本地用戶有相同的權限; 當virtual_use_local_privs=NO 時,虛擬用戶和匿名用戶有相同的權限,默認是NO。 當virtual_use_local_privs=YES,write_enable=YES時,虛擬用戶具有寫權限(上傳、下載、刪除、重命名)。 當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,anon_upload_enable=YES時,虛擬用戶不能瀏覽目錄,只能上傳文件,無其他權限。 當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=NO時,虛擬用戶只能下載文件,無其他權限。 當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=YES時,虛擬用戶只能上傳和下載文件,無其他權限。 當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_mkdir_write_enable=YES時,虛擬用戶只能下載文件和創建文件夾,無其他權限。 當virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_other_write_enable=YES時,虛擬用戶只能下載、刪除和重命名文件,無其他權限。新聞熱點
疑難解答