ftp服务的安装与配置

1.安装
yum install vsftpd lftp -y ##安装vsftpd服务 lftp工具
systemctl start vsftpd ##启动vsftpd服务
systemctl stop firewalld ##关闭防火墙
systemctl enable vsftpd ##开机启动vsftpd
2.配置文件
/var/ftp ##默认发布目录
/etc/vsfpd ##配置目录
/etc/vsfpd/vsftpd.conf ##配置文件
systemctl restart vsftpd ##更改的内容必须重启服务才会生效
3.配置文件的常用参数
用户白名单建立:
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

限制本地用户登陆:
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单设定
userlist_deny=NO
/etc/vsftpd/user_list ##上面的参数设定后,此文件变成白名单

1.匿名用户设置
anonymous_enable=YES|NO#是否允许匿名用户登陆
anon_upload_enable=YES #匿名用户可以上传
chmod 775 /var/ftp/pub ##更改权限
chgrp ftp /var/ftp/pub##更改所有组
anon_world_readable_only=NO#匿名用户可以下载上传的文件
anon_mkdir_write_enable=YES#匿名用户可以创建目录
anon_other_write_enable=YES#匿名用户可以删除
anon_umask=022 #匿名用户上传文件默认减去的权限
chown_uploads=YES#开启匿名用户更改上传文件用户的功能
chown_username=god#指定匿名用户上传文件的所有人
anon_root=/westos/ftp #更改服务的默认发布目录

2.本地用户设置
lftp -u username 172.25.254.110
local_enable=YES->NO#是否允许本地用户登陆
write_enable=YES->NO#本地用户是否可写
local_umask=022#本地用户上传文件默认去掉的权限
local_root=/var/ftp#本地用户家目录
/etc/vsftpd/ftpusers#永久用户黑名单
/etc/vsftpd/user_list#临时性用户黑名单,当userlist_deny=NO出现此名单变成白名单
root_local_user=YES#拒绝用户浏览/目录此设定需要家目录去掉w权限
chroot_local_user=NO#启用用户黑名单,在黑名单里的用户不能切换到/目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
chroot_local_user=YES#启用用户白名单,只有在白名单里的用户可以切换到/目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

3.虚拟用户的建立
更改配置文件:
pam_service_name=vsftpd ##认证文件名称
guest_enable=YES
guest_username=ftp ##指定用户身份

vim /etc/vsftpd/westos ##密码存放文件
user1
123
user2
123
db_load -T -t hash -f /etc/vsftpd/westoswestos.db ##进行hash加密,生成westos.db

vim /etc/pam.d/vsftpd ##认证文件
account required pam_userdb.so db=/etc/vsftpd/westos
auth required pam_userdb.so db=/etc/vsftpd/westos

systemctl restart vsftpd ##重启服务

虚拟用户家目录的建立
mkdir /virtual/user{1,2} -p
chmod u-w /virtual/user{1,2}
chown ftp.ftp /virtual/user{1,2}

vim /etc/vsftpd/vsftpd.conf
local_root=/virtual/$USER
user_sub_token=$USER

用户配置文件的建立
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/confdir

mkdir /etc/vsftpd/confdir
vim /etc/vsftpd/confdir/user1

你可能感兴趣的:(linux)