RH135---Linux系统管理及网络服务之 linux中内核及加强型火墙管理 --Selinux
# 一.Selinux的功能 #
1.觀察現(xiàn)象
當Selinux未開啟時disable
在/mnt中建立文件被移動到/var/ftp下可以被vsftpd服務訪問
匿名用戶可以通過設置后上傳文件
當使用ls -Z /var/ftp查看文件時顯示"?"
ps auxZ ?| grep vsftpd 時顯示:
- ? ?root ?8546 ?0.0 ?0.0 ?26952 ? 408 ? ?Ss 10:35 ?0:00 /usr/sbin/vsftpd? /etc/vsftpd/vsftpd.conf
當selinux開啟:enforcing
在/mnt中建立文件被移動到/var/ftp下不可以被vsftpd服務訪問
匿名用戶可以通過設置后仍然不能上傳文件
當使用ls -Z /var/ftp查看文件時顯示信息
testfile2不能被訪問
ps auxZ ?| grep vsftpd 時顯示:
system_u:system_r:ftpd_t:s0-s0:c0.c1023 root 6577 0.0 ?0.0 26952 ?412 ? ? ? ? ?Ss ? 10:50 ? 0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
selinux:
對于文件的影響:
當selinux開啟時,內(nèi)核會對每個文件及每個開啟的程序進行標簽加載
標簽內(nèi)記錄程序和文件的安全上下文(context)
對于程序功能的影響:
當selinux開啟會對程序的功能加載開關,并設定此開關的狀態(tài)為關閉
當需要此功能時需要手動開啟功能開關 此開關叫做sebool
# 二.Selinux的狀態(tài)及管理 #
1.selinux的開啟
vim /etc/selinux/config
7 SELINUX=disabled? ? ? ? ?selinux關閉
7 SELINUX=enforcing? ? ? ?selinux開機設定為強制狀態(tài)此狀態(tài)為selinux開啟
7 SELINUX=permissive? ? selinux開機設定為警告狀態(tài)此狀態(tài)為selinux開啟
"selinux開啟或關閉需要重啟系統(tǒng)"
enforcing: 不符合條件一定不能被允許,并會收到警告信息
permissive: 不符合條件被允許,并會收到警告信息
selinux狀態(tài)的查看:
getenforce
selinux開啟后強制和警告級別的轉換
setenforce 0? ? ? ? ?警告
setenforce 1? ? ? ? ?強制?會拒絕你
selinux日志位置:
/var/log/audit/audit.log
# 三.Selinux的安全上下文 #
1.查看
ls -Z? ? ? ?查看文件的安全上下文
ls -Zd? ? ?查看目錄的安全上下文
ps auxZ? 查看進程的安全上下文
2.修改安全上下文
臨時修改? ?
此方式更改的安全上下文在selinux重啟后會還原
chcon -t 標簽? ? ?文件/目錄
chcon -t public_content_t /var/ftp/westosfile1
chcon -Rt public_content_t /westosdir? 修改目錄及目錄中的所有子文件的安全上下文
chcon -Rt public_content_t /westosdir? 修改目錄及目錄中的所有子文件的安全上下文
永久修改安全上下文
如果需要特殊指定安全上下文需要修改內(nèi)核安全上下文列表
semanage fcontext -l? ? ?查看內(nèi)核安全上下文列表
semanage fcontext -a -t public_content_t ?'/westosdir2(/.*)?'
restorecon -RvvF /westosdir/? ? ?刷新
touch ?/.autorelabel? ? ? ? ? ? ? ? ? ? 重啟系統(tǒng)時selinux初始化文件標簽開關文件
# 四.SEBOOL #
getsebool ?-a? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 顯示服務的bool值
setsebool ?-P ftpd_anon_write on? ?更改
?# 五.SEPORT #
?semanage port -l | grep ssh
semanage port -a -t ssh_port_t -p tcp ?1111? ?添加
# 六.setrouble #
/var/log/audit/audit.log? ? selinux警告信息
/var/log/messages? ? ? ? ? ? ?selinux問題解決方案
setroubleshoot-server? ? ? ? 此軟件功能是采集警告信息并分析得到解決方案存 放到message中
semanage port -d -t ssh_port_t -p tcp ?1111? 刪除
> /var/log/audit/audit.log
>/var/log/messages
systemctl restart sshd
systemctl stop sshd
?
總結
以上是生活随笔為你收集整理的RH135---Linux系统管理及网络服务之 linux中内核及加强型火墙管理 --Selinux的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Pr 入门系列之十:添加图形和标题
- 下一篇: xp wifi android,《解决没