Linux FTP服务器通常支持以下协议及相关技术,具体取决于所选择的FTP服务软件(如vsftpd、ProFTPD、pure-ftpd等):
FTP (File Transfer Protocol)
FTPS (FTP Secure)
STARTTLS
命令升级加密。SFTP (SSH File Transfer Protocol)
sftp-server
提供支持。TFTP (Trivial FTP)
tftpd
服务。HTTP/HTTPS
mod_http
)提供文件访问。FXP (File eXchange Protocol)
mod_sasl
),支持Kerberos、LDAP等。软件 | FTP | FTPS | SFTP | HTTP | 备注 |
---|---|---|---|---|---|
vsftpd | ✔️ | ✔️ | ❌ | ❌ | 轻量级,默认支持TLS加密 |
ProFTPD | ✔️ | ✔️ | ✔️* | ✔️* | 模块化设计,需加载mod_sftp |
pure-ftpd | ✔️ | ✔️ | ❌ | ❌ | 支持虚拟用户和数据库后端 |
OpenSSH | ❌ | ❌ | ✔️ | ❌ | 仅提供SFTP(非FTP服务器) |
*需通过模块或额外配置实现。
vsftpd
适合基础需求;ProFTPD
适合复杂场景(如虚拟主机)。# 在/etc/vsftpd.conf中添加:
ssl_enable=YES
allow_anon_ssl=NO
force_local_logins_ssl=YES
force_local_data_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/path/to/cert.pem
rsa_private_key_file=/path/to/key.pem
通过合理选择和配置协议,可以平衡安全性与功能需求。