linux下的ftp服务管理

################################
1怎么用ftpd连接服务端
################################
yum install vsftpd安装
在这里插入图片描述
systemctl start vsftpd打开服务
在这里插入图片描述
firewall-cmd --permanent --add-service=ftp添加火墙策略
在这里插入图片描述
firewall-cmd --reload
getenforce查看内核

在这里插入图片描述
如果内核打开修改这个文件
vim /etc/sysconfig/selinux
SELINUX=disabled

用模拟客户端的虚拟机输入命令lftp (ip)
在这里插入图片描述
进入后可以输入?查看能打什么命令
在这里插入图片描述
此时用户默认登陆在
在这里插入图片描述
在服务端建立一个用户
在这里插入图片描述
在ip后-u westos可以以普通用户身份登陆,在新建用户家目录里建立一个文件来验证

在这里插入图片描述
##########################
2安全部署
##########################
查看vsftp配置文件
在这里插入图片描述
服务端vim /etc/vsftpd/vsftpd.conf修改这个文件内容
注意每次修改都要重读systemctl restart vsftpd

12行控制是否能匿名登陆,注意此时能登陆但是不能有任何操作
在这里插入图片描述
16行控制能否用本地用户登陆
在这里插入图片描述
19行控制本地用户能否写文件
在这里插入图片描述
可能会产生的报错有

500 #文件系统权限过大修改服务端文件权限
530 #用户认证失败
550 #服务未开启
553 #本地文件系统权限过小chmod修改服务端文件权限

为了避免553和500我们需要修改权限
在这里插入图片描述

添加anon_upload_enable=YES修改匿名用户能否上传文件
在这里插入图片描述
anon_root=/direcotry修改匿名登陆位置
在根下建立一个目录666在里面创建一个文件名为hello的文件
在这里插入图片描述
修改配置文件后客户端登陆验证
在这里插入图片描述
anon_umask=xxx修改匿名用户默认权限
在这里插入图片描述
anon_world_readable_only=NO使用户能下载文件注意这里是NO
在这里插入图片描述
anon_other_write_enable=YES使用户能删除文件
在这里插入图片描述
如何限制下载速度
dd if=/dev/zero of=/tmp/file bs=1M count=1000创建一个1g的文件
在这里插入图片描述
put file上传看速度
在这里插入图片描述
anon_max_rate=102400限制最大下载速度为102400k
此时正常速度为227.2k
在这里插入图片描述
anon_mkdir_write_enable=YES使用户能创建路径
在这里插入图片描述
max_clients=2设置最大同时连接用户的数量
在这里插入图片描述
/查找chown
chown_uploads=YES打开这个功能
chown_username=(whoever)设置匿名用户变为什么身份创建和修改文件

在这里插入图片描述
####################################
3.限制本地用户登陆
####################################
vim /etc/vsftpd/ftpusers
用户永久黑名单
这里我将westos写入黑名单,用westos登陆失败

在这里插入图片描述
vim /etc/vsftpd/user_list
用户临时黑名单
将westos用户从永久黑名单删除,写入临时黑名单,发现登陆被拒绝

在这里插入图片描述
用户白名单设定
vim /etc/vsftpd/vsftpd.conf
userlist_deny=NO
systemctl restart vsftpd记得重读
在这里插入图片描述
vim /etc/vsftpd/user_list
参数设定,临时黑名单变成用户白名单,只有在名单中出现的用户可以登陆ftp

在这里插入图片描述
若在名单中的用户同时也出现在永久黑名单中,则该用户也不能登陆
在这里插入图片描述

##########################################
4.设置虚拟用户
##########################################

把源配置文件恢复成默认状态

vim /etc/vsftpd/loginusers编辑这个文件保存虚拟用户的帐号和密码
在这里插入图片描述
db_load -T -t hash -f loginusers loginusers.db设置哈希加密会生成一个哈希加密的文件
在这里插入图片描述
vim /etc/pam.d/ftpauth设置认证方式帐号或者密码错误登陆就失败
account(用户)
required(表示强制)
pam_userdb.so(表示认证程序)
db=/etc/vsftpd/westosfile(表示用户所在文件)
auth(表示密码)
在这里插入图片描述
vim /etc/vsftpd/vsftpd.conf
如图设置以虚拟用户以什么身份登陆
保存后重读
在这里插入图片描述
在student下创建一个hello
客户端登陆-u westos1
发现报错500
在这里插入图片描述
此时我们需要去除student的写权限
在这里插入图片描述
ls查看
在这里插入图片描述

#################################
5.单独配置虚拟用户的权限
#################################

mkdir /ftphome/westos{1…3}

mkdir /ftphome/westos1/westos1date#分别设置虚拟用户的家目录
在这里插入图片描述
mkdir /etc/vsftpd/user_conf
touch /etc/vsftpd/user_conf/westos1
#创建虚拟用户配置目录并且创建配置文件

anon_upload_enable=YES
#添加权限设置westos1能上传文件
在这里插入图片描述
修改vsftpd.conf
注意注释掉把westos变为student的设置
在这里插入图片描述

此时登陆上传报错553
这是因为权限太小
在这里插入图片描述
chmod 777 /ftphome/westos*/* #修改权限再次上传
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qwefyjwww/article/details/83588563