本文以 CentOS 7.2 64位系统为例,使用 vsftpd 作为 FTP 服务端,FileZilla 作为客户端。
指导您如何在 Linux 云服务器上搭建 FTP 服务。
登录 Linux 云服务器。
执行以下命令,安装 vsftpd。
yum
install vsftpd -y
执行以下命令,启动服务。
systemctl
start vsftpd
执行以下命令,确认服务是否启动。
netstat
-tunlp
返回类似如下信息,则表示 vsftpd 服务已经启动成功。
说明:
为了保证 FTP 服务端顺利完成配置,您还可以在本地计算机或其他云服务器上执行以下 *** 作步骤,再次验证 vsftpd 服务是否启动成功。
以下 *** 作步骤以 Linux *** 作系统的本地计算机为例。
如果本地计算机为 Windows/Mac OS *** 作系统,请确保该计算机已开启 telnet 功能。
在本地计算机的 *** 作系统界面,执行以下命令,安装 telnet 服务。
说明:
如果您的本地计算机为 Windows/Mac OS *** 作系统,请跳过此步骤。
yum
-y install telnet
执行以下命令,测试 vsftpd 服务是否启动成功telnet
+ 云服务器公网 IP + 21
返回类似如下信息,即表示已经启动成功。
执行以下命令,打开 vsftpd 配置文件。
vi
/etc/vsftpd/vsftpd.conf
按 “i” 或 “Insert” 切换至编辑模式,将文件中的anonymous_enable=YES改为anonymous_enable=NO。
如下图所示:
按 “Esc”,输入 “:wq”,保存文件并返回。
执行以下命令,添加用户ftpuser1。
useradd
-m -d /home/ftpuser1 -s /sbin/nologin ftpuser1
执行以下命令,设置用户ftpuser1的密码。
passwd
ftpuser1
创建用户、用户密码设置成功。
如下图所示:
常见问题 FTP 客户端连接超时或者读取目录列表失败问题描述
部分用户在本地使用 FTP 客户端连接时可能遇到连接超时和读取目录列表失败的问题。
如下图所示:
问题出现在 PASV 命令处。
原因在于 FTP 协议在腾讯云网络架构上的不适。
FTP 客户端默认被动模式传输,因此在通信过程中会去寻找服务器端的 IP 地址进行连接,但是由于腾讯云的公网 IP 不是直接配在网卡上,因此在被动模式下客户端无法找到有效 IP (只能找到云服务器内网 IP ,内网 IP 无法直接和公网通信),故无法建立连接。
解决方法
将客户端传输模式改为主动即可。
如果客户端网络环境要求被动模式,那么需要在服务端 配置 vsftpd 中的配置文件中新增这些语句:
pasv_address=XXX.XXX.XXX.XXX //(公网 IP)
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=2048
FTP 客户端上传文件失败
问题描述
Linux 系统环境下,通过 vsftp 上传文件时,提示如下报错信息。
553
Could not create file
解决方法
执行以下命令,检查服务器磁盘空间的使用率。
df
-h
如果磁盘空间不足,将会导致文件无法上传,建议删除磁盘容量较大的文件。
如果磁盘空间正常,请执行下一步。
执行以下命令,检查 FTP 目录是否有写的权限。
ls -l /home/test
# /home/test 为 FTP 目录,请修改为您实际的 FTP 目录。
若返回结果中没有 w,则表示该用户没有写的权限,请执行下一步。
若返回结果中已有 w,请 提交工单 进行反馈。
执行以下命令,对 FTP 目录加上写的权限。
chmod +w /home/test
# /home/test 为 FTP 目录,请修改为您实际的 FTP 目录。
执行以下命令,重新检查写的权限是否设置成功。
ls -l /home/test
# /home/test 为 FTP 目录,请修改为您实际的 FTP 目录。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)