selinux簡介

selinux #內核加強型火牆
準備工作:
vim /etc/sysconfig/selinux ##開啓內核加強型火牆
SELINUX=enforcing (強制並拒絕)

在這裏插入圖片描述

reboot

rm -rf /etc/vsftpd
yum reinstall vsftpd ##重裝vsftpd服務保持一個純淨的環境

mkdir /westos
touch /westos/westosfile{1…3}

1.上下文訪問標籤的更改

vim /etc/vsftpd/vsftpd.conf
anon_root=/westos ##設定默認用戶的家目錄爲/westos
在這裏插入圖片描述

此時通過匿名登陸216,並不能看到/westos下的文件

在這裏插入圖片描述

原因爲當selinux開啓後,只有上下文訪問標籤相同才能正常顯示
ls -Zd /westos/ ##查看/westos的上下文訪問標籤
在這裏插入圖片描述
ls -Zd /var/ftp/pub/ ##查看/pub的上下文訪問標籤

在這裏插入圖片描述

解決方法:

1:臨時設定:
chcon -t public_content_t /westos/ -R ##臨時設定/westos的上下文訪問標籤
ls -Zd /westos/ ##再次查看/westos的上下文訪問標籤

在這裏插入圖片描述

此時
在這裏插入圖片描述
可以正常鏈接

restorecon -FvvR /westos/ ##執行刷新

在這裏插入圖片描述
ls -Zd /westos/ ##由於是臨時的所以執行刷新後又變了回來(selinx的開啓和關閉也會導致臨時設定失效)

在這裏插入圖片描述

2:永久設定

semanage fcontext -a -t public_content_t ‘/westos(/.*)?’
##永久設定
semanage fcontext -l | grep westos
在這裏插入圖片描述

此時查看/westos的上下文訪問標籤發現並未更改
ls -Zd /westos/
在這裏插入圖片描述

執行刷新
restorecon -FvvR /westos/
在這裏插入圖片描述

再次查看/westos的上下文訪問標籤發現發生了更改
ls -Zd /westos/

在這裏插入圖片描述

此時便可正常連接
lftp 172.25.254.216
在這裏插入圖片描述

2.服務默認bool值的設置

chmod 775 /home/student ##給家目錄權限

##本地用戶開啓上傳權限
lftp 172.25.254.216 -u student

在這裏插入圖片描述

getsebool -a | grep ftp ##查看ftp服務的bool值

在這裏插入圖片描述

setsebool -P ftp_home_dir on ##更改默認bool值 -P(永久)

在這裏插入圖片描述
此時本地用戶便可正常上傳

lftp 172.25.254.216 -u student

在這裏插入圖片描述

##匿名用戶開啓上傳權限

vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES
systemctl restart vsftpd.service
在這裏插入圖片描述

getsebool -a | grep ftp

在這裏插入圖片描述

setsebool -P ftpd_anon_write on ##更改默認bool值

在這裏插入圖片描述

semanage fcontext -a -t public_content_rw_t /var/ftp/pub
##將pub目錄的安全上下文改爲可寫
restorecon -RvvF /var/ftp/pub/ ##執行刷新
在這裏插入圖片描述

此時匿名用戶便可正常上傳

4.如何更改selinux工作狀態

selinux的工作狀態:

Enforcing ##強制並拒絕
Permissive ##警告 可以在/var/log/audit/audit.log查看警告
disabled ##不工作

getenforce ##查看當前工作狀態

在這裏插入圖片描述

setenforce 0|1 ##更改當前工作狀態1(Enforcing) 0(Permissive)

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章