温馨提示×

ubuntu ftpserver怎样加密

小樊
42
2026-09-14 16:14:32
栏目: 网络安全

在 Ubuntu 上搭建 加密的 FTP 服务器,常见做法有三种,推荐程度从高到低如下:


✅ 推荐方案一:使用 FTPS(FTP over SSL/TLS)

最常用、兼容性好,基于 vsftpd + SSL 证书。

1. 安装 vsftpd

sudo apt update
sudo apt install vsftpd

2. 生成 SSL 证书(自签或正式)

自签示例:

sudo openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -keyout /etc/ssl/private/vsftpd.key \
  -out /etc/ssl/certs/vsftpd.crt

3. 配置 vsftpd

编辑:

sudo nano /etc/vsftpd.conf

关键配置:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES

# SSL/TLS
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/certs/vsftpd.crt
rsa_private_key_file=/etc/ssl/private/vsftpd.key

4. 重启服务

sudo systemctl restart vsftpd

5. 客户端连接方式

  • FileZilla:选择 FTP over TLS (FTPS)
  • 端口:21

✅ 推荐方案二:SFTP(SSH File Transfer Protocol)

更安全、更简单,不需要额外服务

1. 安装 SSH(一般已安装)

sudo apt install openssh-server

2. 使用系统用户登录

协议:SFTP
主机:服务器IP
端口:22
用户名 / 密码(或密钥)

3.(可选)限制用户只能 SFTP

sudo nano /etc/ssh/sshd_config

添加:

Match User ftpuser
    ChrootDirectory /home/ftpuser
    ForceCommand internal-sftp
sudo systemctl restart ssh

⚠️ 不推荐:普通 FTP(明文)

普通 FTP 是 明文传输,用户名密码可被窃听,不建议使用。


总结对比

方式 加密 端口 推荐度
FTPS 21 ⭐⭐⭐⭐
SFTP 22 ⭐⭐⭐⭐⭐
FTP 21

如果你愿意,我可以:

  • 帮你 一步步配置 FTPS
  • 或帮你 限制 SFTP 用户目录
  • 或区分 服务器版 / 桌面版

你现在的 Ubuntu 版本是多少?用于什么场景?

0