Author:think
Date:2021-11-17
安裝vsftpd
yum install -y vsftpd
啟動服務並且將服務設置成開機自啟
systemctl start vsftpd
systemctl enable vsftpd
配置vsftpd
-
添加用戶並設置訪問的ftp目錄
useradd ftpuser -s /sbin/nologin -d /ftp_data && echo "123456"|passwd ftpuser --stdin
其中新增的用戶名為ftpuser,密碼為123456,vsftpd的數據目錄為/ftp_data
-
將/ftp_data的所有者修改為ftpuser
chown ftpuser:ftpuser /ftp_data/
-
備份vsftpd的配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
-
修改
vsftpd.conf
配置文件,禁用匿名用戶訪問ftp服務器vim /etc/vsftpd/vsftpd.conf
將配置文件中的
anonymous_enable=YES
修改成anonymous_enable=NO
-
修改配置文件
/etc/pam.d/vsftpd
#備份配置文件 cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak #編輯配置文件 vim /etc/pam.d/vsftpd #將auth required pam_shells.so修改為->auth required pam_nologin.so
參考文章:(10條消息) centos7下配置ftp服務器,各種登錄異常排查_andy_521521的博客-CSDN博客
-
重啟ftp服務
systemctl restart vsftpd.service
-
查看並修改selinux中有關ftp的配置
getsebool -a | grep ftp
如下顯示:
ftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> offftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> offhttpd_can_connect_ftp --> offhttpd_enable_ftp_server --> offtftp_anon_write --> offtftp_home_dir --> off
#修改配置setsebool -P ftpd_full_access onsetsebool -P tftp_home_dir on #測試時只配置上面`ftpd_full_access`不用配置`tftp_home_dir`也行
-P參數為永久開啟,CentOS 7開始使用
tftp_home_dir
代替ftp_home_dir
參考文章:【Linux/CentOS】Boolean ftp_home_dir is not defined - 霍莉雪特 - 博客園 (cnblogs.com)
-
配置防火牆
firewall-cmd --permanent --zone=public --add-service=ftp或firewall-cmd --zone=public --add-port=21/tcp --permanent#重置防火牆配置,使得配置立即生效firewall-cmd --reload
連接FTP服務器
-
配置連接參數
-
連接成功之后默認是沒有任何文件的
-
上傳文件進行測試
顯示能夠上傳成功
-
刪除文件測試成功之后即可代表FTP服務器安裝配置成功。