在CentOS上配置VSFTP(Very Secure FTP Daemon)涉及多個步驟,包括安裝、基本配置、用戶管理和權限設置。以下是一個詳細的指南:
首先,確保你的系統是最新的,然后安裝VSFTP:
sudo yum update -y
sudo yum install vsftpd -y
安裝完成后,啟動VSFTP服務并設置為開機自啟:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
編輯VSFTP的配置文件 /etc/vsftpd/vsftpd.conf
:
sudo vim /etc/vsftpd/vsftpd.conf
進行以下配置:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
xferlog_enable=YES
connect_from_port_20=YES
ftpd_banner="Welcome to my test FTP server."
創建一個新用戶并設置其主目錄:
sudo useradd -d /home/ftpuser -s /sbin/nologin ftpuser
sudo passwd ftpuser
按照提示設置密碼。
設置用戶主目錄的權限:
sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
對于更高級的安全性,可以使用虛擬用戶。首先,創建一個用戶數據庫文件:
sudo vim /etc/vsftpd/vu.txt
添加用戶名和密碼,例如:
admin admin
upload upload
download download
將明文文件轉換為數據庫文件:
db_load -T -t hash -f /etc/vsftpd/vu.txt /etc/vsftpd/vu.db
sudo rm /etc/vsftpd/vu.txt
修改數據庫文件權限:
sudo chmod 600 /etc/vsftpd/vu.db
創建PAM文件以支持虛擬用戶:
sudo vim /etc/pam.d/vsftpd
添加以下內容:
auth required pam_userdb.so db=/etc/vsftpd/vu.db
account required pam_userdb.so db=/etc/vsftpd/vu.db
為每個虛擬用戶創建目錄并設置權限:
sudo mkdir /var/ftp/upload
sudo mkdir /var/ftp/download
sudo chown ftpuser:ftpuser /var/ftp/upload
sudo chown ftpuser:ftpuser /var/ftp/download
sudo chmod 755 /var/ftp/upload
sudo chmod 755 /var/ftp/download
為每個虛擬用戶創建權限文件:
sudo vim /etc/vsftpd/vu_perm/upload
sudo vim /etc/vsftpd/vu_perm/download
設置相應的權限,例如:
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/var/ftp/upload
對于下載用戶:
anon_world_readable_only=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
local_root=/var/ftp/download
完成配置后,重啟VSFTP服務以應用更改:
sudo systemctl restart vsftpd
如果使用防火墻,確保開放FTP所需的端口:
sudo firewall-cmd --permanent --add-port=20/tcp
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=990/tcp
sudo firewall-cmd --permanent --add-port=40000:50000/tcp
sudo firewall-cmd --reload
以上步驟涵蓋了在CentOS上安裝、配置VSFTP的基本流程,包括用戶管理和權限設置。根據具體需求,可以進一步調整配置以滿足安全性和功能性的要求。