################################
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*/* #修改权限再次上传