> 技术文档 > 如何在CentOS服务器上快速搭建FTP服务_centos安装ftp

如何在CentOS服务器上快速搭建FTP服务_centos安装ftp

      FTP(文件传输协议)是服务器管理中常用的文件共享工具。本文以CentOS系统为例,详细介绍从零搭建FTP服务器(使用vsftpd)的完整流程,涵盖安装配置、权限管理、本地/远程连接测试等操作,并重点讲解Windows系统远程访问FTP服务的多种方法。


一、安装 vsftpd

1. 安装命令

sudo yum install vsftpd -y

2. 启动服务并设置开机自启

sudo systemctl start vsftpdsudo systemctl enable vsftpd

二、配置 vsftpd

配置文件路径:/etc/vsftpd/vsftpd.conf
修改以下核心参数:

anonymous_enable=NO # 禁用匿名登录local_enable=YES # 允许本地用户登录write_enable=YES # 允许文件上传chroot_local_user=YES # 限制用户仅能访问家目录allow_writeable_chroot=YES # 允许在受限目录写入local_umask=022  # 文件默认权限644# 被动模式配置(解决NAT/防火墙问题)pasv_enable=YESpasv_min_port=50000pasv_max_port=50010pasv_address=公网IP # 若服务器在NAT后需填写

保存后重启服务生效:

sudo systemctl restart vsftpd

三、防火墙与SELinux配置

1. 防火墙放行端口(若启用)

sudo firewall-cmd --permanent --add-port=21/tcpsudo firewall-cmd --permanent --add-port=50000-50010/tcpsudo firewall-cmd --reload

2. SELinux策略(若未禁用)

sudo setsebool -P ftp_home_dir 1sudo semanage port -a -t ftp_port_t -p tcp 50000-50010

四、创建FTP用户并测试

1. 创建用户

sudo useradd -m ftpusersudo passwd ftpusersudo chmod 750 /home/ftpuser

2. 本地登录测试

ftp localhost# 输入用户名密码后执行:ftp> put test.txt # 上传测试文件ftp> ls # 查看文件是否上传成功

五、修改用户默认目录路径(可选)

sudo mkdir -p /data/ftpsudo chown ftpuser:ftpuser /data/ftpsudo usermod -d /data/ftp ftpusersudo restorecon -Rv /data/ftp # SELinux环境需执行

六、Windows远程访问FTP服务

1. 通过Windows资源管理器访问

  1. 打开 此电脑 → 地址栏输入:

    ftp://用户名:密码@服务器IP:端口

    示例:

    ftp://ftpuser:123456@192.168.1.100:21
  2. 操作说明:
    • 上传文件:将本地文件拖拽到资源管理器窗口内。

    • 下载文件:将服务器文件拖拽到本地文件夹。

    • 限制:不支持大文件传输和断点续传,仅适合简单操作。

2. 使用命令行(cmd/PowerShell)访问

  1. 打开命令提示符或PowerShell,执行以下命令:

    ftp 192.168.1.100 # 连接服务器
  2. 输入用户名和密码:

    Name: ftpuserPassword: ********
  3. 常用命令:
    • 上传文件:

    put C:\\test.txt

    • 下载文件:

    get server.txt C:\\

    • 查看目录:

    ls

    • 退出连接:

    quit

七、安全建议

  1. 禁用匿名登录:确保配置中 anonymous_enable=NO
  2. 使用SFTP替代FTP:通过SSH协议传输文件(sftp user@服务器IP)。
  3. 限制IP访问:在防火墙中仅允许可信IP访问FTP端口。

八、常见问题

1. 上传文件权限被拒绝

• 检查目录权限:

ls -ld /home/ftpuser # 权限应为 drwxr-x---(750)

• 确认配置项:

write_enable=YESallow_writeable_chroot=YES

2. 被动模式超时

• 服务器端检查:

• 确认 pasv_address 填写正确。

• 开放 50000-50010 端口。

3. 查看日志定位问题

sudo tail -f /var/log/vsftpd.log # 实时查看日志

总结

      通过以上步骤,您已成功在CentOS服务器上搭建FTP服务,并可通过Windows系统远程访问和管理文件。若遇到连接问题,优先检查防火墙、SELinux策略及日志文件。实践过程中如有疑问,欢迎随时交流!


新时代农民工