< 返回新闻公共列表

ubuntu如何搭建ftp服务器?

发布时间:2025-04-30 22:58:32

以下是在Ubuntu系统搭建FTP服务器的完整指南,涵盖主流方案vsftpd的部署流程及安全优化建议:


ubuntu如何搭建ftp服务器?.png


一、FTP服务选择与安装

推荐使用vsftpd(Very Secure FTP Daemon),其轻量且默认集成安全特性。执行安装命令:

sudo apt update && sudo apt install vsftpd

系统将自动创建配置文件/etc/vsftpd.conf和默认服务账户。


二、核心配置参数调整

编辑配置文件sudo nano /etc/vsftpd.conf,重点关注以下参数:

基础权限

   anonymous_enable=NO        # 禁用匿名登录

   local_enable=YES           # 允许本地用户登录

   write_enable=YES           # 开放写权限

   chroot_local_user=YES     # 将用户限制在个人目录

   allow_writeable_chroot=YES # 兼容性参数

被动模式设置(解决客户端连接超时)

   pasv_enable=YES

   pasv_min_port=40000        # 被动模式端口下限

   pasv_max_port=50000        # 端口上限范围建议1000+

   pasv_address=公网IP       # 服务器公网IP(云服务器必填)


三、用户与权限管理

创建专用FTP用户

   sudo useradd -m ftpuser -s /bin/bash

   sudo passwd ftpuser        # 设置用户密码

   sudo chown -R ftpuser:ftpuser /home/ftpuser

限制用户访问范围

在配置文件中追加:

   user_sub_token=$USER

   local_root=/home/$USER/ftp # 自动绑定用户子目录


四、防火墙与端口放行

使用UFW防火墙时执行:

sudo ufw allow 20:21/tcp          # 控制通道

sudo ufw allow 40000:50000/tcp    # 被动模式数据通道


五、服务启动与验证

sudo systemctl restart vsftpd

sudo systemctl enable vsftpd

测试连接:

终端命令:ftp 服务器IP


图形工具推荐FileZilla,需选择"FTP-显式TLS"模式


六、安全增强建议

TLS加密传输

通过openssl生成证书,并在配置中启用:

   ssl_enable=YES

   rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

   rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

替代方案

对安全性要求高的场景建议改用SFTP(基于SSH协议)或FTPS(FTP over SSL)。


提示:完整配置文件示例可通过man vsftpd.conf查阅。若需批量管理用户,可研究虚拟用户模式(需搭配数据库)。云服务器用户需同步配置安全组的入站规则。


/template/Home/Zkeys724/PC/Static