ftp服务器的搭建

ftp服务

ftp服务的基本信息
**软件安装包:**vsftpd
默认发布目录:/var/ftp
**协议接口:**21/tcp
服务配置文件:/etc/vsftpd/vsftpd.conf
报错id的解析:
500 文件系统权限过大
530 用户认证失败
550 服务本身功能未开启
553 本地文件系统权限过小
下面实验在desktop虚拟机中进行,为了保证此次实验环境,先将虚拟机重置
1.检查安装vsftpd软件
检查是否安装了vsftpd

rpm -qa |grep vsftpd

在这里插入图片描述
在这里插入图片描述
安装vsftpd软件,使用yum命令进行安装

 yum  install vsftpd -y

在这里插入图片描述
2.启动服务
在这里插入图片描述
开启火墙,并添加ftp服务到火墙白名单
在这里插入图片描述
3.关闭selinux
在这里插入图片描述
显示Enforcing,则代表没有关闭
编辑配置文件
在这里插入图片描述
将selinux的状态改为disabled
在这里插入图片描述
重启服务器
在这里插入图片描述
查看
在这里插入图片描述
显示Disabled修改成功
4.主机安装lftp
在这里插入图片描述

anonymous_enable=YES|NO   
匿名用户是否可以登陆 (YES为可以登录)

在这里插入图片描述
在这里插入图片描述
编辑配置文件后,一定要重启服务
在这里插入图片描述
测试:在这里插入图片描述

write_enable=YES|NO   
ftp是否对登陆用户可写(YES为可写)

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
测试:
在这里插入图片描述
匿名用户家目录修改

在这里插入图片描述
anon_root=/hello
在这里插入图片描述
测试
在这里插入图片描述
匿名用户建立目录
anon_mkdir_write_enable=YES|NO
在这里插入图片描述

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

测试
在这里插入图片描述
匿名用户下载
anon_world_readable_only=YES|NO 参数NO表示匿名用户可以下载
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述
匿名用户删除
anon_other_write_enable=YES|NO
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述
最大链接数
max_clients=1 表示最多有1个可以连接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述
再重新开启一个shell,进行连接,连接失败
在这里插入图片描述
本地用户家目录修改

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

在这里插入图片描述
本地用户上传文件权限
local umask=xxx
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述
黑白名单
(1)vim  /etc/vsftpd/ftpusers   用户永久黑名单
在这里插入图片描述
在这里插入图片描述
白名单
注意: 修改/etc/vsftpd/vsftpd.conf——>userlist deny=NO时/etc/vsftpd/user list 就变成用户白名单
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述虚拟用户的管理
(1) 创建虚拟用户认证
建立虚拟用户的原因: 因为系统用户登陆ftp服务,同时也可以登陆系统,这样很不安全,所以我们要建立ftp虚拟用户,使这些用户只能登陆ftp
建立方式:
1vim /etc/vsftpd/loginusers   名字任意
在这里插入图片描述在这里插入图片描述

2加密文件:因为文件是明文的,很不安全,所以我们要对其加密
在这里插入图片描述
这里查看文件类型,看到使用的是hash加密

3编辑策略文件(验证密码与用户是否一致的文件) 文件名称任意
在这里插入图片描述在这里插入图片描述注意:
required表示用户名认证必须正确,否者直接pass
db=/etc/vsftpd/loginusers,后面文件名不能是loginusers.db
如果写成db=/etc/vsftpd/loginusers.db 则实际会将文件识别成loginusers.db.db

4. 编辑配置文件
在这里插入图片描述
指定策略文件到配置文件中
在这里插入图片描述
编辑配置文件一定要重启服务
在这里插入图片描述
测试 可以看到虚拟用户创建成功,可以登录
在这里插入图片描述
注意:创建虚拟用户后,本地用户就不能正常登陆了,但是仍然可以指定本地用户身份登陆
(2) 如何指定虚拟用户登录身份
1编辑配置文件
将虚拟用户指定身份设置为student(这里的student必须是服务端已经存在的用户)

2查看westos用户家目录下的东西,如果虚拟用户登录时可以看到以下文件,则证明虚拟用户登录身份修改成功
在这里插入图片描述
3修改权限
此时登录会有权限过大的报错显示
在这里插入图片描述在这里插入图片描述
测试 ——>成功

(3)虚拟用户家目录的设置
1在这三个家目录中分别添加文件(为了验证用户进入的是否是自己的家目录
在这里插入图片描述
权限加满,方便后续测试
在这里插入图片描述
编辑配置文件
在这里插入图片描述在这里插入图片描述
注意:
(1) $ USER 相当于c语言中的变量,给不同的值,输出不同的值
(2)user_sub_token=$ USER (将shell中$USER的用法挪到ftp服务中来用)

在这里插入图片描述测试——>成功

(4)虚拟账号配置独立设定
1原理: 虚拟用户使用的是匿名用户的参数控制,如果我们想让不同的虚拟用户有不同的权利,就必须给每个虚拟用户设置自己的次配置文件
2配置过程

建立虚拟用户的次配置目录及次配置文件
在这里插入图片描述
编辑配置文件
在这里插入图片描述
将匿名用户的上传功能注释掉
在这里插入图片描述
编辑次配置文件,在里面写上允许虚拟用户执行的动作
在这里插入图片描述
让虚拟用户可以实现上传功能
在这里插入图片描述在这里插入图片描述
测试:虚拟用户westos1可以实现上传功能
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值