怎样在Ubuntu上使用FTP服务器
导读:在 Ubuntu 上使用 FTP 服务器的完整指南 一 安装与基础配置 安装 vsftpd(Very Secure FTP Daemon):sudo apt update && sudo apt install vsftp...
在 Ubuntu 上使用 FTP 服务器的完整指南
一 安装与基础配置
- 安装 vsftpd(Very Secure FTP Daemon):sudo apt update & & sudo apt install vsftpd。
- 备份默认配置:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak。
- 编辑配置:sudo nano /etc/vsftpd.conf,常用基础项:
- 启用本地用户与写入:local_enable=YES,write_enable=YES
- 禁用匿名(更安全):anonymous_enable=NO
- 监听设置:listen=YES,按需设置 listen_ipv6=NO
- 应用并验证:sudo systemctl restart vsftpd;sudo systemctl status vsftpd。
二 用户与目录权限
- 创建专用 FTP 用户:sudo adduser ftpuser,按提示设置密码。
- 指定并调整家目录权限(示例):
- 创建目录:sudo mkdir -p /srv/ftp
- 赋权:sudo chown ftpuser:ftpuser /srv/ftp;sudo chmod 755 /srv/ftp
- 限制用户在主目录(chroot):在 /etc/vsftpd.conf 中设置 chroot_local_user=YES。若需可写,添加 allow_writeable_chroot=YES(注意安全影响)。
三 防火墙与被动模式
- UFW 放行 FTP 端口:
- 控制通道:sudo ufw allow 21/tcp
- 数据通道(FTP 被动模式端口范围,示例为 40000–50000):sudo ufw allow 40000:50000/tcp
- 启用防火墙:sudo ufw enable
- 云服务器或 NAT 环境务必开启被动模式并固定端口范围,客户端(如 FileZilla)也需设置为被动模式。
四 加密传输与证书配置
- 生成自签名证书(示例):
- sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.key -out /etc/ssl/private/vsftpd.crt
- 启用 FTPS(FTP over SSL/TLS):在 /etc/vsftpd.conf 中加入
- ssl_enable=YES
- rsa_cert_file=/etc/ssl/private/vsftpd.crt
- rsa_private_key_file=/etc/ssl/private/vsftpd.key
- 重启服务:sudo systemctl restart vsftpd;连接时选择“FTP over TLS/SSL”。
五 客户端连接与测试及更安全的替代方案
- 图形客户端(FileZilla):主机填服务器 IP,协议选 FTP - 显式 FTP over TLS(若启用 SSL/TLS),端口 21,输入用户名与密码测试上传/下载。
- 命令行测试:ftp < 服务器IP> ,登录后使用 put/get 进行传输。
- 更安全的替代:
- SFTP(基于 SSH,系统通常已内置 OpenSSH 服务):sudo apt install openssh-server;创建受限 SFTP 用户并在 /etc/ssh/sshd_config 中使用 internal-sftp 与 Match group/ChrootDirectory 进行隔离。
- 若仅需加密传输,优先选择 SFTP 或 FTPS,因明文 FTP 存在数据泄露风险。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 怎样在Ubuntu上使用FTP服务器
本文地址: https://pptw.com/jishu/751777.html
