selinux插件:
服务端:
1.vim /etc/yum.repos.d/rhel_dvd.repo 更改yum源地址
![](https://i-blog.csdnimg.cn/blog_migrate/f63b7d695c6df66cf533a130a6aaf411.png)
![](https://i-blog.csdnimg.cn/blog_migrate/48354eb8a4db5b6197137bf247f26cde.png)
2.yum clean all 清空缓存
![](https://i-blog.csdnimg.cn/blog_migrate/f83992642aa73a6e9d553de69a671fcc.png)
3.yum install vsftpd -y 安装vsftpd服务
![](https://i-blog.csdnimg.cn/blog_migrate/8852117a0d4887f724a09a9d123f0218.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a40e7095981093ef88db895eda2a3e6d.png)
4.systemctl start vsftpd 开启vsftpd服务
5.systemctl enable vsftpd 设置开机自启动
6.systemctl stop firewalld 关闭防火墙
7.systemctl disable firewalld 设置开机关闭防火墙
![](https://i-blog.csdnimg.cn/blog_migrate/aeb4cb627d1771304ef9cc9889f13bf7.png)
客户端:
1.yum install lftp -y 下载lftp服务
2.lftp 172.25.254.107 --ls查看 可以显示内容登陆成功
![](https://i-blog.csdnimg.cn/blog_migrate/46b9d5a669e96d79779b8c63000fcb78.png)
安区上下文
1.命令修改:只能在强制,警告两者之间修改,如果想要关闭需要修改配置文件,并且reboot,修改成功。
强制:会发出警告,且不能访问
setenforce 1 修改为强制
警告:会发出警告,到可以访问
setenforce 0 修改为警告
查看getenforce
2.vim /etc/sysconfig/selinux 配置文件修改状态,修改后要reboot(selinux插件)。
enforcing 强制
permissive 警告
disabled 关闭
3.[root@localhost pub]# ls -Z 查看标签
disabled 关闭时
在touch /var/ftp/pub/ westos目录中建立文件,登陆ftp查看
登陆ftp查看:可以看到westos
enforcing 强制时
lftp登陆查看可以看到westos,看不到westos1
安全上下文标签不一样
4.[root@localhost ~]# ps auxZ | grep vsftpd 查看vsftpd服务
![](https://i-blog.csdnimg.cn/blog_migrate/b9958a0ba000153b693c0d38665fed8c.png)
5.[root@localhost pub]# chcon -t public_content_t westos1 更改标签(修改标签后可以查看)
注意:chcon更改安全上写文是临时的,系统重后更改失效。
[root@localhost pub]# chcon -t public_content_t westos1
[root@localhost pub]# ls -Z
-rw-r--r--. root root system_u:object_r:public_content_t:s0 westos
-rw-r--r--. root root unconfined_u:object_r:public_content_t:s0 westos1
重启服务:systemctl restart vsftpd
登陆ftp可以查看那到westos1
安全上下文永久更改:在selinux为强制或警告状态下
1.mkdir /westos 建立目录
2.semanage fcontext -l | grep /var/ftp 查看安全上下文列表
![](https://i-blog.csdnimg.cn/blog_migrate/363c0bdc24063b8da8d7139c729e753a.png)
3.semanage fcontext -l | grep /wstos 查看westos有没有在列表中
![](https://i-blog.csdnimg.cn/blog_migrate/bb046f57f101055eac46b367bc118718.png)
列表中没有
4.semanage fcontext -a -t public_content_t '/westos(/.*)?' 把westos加入到列表中
5. semanage fcontext -l | grep /westos
/westos(/.*)? all files system_u:object_r:public_content_t:s0
![](https://i-blog.csdnimg.cn/blog_migrate/9bb5f6f206c05259219149a42c4e1712.png)
6.[root@localhost ~]# restorecon -RvvF /westos/ 刷新安全上下文列表
7.[root@localhost ~]# ls -Zd /westos/
drwxr-xr-x. root root system_u:object_r:public_content_t:s0 /westos/
![](https://i-blog.csdnimg.cn/blog_migrate/a54630844ee1eb33628a71f65a928bc1.png)
火墙bool值
1. getsebool -a | grep ftp 查看火墙bool值
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
![](https://i-blog.csdnimg.cn/blog_migrate/89fc762bb56e7d37c91268ce0e30283a.png)
2. setsebool -P ftp_home_dir on 更改火墙bool值-P表示永久允许
![](https://i-blog.csdnimg.cn/blog_migrate/da578e2e449a0dc6e28fd7a18149650b.png)
systemctl restart vsftpd 重启服务
测试:student用户登陆
lftp 172.25.254.107 -u student
Password:
lftp student@172.25.254.107:~> ls
lftp student@172.25.254.107:~> put /etc/passwd
2381 bytes transferred
lftp student@172.25.254.107:~> ls
-rw-r--r-- 1 1000 1000 2381 Apr 20 03:39 passwd
selinux 日志存放位置
1.setsebool -P ftp_home_dir 0 关闭bool值
![](https://i-blog.csdnimg.cn/blog_migrate/d7e3d7c61e39a2549726fbef5e57e94c.png)
2. rpm -qa | grep setroubleshoot 查看软件
![](https://i-blog.csdnimg.cn/blog_migrate/4e2251393aebdcc5438cd6ee71522558.png)