在CentOS上搭建FTPS服務器需要以下幾個步驟:
在終端中運行以下命令來安裝vsftpd和libssh2軟件包:
sudo yum install vsftpd libssh2
創建一個新的配置文件/etc/vsftpd/vsftpd.conf
,并使用文本編輯器打開它:
sudo nano /etc/vsftpd/vsftpd.conf
在配置文件中,找到以下設置并進行相應的修改:
anonymous_enable=YES
更改為anonymous_enable=NO
以禁止匿名訪問。local_enable=YES
設置為local_enable=YES
以允許本地用戶訪問。write_enable=YES
設置為write_enable=YES
以允許FTP寫入權限。chroot_local_user=YES
設置為chroot_local_user=YES
以限制用戶訪問自己的文件。allow_writeable_chroot
的注釋并將其設置為allow_writeable_chroot=YES
以允許寫入chroot目錄。保存并關閉配置文件。
確保已啟用SSH服務并創建一個名為ftpd
的新系統用戶:
sudo systemctl enable sshd
sudo systemctl start sshd
sudo useradd -m ftpd
sudo passwd ftpd
接下來,編輯/etc/ssh/sshd_config
文件:
sudo nano /etc/ssh/sshd_config
找到以下設置并進行相應的修改:
Subsystem sftp /usr/libexec/openssh/sftp-server
更改為Subsystem sftp internal-sftp
以使用內置的SFTP服務器。Match User ftpd
下的設置更改為:ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
保存并關閉配置文件。
為FTPS用戶創建一個目錄,例如/home/ftpd
,并設置適當的權限:
sudo mkdir /home/ftpd
sudo chown ftpd:ftpd /home/ftpd
sudo chmod 755 /home/ftpd
保存所有更改后,重啟vsftpd和SSH服務以使更改生效:
sudo systemctl restart vsftpd
sudo systemctl restart sshd
現在,您已經在CentOS上成功搭建了一個FTPS服務器。用戶可以使用FTP客戶端(如FileZilla)通過FTPS協議連接到服務器。請注意,這里使用的是內部SFTP服務器,而不是標準的FTPS服務器。要實現標準的FTPS(FTP over SSL),您需要安裝并配置OpenSSL。