FTP server部署防踩坑
mnsd

在安卓等设备上使用rsync、scp等工具时始终不方便,此时ftp就显得方便好用,但FTP server端的坑接连不断。


安装

1
2
sudo apt-get install vsftpd # debian系
sudo pacman -S vsftpd # arch系

配置

新版本默认配置文件位置为/etc/vsftpd.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 禁止匿名用户登陆
anonymous_enable=NO

# 设置家目录
local_enable=YES
local_root=/PATH/TO/FTPHOME

# 家目录可写
write_enable=YES

# 禁止离开家目录,家目录的父目录必须不可写
# chroot_list_file指定白名单,且必须存在
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

# 指定可登陆用户,userlist_file保存白名单
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list

# 指定监听和传输端口,被动模式
listen_port=9090
pasv_enable=YES
pasv_min_port=5000
pasv_max_port=5003

启动服务

1
sudo systemctl start vsftpd.service

常见问题

账户密码正确,配置无问题,但是无法登陆

1
2
#若登陆用户shell非`/etc/shells`下的shell,则需修改`/etc/pam.d/vsftpd`文件,将该行注释掉
#auth required pam_shells.so

服务器发回了不可路由的地址。使用服务器地址代替的问题

1
2
3
# 需同时设置
listen=YES
listen_ipv6=NO
 评论
评论插件加载失败
正在加载评论插件