要在Ubuntu上配置FTP服務器以支持SSL/TLS,您需要執行以下步驟:
安裝vsftpd: 在終端中運行以下命令以安裝vsftpd(非常安全的FTP守護程序):
sudo apt-get update
sudo apt-get install vsftpd
生成SSL證書和密鑰: 使用OpenSSL生成自簽名SSL證書和私鑰。在終端中運行以下命令:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
按照提示輸入相關信息。這將在指定的目錄中生成一個名為vsftpd.pem的文件,其中包含SSL證書和私鑰。
配置vsftpd以使用SSL/TLS: 使用文本編輯器打開/etc/vsftpd.conf文件:
sudo nano /etc/vsftpd.conf
在文件中找到以下行(如果找不到,請添加它們):
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
保存并關閉文件。
重啟vsftpd服務: 在終端中運行以下命令以重啟vsftpd服務,使更改生效:
sudo systemctl restart vsftpd
配置防火墻: 如果您啟用了UFW防火墻,請運行以下命令以允許FTP連接:
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp
現在,您的Ubuntu FTP服務器已配置為支持SSL/TLS??蛻舳爽F在可以使用FTPS(FTP over SSL/TLS)連接到服務器,通常使用端口990進行隱式連接,或使用端口21進行顯式連接。請注意,由于我們使用了自簽名證書,某些客戶端可能會警告您證書不受信任。在這種情況下,您可以選擇接受證書或將服務器的證書導入到客戶端的受信任證書頒發機構列表中。