ftp服务

ftp服务

1.ftp的定义

shell:命令解析器
实验准备:
配置ip、yum源、(修改主机名字为ftpserver)、关selinux(/etc/sysconfig/selinux;disabled)
ftp:// ##文件传输协议
pam.d 认证
20 ##主动模式下的数据端口,用于传输数据
21 ##控制端口,命令端口,用于连接 ftp/pub 默认发布目录

2.ftp协议提供的软件

在rhel7中:vsftpd

3.部署ftp服务

yum install vsftpd -y 		##下载vsftpd服务
systemctl start vsftpd 		##打开
systemctl enable vsftpd 	##开机自启动
firewall-cmd --permanent --add-service=ftp ##在火墙中添加服务
firewall-cmd --reload firewall-cmd --list-all
yum install lftp
lftp	##浏览器 
/etv/vsftpd/vsftpd.conf	##文件配置文件
用户登录时处于用户的家目录下(eg:/home/xxx/) 
550	#服务本身未开启 
553	#文件权限不够
500	#文件系统权限过大
530	#用户认证失败
550也可能是selinux的问题
一看文件权限(家目录对应文件,eg:/var/ftp/pub),二看ftp权限(/etc/vsftp/vsftp.conf) 
?查看有那些命令 
eg: mirror #下载目录 

3.1 匿名用户

登陆:	
anonymous_enable=YES | NO	
下载:
anon_world_readable_only=NO	#NO表示匿名用户可以下载
上传:
write_enable=YES	##ftp是否对登陆用户可写
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
建立目录:
anon_mkdir_write_enable=YES 
删除:
anon_other_write_enable=YES 
匿名用户家目录修改:
anon_root=/目录 
匿名用户上传文件默认权限设置:
anon_umask=022 
使用的用户身份修改:
chown_uploads=YES
chown_username=用户名
#chown_upload_mode=0644#

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 本地用户

登陆:
local_enable=YES
可写:
write_enable=YES
家目录修改:
local_root=/目录
上传文件默认权限设置 :
local_umask=022 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.3 限速

单位为字节 
anon_max_rate=102400	##(100k) 
用dd截取一个大文件来测试: 
dd if=/dev/zero of=/mnt/file1 bs=1M count=2000  

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4 限制连接个数

max_clients=数字

3.5 限制本地用户浏览根目录

chroot_local_user=YES 
##注意此参数要去掉自己对家目录的写权限,chmod u-w /xxx/xxx 

在这里插入图片描述
在这里插入图片描述
、

3.6 限制用户切换根目录的黑/白名单

黑名单:(不可以切换到/)
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.7 限制本地用户登录黑/白名单

黑名单:
/etc/vsftpd/ftpusers ##永久黑名单
在/etc/vsftpd/vsftpd.conf中添加
“userlist_deny=YES“
/etc/vsftpd/user_list 	##可更改的黑名单

在这里插入图片描述
在这里插入图片描述

 白名单:
 在/etc/vsftpd/vsftpd.conf中添加
 “userlist_deny=NO”
 /etc/vsftpd/user_list

在这里插入图片描述
在这里插入图片描述

3.8 ftp的虚拟用户

1.创建虚拟身份,并将新建的文件加密 
vim /etc/vsftpd/xxx 
"user1 123 user2 123 user3 123" 
db_load -T -t hash -f /etc/vsftpd/xxx  /etc/vsftpd/xxx.db 
2.设置pam认证 
vim /etc/pam.d/westos ##文件任意名称 
account required  pam_userdb.so  db=/etc/vsftpd/xxx 
auth    required  pam_userdb.so  db=/etc/vsftpd/xxx 
vim /etc/vsftpd/vsftpd.conf 
"pam_service_name=westos guest_enable=YES" 
##到这一步时用户已经可以登录

在这里插入图片描述
在这里插入图片描述

3.虚拟帐号身份指定: 
guest_username=用户名	##将目录改为登陆用户的家目录 
chmod u-w  /home/用户名

在这里插入图片描述
在这里插入图片描述

4.虚拟帐号家目录独立设定:
vim /etc/vsftpd/vsftpd.conf
"local_root=/ftphome/$USER
user_sub_token=$USER"

mkdir /ftphome/user1/user1dir
mkdir /ftphome/user2/user2dir

在这里插入图片描述
在这里插入图片描述

5.虚拟帐号配置独立:
chgrp ftp /ftphome -R
chmod 775 /ftphome/user1/user1dir
chmod 775 /ftphome/user2/user2dir

vim /etc/vsftpd/vsftpd.conf
"user_config_dir=/etc/vsftpd/userconf"
vim /etc/vsftpd/userconf
"要添加的权限"
注意:在做这个实验时,关掉之前设置的写权限
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值