linux下的FTP服务
. ftp服务(文件传输协议)
1.ftp服务的基本信息
1)软件安装包:vsftpd
2)默认发布的母录:/var/ftp
3)协议接口:21 (ss -antlpe |grep vsftpd)命令查看
4)ftp服务配置文件:/etc/vsftpd/vsftpd.conf
注意:配置服务之前,先修改好下面文件的内容
vim /etc/sysconfig/selinux
2.若主机上没有ftp服务,先进行安装
1)yum install vsftpd -y
2)systemctl start vsftpd
3)systemctl enable vsftpd
4)firewall-cmd --permanent --add-service=ftp
5)firewall-cmd --reload
6)lftp 172.25.254.142 ##浏览器中进行测试
3.选择登录的用户
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES/NO ##匿名用户是否可以登录
local_enable=YES/NO ##本地用户是否可以登录
write_enable=YES/NO ##用户是否可写
4.匿名用户的上传
1)先选择匿名用户为可写
write_enable=YES
2)anon_upload_enable=YES ##用户可以进行上传
3)chgrp ftp /var/ftp/pub ##修改目录的组,这样给权限时就能安全一些
4)chmod 775 /var/ftp/pub
5.指定lftp进入的默认路径
默认路径一般都是匿名用户的家目录,在配置文件中做修改可以指定到任意路径
eg : anon_root=/mnt
6.指定上限权利为644
anon_umask=022
chmod 775 /var/ftp/pub
7.允许匿名用户建立目录并下载
anon_mkdir_write_enable=YES ##建立目录
anon_world_readable_only=YES/NO ##=NO时代表可下载
8.匿名用户可以执行删除
anon_other_write_enable=YES/NO ##=YES 代表可删除
9.更改上传时的用户身份
chown_uploads=YES
eg: chown_username=student ##不论以哪个用户登录,上传的用户身份都是student
10.最大的上传速率
anon_max_rate=*******
11.最大链接数(允许最多登录的用户个数)
max_clients=**
12.限制本地用户浏览根目录
1) chroot_local_user=YES
chmod u-w /home/*
所有的用户都被锁定在自己的家目录中
2)用户黑名单的建立
chroot_local_user=NO ##别人都允许,只有名单里面的人不允许;=YES时相反
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
13.限制本地用户登录
vim /etc/vsftpd/ftpusers ##永久性的黑名单,只要写在此文件中设置别的都不管用
vim /etc/vsftpd/user_list ##临时性的黑名单,经过修改配置文件可将改为白名单
在vim /etc/vsftpd/vsftpd.conf 中修改
userlist_deny=NO
/etc/vsftpd/user_list
14.ftp虚拟用户的设定
1)vim /etc/vsftpd/westosfile
文件中写入自己要创建的虚拟用户和密码
2)db_load -T -t hash -f /etc/vsftpd/westosfile /etc/vsftpd/westosfile.db ##将纯文本转化为.db的加密文件
3)vim /etc/pam.d/westos ##登录时认证虚拟用户的帐号和密码
account required pam_userdb.so db=/etc/vsftpd/westosfile
auth required pam_userdb.so db=/etc/vsftpd/westosfile
4)将建立的保存用户、密码和认证用户与密码的文件与ftp服务联接在一起,需要在ftp配置文件中做修改
pam_service_name=westos
guest_username=ftp ##写的什么就进入什么目录,ftp的默认路径/var/ftp/pub
guest_enable=YES
userlist_enable=YES
tcp_wrappers=YES