菜鸟科技网

VPS创建FTP上传文件步骤是怎样的?

要在VPS上创建FTP服务并实现文件上传,需通过安装FTP服务器软件、配置用户权限、设置防火墙规则等步骤完成,以下是详细操作流程:

VPS创建FTP上传文件步骤是怎样的?-图1
(图片来源网络,侵删)

登录VPS服务器(推荐使用SSH工具如PuTTY或终端),以root身份或具有sudo权限的用户操作,根据服务器系统类型选择安装方式,若为CentOS系统,执行yum install vsftpd -y;若为Ubuntu/Debian系统,则运行apt update && apt install vsftpd -y,安装完成后,启动FTP服务并设置开机自启:systemctl start vsftpdsystemctl enable vsftpd

接下来配置FTP核心参数,编辑vsftpd的配置文件(CentOS路径为/etc/vsftpd/vsftpd.conf,Ubuntu为/etc/vsftpd.conf),修改以下关键项:将anonymous_enable=NO禁用匿名访问;local_enable=YES允许本地用户登录;write_enable=YES启用写入权限;chroot_local_user=YES限制用户仅能访问主目录;添加allow_writeable_chroot=YES避免因目录权限问题导致无法登录,保存后重启服务:systemctl restart vsftpd

创建FTP专用用户并设置权限,执行useradd -m -s /sbin/nologin ftpuser创建用户(-m自动创建家目录,-s禁止SSH登录),然后通过passwd ftpuser设置密码,若需指定上传目录,可先创建目录(如mkdir /var/www/ftp),修改所有者为ftpuserchown ftpuser:ftpuser /var/www/ftp),并在配置文件中添加local_root=/var/www/ftp指定用户主目录。

配置防火墙和安全组,CentOS系统使用firewall-cmd --permanent --add-service=ftpfirewall-cmd --reload放行端口;Ubuntu系统运行ufw allow 20:21/tcpufw allow 40000:50000/tcp(主动模式数据端口范围),若使用云服务商VPS(如阿里云、腾讯云),需在服务器控制台的安全组规则中添加入站规则,协议选择TCP,端口范围设为21(控制端口)和20000-30000(数据端口,避免被动模式端口冲突)。

VPS创建FTP上传文件步骤是怎样的?-图2
(图片来源网络,侵删)

测试FTP连接,使用FileZilla等客户端,主机填VPS公网IP,协议选择“FTP-显式加密(FTPES)”,输入用户名和密码,若连接失败,检查/var/log/vsftpd.log日志排查错误(如权限问题或防火墙拦截),成功登录后,即可在客户端界面拖拽文件上传至服务器指定目录。

以下是FTP服务配置参数说明表:

参数 默认值 推荐修改 作用说明
anonymous_enable YES NO 是否允许匿名用户访问
local_enable NO YES 是否允许本地用户登录
write_enable NO YES 是否启用文件写入功能
chroot_local_user NO YES 是否限制用户在主目录
allow_writeable_chroot NO YES 是否允许可写主目录

相关问答FAQs:

  1. 问题:FTP连接时提示“530 Login incorrect”怎么办?
    解答:首先确认用户名和密码正确,检查/etc/passwd中用户是否存在(grep ftpuser /etc/passwd),若用户被禁止登录(如/sbin/nologin),需修改登录shell为/bin/bash(或创建FTP专用用户时使用-s /sbin/nologin但确保配置文件中guest_enable=YES),最后检查/etc/vsftpd/ftpusers/etc/vsftpd/user_list文件是否误封禁用户。

    VPS创建FTP上传文件步骤是怎样的?-图3
    (图片来源网络,侵删)
  2. 问题:上传文件时提示“553 Could not create file”如何解决?
    解答:通常是目录权限问题,确保目标目录所有者为FTP用户(如chown ftpuser:ftpuser /var/www/ftp),并赋予755权限(chmod 755 /var/www/ftp),若使用chroot限制,需确保主目录及其父目录对root用户有执行权限(如chmod u+x / /var /var/www),避免“500 OOPS: vsftpd: refusing to run with writable root inside chroot”错误。

分享:
扫描分享到社交APP
上一篇
下一篇