Linux系统ftp协议

1、定义
ftp:// ##文件传输协议
2、布置服务
vim /etc/sysconfig/selinux
SELINUX=disabled
reboot
getenforce
Disabled
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置yum源
安装lftp
关闭防火墙
安装vsftpd
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
在这里插入图片描述
firewall-cmd --permanent --add-service=ftp 配置防火墙允许ftp服务的执行(防火墙开启情况下)
firewall-cmd --reload
firewall-cmd --list-all 查看防火墙是否允许ftp
在这里插入图片描述
在这里插入图片描述
3、用户登陆权限
vim /etc/vsftpd/vsftpd.conf
匿名用户anonymous_enable=YES|NO 匿名用户是否可以登陆
本地用户local_enable=YES|NO 本地用户是否可以登陆
write_enable=YES|NO ftp是否对登陆用户可写
systemctl restart vsftpd 重启服务

匿名用户不能登陆
在这里插入图片描述
在这里插入图片描述
匿名用户可以登陆
在这里插入图片描述
在这里插入图片描述
匿名用户上传
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
匿名用户家目录修改
anon_root=/westos
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1)匿名用户
A、匿名用户上传文件默认权限修改
anon_umask=022
B、匿名用户下载
anon_world_readable_only=NO|YES 设定NO表示可以下载
在这里插入图片描述
C、匿名用户建立目录
anon_mkdir_write_enable=YES|NO
D、匿名用户删除
anon_other_write_enable=YES|NO
在这里插入图片描述
E、匿名用户使用的用户身份修改
chown_uploads=YES
chown_username=westos
chown_upload_mode=0064 权限
在这里插入图片描述
F、最大上传速率
anon_max_rate=102400 ##最大上传速率设定为100k
测试: dd if=/dev/zero of=bigfile bs=1M count=500
上传看速率
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
G、最大连接数
max_clients=2
2)、本地用户
A、本地用户家目录的修改
local_root=/westos 根目录默认在/var/ftp
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本地用户上传文件权限
23行 local_umask=022
B、限制本地用户浏览/目录
所有用户被锁在自己的家目录
chroot_local_user=YES 所有用户不能浏览
chroot_list_enable=YES
(default follows)
chroot_list_file=/etc/vsftpd/chroot_list
在这里插入图片描述
在这里插入图片描述
C、白名单的建立
110 chroot_local_user=YES yes表示不能浏览" / ",所以名单中是白名单
111 chroot_list_enable=YES
112 (default follows)
113 chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list
student
实验:
设置白名单前
在这里插入图片描述
设置student在白名单中
在这里插入图片描述
在这里插入图片描述
D、黑名单的建立
110 chroot_local_user=NO ##no表示能浏览/,所以名单是黑名单
111 chroot_list_enable=YES
112 # (default follows)
113 chroot_list_file=/etc/vsftpd/chroot_list

vim /etc/vsftpd/chroot_list
student
实验
设置黑名单
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
E、限制本地用户登陆
vim /etc/vsftpd/ftpusers 用户黑名单
vim /etc/vsftpd/user_list 用户临时黑名单
把student加入黑名单
在这里插入图片描述
在这里插入图片描述
F、白名单设定
vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES
userlist_deny=NO 添加此条后。临时黑名单就变成白名单
vim /etc/vsftpd/user_list
student
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4、ftp虚拟用户的设定
1)创建虚拟用户
vim /etc/vsftpd/userfile 文件名任意,创建虚拟用户及密码
westos1
123
westos2
123
westos3
123
db_load -T -t hash -f /etc/vsftpd/userfile /etc/vsftpd/userfile.db hash加密
vim /etc/pam.d/ftpauth ##验证文件,文件名任意
帐号 account required pam_userdb.so db=/etc/vsftpd/userfile
密码 auth required pam_userdb.so db=/etc/vsftpd/userfile
检测程序,系统中有 此处文件默认加.db后缀
vim /etc/vsftpd/vsftpd.conf
修改pam_service_name=ftpauth 此处文件名与验证文件名对应,删除时改为vsftpd
userlist_enable=YES
tcp_wrappers=YES
添加 guest_enable=YES 虚拟用户功能开启,删除时删掉
添加 guest_username=ftp 虚拟帐号身份指定,删除时删掉
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2)设定虚拟用户家目录
mkdir /var/ftpuserdir/westos{1…3} -p 建立虚拟用户家目录,-p表示没有目录默认建立
vim /etc/vsftpd/vsftpd.conf
添加 local_root=/var/ftpuserdir/ U S E R 让 每 个 用 户 进 入 自 己 的 家 目 录 添 加 u s e r s u b t o k e n = USER 让每个用户进入自己的家目录 添加 user_sub_token= USERusersubtoken=USER 使$USER在shell中生效,系统读取
systemctl restart vsftpd.service
在这里插入图片描述
在这里插入图片描述
3)指定某些用户可以上传
mkdir /var/ftpuserdir/westos{1…3}/pub -p
chmod 775 /var/ftpuserdir/westos*/pub ##给pub权限,否则会出现553报错
chgrp ftp /var/ftpuserdir/westos*/pub ##给ftp权限
mkdir -p /etc/vsftpd/user_config ##建立目录
cd /etc/vsftpd/user_config/
vim westos1
anon_upload_enable=YES ##westos1允许上传
vim /etc/vsftpd/vsftpd.conf
把 #anon_upload_enable=YES注释掉,即所有匿名用户都不能上传
user_config_dir=/etc/vsftpd/user_config ##读取改目录下的文件
systemctl restart vsftpd.service

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值