linux配置vsftpd服务
1.下载
apt-get update
apt-get install vsftpd
2.配置
用的全局配置项
listen=YES/NO:是否以独立运行的方式监听服务
listen_address=192.168.4.1:设置监听的 IP 地址
listen_port=21:设置监听 FTP 服务的端口号
write_enable=YES/NO:是否启用写入权限
download_enable=YES/NO:是否允许下载文件
userlist_enable=YES/NO:是否启用 user_list 列表文件
userlist_deny=YES/NO:是否禁用 user_list 中的用户
max_clients=0:限制并发客户端连接数
max_per_ip=0:限制同一个IP 地址的并发连接数
常用的匿名 FTP 配置项
anonymous_enable=YES:启用匿名访问,默认为YES
anon_umask=022:匿名用户所上传文件的权限掩码;文件默认权限=666-022,结果为644;目录默认权限=777-022,结果为755
anon_root=/var/ftp:匿名用户的 FTP 根目录,默认就是/var/ftp,如果更改,请设置好目录的属主,否则匿名用户无法访问
anon_upload_enable=YES/NO:允许上传文件
anon_mkdir_write_enable=YES/NO:允许创建目录
anon_other_write_enable=YES/NO:开放其他写入权
anon_max_rate=0:限制最大传输速率(字节/秒)
常用的本地用户 FTP 配置项
local_enable=YES:是否启用本地系统用户,默认启用
local_umask=022:本地用户所上传文件的权限掩码
local_root=/var/ftp:设置本地用户的 FTP 根目录
chroot_local_user=YES:是否将用户禁锢在主目录,不能切换其他目录,如:etc boot 等
local_max_rate=0:限制最大传输速率(字节/秒)
3.创建文本格式的用户名、密码列表(此文件中奇数行为用户名,偶数行为用户对应的密码)
vim /etc/vsftpd/vusers.list
lisi
123.com
zhangsan
456.com
4.增加用户目录和用户和用户组
groupadd ftpuser
mkdir /home/remote1
useradd -g ftpuser remote1
passwd remote1
# 输入新密码
vim /etc/passwd
remote1:x:1001:1001::/home/remote1:/sbin/nologin
vi /etc/shells
#在最末尾添加一行
/sbin/nologin
#设置权限
chown -R remote1:ftpuser /home/remote1
chmod 700 /home/remote1
6.启动vsftpd服务
#重启服务
service vsftpd restart
# 查看服务状态
service vsftpd status
6.注意
chroot权限控制
如果用户被允许访问主目录之外的目录(chroot=true),则该用户通过ftp连接服务器可以访问其他用户或者用户组不开放的文件和目录之外的服务器上的大部分文件和目录;
所以,一般不允许用户访问主目录之外的目录(chroot=false),此时ftp连接的时候往往会报错;此时需要更改用户主目录权限:
chmod a-w /home/remote1
更改后用户ftp登录后无法在用户根目录下创建子目录和写文件;所以需要创建子目录,然后将文件写入到子目录中。
如果配置没有问题,那么问题绝对在文件夹授权上面