學習 selinux

selinux

1.selinux的功能

selinux:內核加強型火牆

selinux的功能:當selinux開啓時會給系統的每個文件及每個程序加載安全上下文,特定安全上下文的程序只能訪問特定上下文的文件

當selinux開啓會對服務本身相對不安全的功能加載開關sebool並且設定開關爲關閉狀態以保證服務安全性,當需要此功能時需要超級用手動調節

在/mnt 下建立安全上下文爲空文件file移動到ftp默認發佈目錄中可以被訪問,ftp安全上下文爲空,用戶可以上傳文件

當selinux功能沒有開啓時

當selinux功能開啓時 

# getsebool -a | grep ftp

selinux的狀態

狀態類型:

disabled       關閉

enforcing      開啓

permissive    警告

setenforce 0 警告模式
setenforce 1 強制模式
getenforce              查看selinux 的狀態
vim /etc/sysconfig/selinux   編輯文件改變selinux的狀態     (修改文件後必須reboot才能改變狀態)

setenforce 0   改變selinux的狀態爲警告模式

查看linux時的警告信息

安全上下文

1.臨時更改安全上下文

ls -Z /var/ftp              查看ftp默認路徑下文件的安全上下文

 在selinux開啓時file文件可以訪問 linux文件不可以訪問

修改linux文件的安全上下文後linux文件可以訪問

2.永久更改安全上下文

1> 在selinux開啓狀態下建立一個目錄,在目錄中建立文件

2> 設定westos用戶登錄時候的家目錄爲 /ftpuserdir

# vim /etc/vsftpd/vsftpd.conf      編輯文件
# systemctl restart vsftpd         重啓服務

測試:

當用westos用戶登錄ftp服務時無法訪問家目錄中的文件,因爲selinux安全上下文不匹配

查看內核安全上下文列表中的信息

# semanage fcontext -l | grep /ftpuserdir       查看安全上下文列表中的信息
# semanage fcontext -a -t public_content_t /ftpuserdir'(/.*)?' 添加列表信息(當前不生效)
# restorecon -RvvF /ftpuserdir                  刷新安全上下文

再次查看

用戶westos登錄ftp訪問

4. sebool

SEBOOL

selinux 對服務功能的開關

1.在selinux功能爲Enforcing時開啓匿名用戶傳輸文件的功能,發現其不能傳輸文件.

# vim /etc/vsftpd/vsftpd.conf      編輯文件
# systemctl restart vsftpd         重啓服務

2.修改/var/ftp/pub 文件內的安全上下文爲r w,發現匿名用戶還是不能傳輸文件

# semanage fcontext -a -t public_content_rw_t /var/ftp/pub'(/.*)?' 將安全上下文列表中的信息改爲可讀可寫
# restorecon -RvvF /var/ftp/pub/     刷新安全上下文列表

 

3.開啓selinux對匿名用戶寫的功能,發現匿名用戶可以正常上傳文件

# getsebool -a | grep ftp  查看ftp服務功能開關
# setsebool -P ftpd_-anon_write=1  開啓功能  (-P爲永久,否則爲臨時)

5.setrouble

selinux功能爲開啓狀態

安裝 setroubleshoot-server.x86_64 

#  /sbin/restorecon -v /var/ftp/linux5       分析日誌並提供解決辦法

#  /sbin/restorecon -v /var/ftp/linux5

 

 

 

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