CentOS7 安裝FTP服務
阿新 • • 發佈:2021-06-21
使用VSFTPD在CentOS7上安裝FTP服務
使用VSFTPD安裝FTP服務
- 首先更新軟體包管理器
sudo yum update
- 使用VSFTPD(VSFTPD表示“非常安裝的FTP守護程式軟體包”)。這是用於建立FTP伺服器的相對容易的軟體使用工具。使用命令安裝VSFTPD
sudo yum install vsftpd
。
- 啟動服務,並將其設定為開機啟動
啟動服務
sudo systemctl start vsftpd
遇到一個錯誤
具體還沒有找到原因,不過在重啟之後防火牆沒開啟之前成功啟動vsftpd服務,現在只能這麼解決了。
配置開機啟動
sudo systemctl enable vsftpd
- 配置防火牆
防火牆還沒有啟動,首先啟動防火牆
sudo systemctl start firewalld
新建一個防火牆規則,以允許埠21以及40000-450000的埠。
sudo firewall-cmd --zone=public --permanent --add-port=21/tcp
sudo firewall-cmd --zone=public --permanent --add-service=ftp
sudo firewall-cmd --zone=public --permanent --add-port=40000-45000/tcp
重啟防火牆,使配置生效。
sudo firewall-cmd --reload
配置VSFTPD
FTP可通過主動模式和被動模式與客戶機進行連線並傳輸資料。由於大多數客戶端機器的防火牆設定及無法獲取真實IP等原因。建議選擇被動模式搭建FTP服務,以下為被動模式的配置,FTP服務的行為由/etc/vsftpd/vsftpd.conf配置檔案確定。
-
首先備份配置檔案的副本
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.default
這樣可以確保出現問題之後,可以返回到預設的配置。
-
使用命令編輯配置檔案
anonymous_enable=NO local_enable=YES chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list listen=YES local_root=/var/ftp/test allow_writeable_chroot=YES pasv_enable=YES pasv_address=xxx.xx.xxx.xx #請修改為您的 Linux 雲伺服器公網 IP pasv_min_port=40000 pasv_max_port=45000
-
vsftpd提供了一種建立批准使用者列表的方法。要以這種方式管理使用者,在配置檔案中新增
userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO
建立使用者
-
建立一個新的FTP使用者
sudo adduser ftpyao
-
為使用者yao設定密碼
sudo passwd ftpyao
-
將使用者新增到使用者列表
echo "ftpyao" | sudo tee -a /etc/vsftpd/user_list
-
為新使用者建立目錄,並調整許可權
sudo mkdir -p /home/ftpyao/ftp/upload sudo chmod 550 /home/ftpyao/ftp sudo chmod 750 /home/ftpyao/ftp/upload sudo chown -R ftpyao: /home/ftpyao/ftp