溫馨提示×

CentOS FTPServer SSL證書安裝步驟

小樊
44
2025-10-22 00:11:56
欄目: 云計算

1. 安裝vsftpd和OpenSSL
首先確保系統已安裝vsftpd(FTP服務器軟件)和OpenSSL(證書生成工具)。若未安裝,執行以下命令安裝:
sudo yum install vsftpd openssl -y

2. 生成SSL證書和私鑰
使用OpenSSL生成自簽名證書(生產環境建議替換為CA頒發的證書)。執行以下命令生成有效期365天、RSA密鑰長度2048位的證書:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/vsftpd.key -out /etc/pki/tls/certs/vsftpd.pem
執行過程中需輸入國家、組織名稱、域名等信息(如無域名可直接回車),生成的私鑰(.key)和證書(.pem)將分別保存至指定路徑。

3. 配置vsftpd啟用SSL
編輯vsftpd主配置文件/etc/vsftpd/vsftpd.conf,添加或修改以下關鍵參數以啟用SSL并強化安全性:

ssl_enable=YES                # 啟用SSL/TLS加密
rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem  # 證書文件路徑
rsa_private_key_file=/etc/pki/tls/private/vsftpd.key  # 私鑰文件路徑
force_local_data_ssl=YES      # 強制數據傳輸使用SSL
force_local_logins_ssl=YES    # 強制登錄過程使用SSL
ssl_tlsv1=YES                 # 允許TLSv1協議(更安全)
ssl_sslv2=NO                  # 禁用SSLv2(不安全)
ssl_sslv3=NO                  # 禁用SSLv3(不安全)
allow_anon_ssl=NO             # 禁止匿名用戶使用SSL
userlist_enable=YES           # 啟用用戶列表控制
userlist_deny=NO              # 允許用戶列表中的用戶登錄(需配合/etc/vsftpd/user_list使用)

保存并退出配置文件。

4. 配置防火墻放行流量
若系統啟用了firewalld防火墻,需允許FTP及HTTPS(SSL)流量通過:

sudo firewall-cmd --permanent --add-service=ftp    # 允許FTP服務
sudo firewall-cmd --permanent --add-service=https # 允許HTTPS(SSL)服務
sudo firewall-cmd --reload                         # 重新加載防火墻規則

若使用iptables,需添加對應端口規則(FTP默認21端口,SSL加密流量同理)。

5. (可選)配置SELinux(若啟用)
若系統SELinux處于enforcing模式,需調整策略以允許vsftpd訪問用戶目錄:

sudo setsebool -P ftp_home_dir on       # 允許FTP訪問用戶家目錄
sudo setsebool -P allow_ftpd_full_access on  # 允許FTP完全訪問(根據需求調整)

6. 重啟vsftpd服務并驗證狀態
應用配置變更,重啟vsftpd服務:
sudo systemctl restart vsftpd
檢查服務運行狀態,確保無報錯:
sudo systemctl status vsftpd
若顯示“active (running)”,則表示服務已正常啟動。

7. 測試SSL加密連接
使用支持SSL的FTP客戶端(如FileZilla)連接服務器:

  • 協議選擇“FTPES”(FTP over Explicit TLS)或“SFTP”(若配置了SSH);
  • 主機填寫服務器IP地址;
  • 用戶名/密碼填寫FTP賬戶信息;
  • 連接后查看“站點管理器”中的“加密”選項,確認已啟用SSL/TLS。

注意事項

  • 自簽名證書會在客戶端瀏覽器或FTP工具中提示“不安全”,僅用于測試環境;生產環境建議從Let’s Encrypt等CA機構獲取免費證書。
  • 若需支持被動模式(PASV),需在vsftpd.conf中添加pasv_enable=YES、pasv_min_port=1024、pasv_max_port=1048,并在防火墻中開放對應端口范圍。
  • 確保證書文件權限正確(私鑰文件設置為600,證書文件設置為644),防止未授權訪問:
    sudo chmod 600 /etc/pki/tls/private/vsftpd.key
    sudo chmod 644 /etc/pki/tls/certs/vsftpd.pem

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女