当前是在局域网里面的树莓派上面测试的。一切顺利,到线上的时候估计需要配置主被动模式以及开放特定的传输端口吧。 相关文档: Set up an FTP server | Ubuntu How to Install FTP Server on Ubuntu with vsftpd
首先,检查 vsftpd 是否已经安装:
没有安装的话,直接 apt install vsftpd 就可。一路 Y。
然后到配置文件里面去做必要的修改:
进入到配置文件:
vi /etc/vsftpd.conf
- 它默认情况下,匿名模式是关闭的,这个确认就行,不用动:
anonymous_enable=NO
2. 另外需要确认可写入: write_enable=YES
- 这个 chroot_local_user 配置,还是比较重要的,需要取消掉注释,使其生效:
chroot_local_user=YES
-
设置了上面的命令之后,需要在配置文件的最后追加一个配置(否则会导致新增的用户是没法访问任何目录的): allow_writeable_chroot=YES 这样就限定了用户只能在自己的目录里面。
-
好像并不需要明确的设置
pasv_enable=Yes
设置被动模式的端口区间: 默认是没有这俩配置的,在结尾处添加: pasv_min_port=64000 pasv_max_port=65000
-
开始创建用户以及设置密码: sudo useradd -m ftpuser
sudo passwd ftpuser(也是这个用户名)
-
不需要额外的添加端口,此时 telnet 本地的21端口是打开的,但是20端口是telnet不通的(但是不影响局域网里面的ftp登陆和上传文件)
-
到这一步,其实就可以使用客户端 filezilla 进行登陆和文件的上传了:
-
找到服务器上对应的文件存放地址,其实是在 /home/ftpuser/ 的下面:
-
这就可以开始发布了:
-
发布成功: