怎么使用FTP链接自己云主机?

HCRM技术_小炮 云主机 2025-09-14 1 0

下面我将为您提供一个从零开始、非常详细的步骤指南,包含准备工作、FTP服务器安装配置、云平台安全组设置以及最终使用FTP客户端连接的完整流程。

核心步骤概览

怎么使用ftp链接自己云主机

1、准备工作:获取云主机的IP地址和登录凭证。

2、在云主机上安装和配置FTP服务器软件(以最常用的vsftpd 为例)。

3、配置云服务平台的安全组/防火墙,放行FTP端口。

4、在本地电脑上使用FTP客户端(如FileZilla)进行连接。

第一步:准备工作

在开始之前,请确保您手上有以下信息:

怎么使用ftp链接自己云主机

云主机的公网IP地址在您的云服务商(如阿里云、腾讯云、AWS等)的管理控制台中可以找到。

云主机的系统用户名和密码通常是root 用户和其密码(对于Linux系统),如果您使用SSH密钥对登录,也需要知道密钥文件的路径。

一个打算用于FTP登录的系统用户为了安全,不建议直接使用root 用户,我们可以创建一个专门用于FTP的普通用户。

第二步:在Linux云主机上安装和配置VSFTPD

注意:以下操作均需在您的云主机上通过SSH终端进行,您需要使用SSH工具(如PuTTY、Terminal、Xshell等)先登录到您的云主机。

安装VSFTPD

怎么使用ftp链接自己云主机

以CentOS/RHEL/Alibaba Cloud Linux系统为例(Debian/Ubuntu系统命令类似,将yum 换为apt-get即可):

更新软件包列表
sudo yum update
安装vsftpd
sudo yum install vsftpd

启动VSFTPD并设置开机自启

启动vsftpd服务
sudo systemctl start vsftpd
设置开机自动启动
sudo systemctl enable vsftpd

创建专用的FTP用户

创建一个系统用户,例如叫 ftpuser,并指定其家目录(这里以 /home/ftpuser 为例)
sudo useradd -d /home/ftpuser -m ftpuser
为该用户设置密码(连接FTP时会用到)
sudo passwd ftpuser
根据提示输入两次密码

配置VSFTPD

编辑VSFTPD的主配置文件:

sudo vi /etc/vsftpd/vsftpd.conf

找到并修改以下配置行(如果行首有#注释,请删除#以取消注释):

禁止匿名登录(更安全)
anonymous_enable=NO
允许本地系统用户登录
local_enable=YES
允许用户有写权限(上传、删除、重命名等)
write_enable=YES
设置本地用户创建文件或目录的默认掩码(权限)
local_umask=022
非常重要!启用被动模式(PASV)
pasv_enable=YES
设置云主机的公网IP地址,用于被动模式连接
pasv_address=你的云主机公网IP地址
设置被动模式使用的端口范围(方便后续在安全组中开放)
pasv_min_port=30000
pasv_max_port=31000
(可选)将所有本地用户限制在其家目录中(chroot),增强安全性
chroot_local_user=YES
allow_writeable_chroot=YES
(可选)在配置文件的最后,可以添加一个用户列表,明确指定哪些用户不能chroot
先启用chroot列表
chroot_list_enable=YES
然后指定列表文件路径
chroot_list_file=/etc/vsftpd/chroot_list
如果需要,创建这个文件并把不想被限制的用户名加进去

保存并退出编辑器(在vi中按Esc,然后输入:wq 回车)。

重启VSFTPD服务使配置生效

sudo systemctl restart vsftpd

第三步:配置云平台安全组(防火墙)

这是非常关键的一步,如果配置错误将无法连接,您需要登录到云服务商的管理控制台(如阿里云ECS控制台、腾讯云CVM控制台等)。

1、 找到您的云主机实例。

2、 找到“安全组” 配置选项。

3、 点击配置规则,添加以下两条入方向(Inbound)规则

授权策略 协议类型 端口范围 授权对象 说明
允许 TCP20-21 0.0.0.0/0 FTP控制通道端口
允许 TCP30000-31000 0.0.0.0/0 FTP被动模式数据端口

注意30000-31000 需要与第二步中配置文件里pasv_min_portpasv_max_port 设置的范围完全一致,授权对象0.0.0.0/0 表示允许所有IP访问,出于安全考虑,您可以后期改为只允许您自己的公网IP。

4、保存安全组规则。

第四步:使用FTP客户端连接(以FileZilla为例)

1、下载并安装FileZilla Client:从 [https://filezilla-project.org](https://filezilla-project.org) 下载。

2、打开FileZilla,在顶部的快速连接栏中填写信息:

主机(H)你的云主机公网IP地址 (或域名)

用户名(U)ftpuser (第二步创建的用户名)

密码(W)你为ftpuser设置的密码

端口(P)21 (默认端口,如果没改就填21)

3、 点击“快速连接(Q)”

如果一切配置正确,右侧的“远程站点”窗口将会显示/home/ftpuser 目录下的内容(初始为空),您现在就可以通过拖拽文件在本地和云主机之间传输文件了。

常见问题与排查 (Troubleshooting)

连接被拒绝/无法连接

* 99%的原因在于安全组/防火墙没有正确配置,请仔细检查是否放行了20, 21和30000-31000端口。

检查云主机系统自身的防火墙(如firewalldiptables)是否阻止了端口,对于初学者,可以先暂时关闭系统防火墙进行测试sudo systemctl stop firewalld

登录失败,密码错误

* 确认用户名和密码是否正确,注意大小写,重新执行passwd ftpuser 命令修改密码。

可以连接但无法列出目录/无法传输文件

* 通常是被动模式(PASV) 配置问题,确保在vsftpd.conf 中正确设置了pasv_address 和端口范围,并且安全组也放行了该端口范围。

* 检查FTP用户对其家目录是否有读和执行权限(至少要有755权限)。

推荐使用SFTP代替FTP

* FTP协议本身不安全,密码和数据以明文传输,更现代、更安全的方法是使用SFTP

* SFTP基于SSH协议,只要您的云主机开启了SSH服务(默认22端口),就天然支持SFTP。

* 在FileZilla中,只需将“协议(P)”选为“SFTP - SSH File Transfer Protocol”,端口改为22,使用你的SSH登录用户和密码(或密钥文件) 即可连接,无需额外安装和配置FTP服务器。这是更推荐的做法!

希望这份详细的指南能帮助您成功连接!

文章摘自:https://idc.huochengrm.cn/zj/15658.html

评论