配置ftp服务
1 用getenforce查看,如果是Enforcing,应该修改/etc/sysconfig/selinux文件。
SELINUX=disabled
然后重启
---------------------------------------------------
2 安装ftp、lftp、设置防火墙
yum install vsftpd.x86_64 -y
systemctl start vsftpd
systemctl enable vsftpd
yum install lftp -y
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
3 匿名用户服务
vim /etc/vsftpd/vsftpd.conf ##ftp服务配置文件
anonymous_enable=YES|NO##匿名用户登陆限制
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub #<匿名用户上传>
anon_root=/direcotry #<匿名用户家目录修改>
anon_umask=xxx #<匿名用户上传文件默认权限修改> 参考chmod预留权限
anon_mkdir_write_enable=YES|NO #<匿名用户建立目录>
anon_world_readable_only=YES|NO ###<匿名用户下载>设定参数值为no表示匿名用户可以下载
anon_other_write_enable=YES|NO #<匿名用户删除>
chown_uploads=YES
chown_username=student #<匿名用户使用的用户身份修改>
anon_max_rate=102400 #<最大上传速率>
max_clients=2 #<最大链接数>
4 本地用户配置
local_enable=YES|NO##本地用户登陆限制
write_enable=YES|NO##本地用户写权限限制
local_root=/directory #<本地用户家目录修改>
local_umask=xxx #<本地用户上传文件权限>
chroot_local_user=YES #<限制本地用户浏览/目录>
chmod u-w /home/* #所有用户被锁定到自己的家目录中
chroot_local_user=NO #用户黑名单建立
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
chroot_local_user=YES #用户白名单建立
vim /etc/vsftpd/ftpusers##用户黑名单
vim /etc/vsftpd/user_list##用户临时黑名单
userlist_deny=NO #用户白名单设定
/etc/vsftpd/user_list##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
5 虚拟账户管理 ###本部分文件可以取任意文件名
vim /etc/vsftpd/loginusers ##用来创建虚拟帐号身份
name1##账户1帐号
passwd1##账户1密码
name2##账户2帐号
passwd2##账户2密码
name3##账户3帐号
passwd3##账户3密码
db_load -T -t hash -f /etc/vsftpd/loginusers /etc/vsftpd/loginusers.db ##加密帐号文件
vim /etc/pam.d/ckvsftpd #创建pam文件
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers
#注意最后的文件不能加.db后缀
pam_service_name=ckvsftpd
guest_enable=YES
guest_username=ftp
#编辑配置文件,使ftp读取虚拟帐号及密码
mkdir /ftphome
chgrp ftp /ftphome
chmod g+s /ftphome
mkdir /ftphome/user{1..3}
local_root=/ftpuserhome/$USER
user_sub_token=$USER #####虚拟帐号家目录独立设定
6 虚拟帐号配置独立
注释或者删除所有匿名账户设置
user_config_dir=/etc/vsftpd/userconf