步骤:
1.使用 apt-get 安装 vsftpd
:sudo apt-get install vsftpd -y
2.安装完成后 VSFTPD 会自动启动,通过 netstat 命令可以看到系统已经监听了 21 端口
:sudo netstat -nltp | grep 21
如果没有启动,可以手动开启 VSFTPD 服务:
sudo systemctl start vsftpd.service
3.新建用户主目录
sudo mkdir /home/uftp
4.执行完后,在这里 /home/uftp 就能看到新建的文件夹 uftp 了。
创建登录欢迎文件 :sudo touch /home/uftp/welcome.txt
5.新建用户 uftp 并设置密码,
创建一个用户 uftp:sudo useradd -d /home/uftp -s /bin/bash uftp
6.为用户 uftp 设置密码
sudo passwd uftp
(回车后会出现设置密码,再回车后再次确认)
7.删除掉 pam.d 中 vsftpd,因为该配置文件会导致使用用户名登录 ftp 失败:
sudo rm /etc/pam.d/vsftpd
8.限制用户 uftp 只能通过 FTP 访问服务器,而不能直接登录服务器:
sudo usermod -s /sbin/nologin uftp
9.修改 vsftpd 配置
sudo chmod a+w /etc/vsftpd.conf
10.修改 /etc/vsftpd.conf 文件中的配置(直接将如下配置添加到配置文件最下方):

# 限制用户对主目录以外目录访问
chroot_local_user=YES

# 指定一个 userlist 存放允许访问 ftp 的用户列表
userlist_deny=NO
userlist_enable=YES


# 记录允许访问 ftp 用户列表
userlist_file=/etc/vsftpd.user_list

# 不配置可能导致莫名的530问题
seccomp_sandbox=NO

# 允许文件上传
write_enable=YES

# 使用utf8编码
utf8_filesystem=YES


11.使用ctrl+S保存
12.新建文件 /etc/vsftpd.user_list,用于存放允许访问 ftp 的用户:
sudo touch /etc/vsftpd.user_list
sudo chmod a+w /etc/vsftpd.user_list
13.修改 /etc/vsftpd.user_list ,加入刚刚创建的用户:
再user_list文件中添加:uftp
ctrl+S保存
14.设置主目录访问权限(只读):sudo chmod a-w /home/uftp
15.新建公共目录,并设置权限(读写):
sudo mkdir /home/uftp/public
sudo chmod 777 -R /home/uftp/public
16.重启vsftpd 服务:sudo systemctl restart vsftpd.service
17.域名解析(略,可在各家云服务器商自找教程)
18.FTP 服务已安装并配置完成,下面我们来使用该 FTP 服务
通过 FTP 客户端工具访问:
例:FileZilla - 跨平台的 FTP 客户端,支持 Windows 和 Mac
WinSCP - Windows 下的 FTP 和 SFTP 连接客户端
(本人使用的是FileZilla Client,建议使用chrome,可翻译网页)
附下载地址:https://filezilla-project.org/download.php?type=client
附教程:https://wiki.filezilla-project.org/FileZilla_Client_Tutorial_(en)
网盘链接:链接:https://pan.baidu.com/s/1IgK47lV9Xer81cHQYqTWww 密码:nnbh
19.下载和安装 FTP 客户端后,使用下面的凭据进行连接即可:
主机
:你的IP地址
用户:
uftp
输入密码后,如果能够正常连接,那么大功告成,您可以开始使用属于您自己的 FTP 服务器了!
接下来,请上传任意一张图片到您的 FTP 服务器上的 uftp 的 public 目录下,然后,就可以在 /home/uftp/public 中看到了。
20.通过 Windows 资源管理器访问:
Windows 用户可以复制下面的链接,到资源管理器的地址栏访问:
ftp://uftp:你的密码@IP地址