前言
对于几兆的文件使用SSH工具,搭配使用Linux上传:rz
下载:sz
命令即可,所用的时间也不多,如果是大文件这个速度是煎熬的,所以需要通过FTP来进行传输。
Linux 云服务器搭建 FTP 服务
本文搭建 FTP 服务组成版本如下:
Linux 操作系统:本文以公共镜像 CentOS 7.6 为例。
Vsftpd:本文以 vsftpd 3.0.2 为例。
安装 vsftpd
1.执行以下命令,安装 vsftpd。
yum install -y vsftpd
2.执行以下命令,设置 vsftpd 开机自启动并启动 FTP 服务。
systemctl enable vsftpd
systemctl start vsftpd
3.确认服务是否启动。
netstat -antup | grep ftp
显示结果如下,则说明 FTP 服务已成功启动。
此时,vsftpd 已默认开启匿名访问模式,无需通过用户名和密码即可登录 FTP 服务器。使用此方式登录 FTP 服务器的用户没有修改或上传文件的权限。
配置 vsftpd
1.执行以下命令,为 FTP 服务创建一个 Linux 用户,本文以 ftpuser 为例。
useradd ftpuser
2.执行以下命令,设置 ftpuser 用户的密码。
passwd ftpuser
3.执行以下命令,创建 FTP 服务使用的文件目录,本文以 /var/ftp/test
为例。
mkdir /var/ftp/test
4.执行以下命令,修改目录权限。
vim /etc/vsftpd/vsftpd.conf
5.执行以下命令,打开 vsftpd.conf
文件。
vim /etc/vsftpd/vsftpd.conf
6.修改配置文件 vsftpd.conf
:
#设置匿名用户和本地用户的登录权限,设置指定例外用户列表文件的路径,并开启监听 IPv4 sockets
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
#注释 listen_ipv6=YES 配置参数,关闭监听 IPv6 sockets
#listen_ipv6=YES
#开启被动模式,设置本地用户登录后所在目录,以及云服务器建立数据传输可使用的端口范围值
local_root=/var/ftp/test
allow_writeable_chroot=YES
#pasv_enable=YES 被动模式,pasv_enable=NO 主动模式
pasv_enable=YES
#请修改为您的 Linux 云服务器公网 IP
pasv_address=xxx.xx.xxx.xx
pasv_min_port=40000
pasv_max_port=45000
7.执行以下命令,创建并编辑 chroot_list
文件。
vim /etc/vsftpd/chroot_list
输入用户名,一个用户名占据一行,设置的用户将会被锁定在主目录(连接成功直接进入FTP目录),您若没有设置例外用户的需求,可跳过此步骤。
8.重启 FTP 服务。
systemctl restart vsftpd
设置安全组
- 主动模式:放通端口21。
- 被动模式:放通端口21,及配置文件 /etc/vsftpd/vsftpd.conf 中设置的
pasv_min_port
到pasv_max_port
之间的所有端口,本文放通端口为40000 – 45000。
验证 FTP 服务
打开客户端的计算机,在路径栏中访问以下地址。如下图所示:
ftp://云服务器公网IP:21
输入用户名和密码不知道为什么提示没有权限
Windows安装FileZilla软件
下载开源软件FileZilla:Download FileZilla Client for Windows (64bit x86) (filezilla-project.org)
在 FileZilla 窗口中,填写主机、用户名、密码和端口等信息,单击快速连接。如下图所示:
看到列出目录成功就表示FTP连接成功,可以进行上传和下载了。
评论