中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SELinux的知識點有哪些

發布時間:2021-12-17 09:50:43 來源:億速云 閱讀:131 作者:iii 欄目:大數據

本篇內容主要講解“SELinux的知識點有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“SELinux的知識點有哪些”吧!

     SELinux是「Security-Enhanced Linux」的簡稱,是美國國家安全局「NSA=The National Security Agency」 和SCC(Secure Computing Corporation)開發的 Linux的一個擴張強制訪問控制安全模塊。

     因為企業的業務平臺的服務器上存儲著大量的商務機密,個人資料,個人資料它直接關系到個人的隱私問題。特別是政府的網站,作為信息公開的平臺,它的安全就更顯得重要了。

     這些連到互聯網的服務器,不可避免的要受到來自世界各地的各種威脅。最壞的時候我們的服務器被入侵,主頁文件被替換,機密文件被盜走。除了來自外部的威脅外,內部人員的不法訪問,攻擊也是不可忽視的。對于這些攻擊或者說是威脅,當然有很多的辦法,有防火墻,入侵檢測系統,打補丁等等。

       Linux也和其他的商用UNIX一樣,不斷有各類的安全漏洞被發現。

傳統的Linux OS的不足之處:


         雖然Linux 比起 Windows 來說,它的可靠性,穩定定要好得多,但是他也是和其他的UNIX 一樣,有以下這些不足之處。
1)存在特權用戶root
任何人只要得到root的權限,對于整個系統都可以為所欲為。這一點Windows也一樣。


2)對于文件的訪問權的劃分不夠細
在linux系統里,對于文件的操作,只有「所有者」,「所有組」,「其他」這3類的劃分。對于「其他」這一類里的用戶再細細的劃分的話就沒有辦法了。


3)SUID程序的權限升級
如果設置了SUID權限的程序有了漏洞的話,很容易被攻擊者所利用。


4)DAC (Discretionary Access Control)問題
文件目錄的所有者可以對文件進行所有的操作,這給系統整體的管理帶來不便。

      對于以上這些的不足,防火墻,入侵檢測系統都是無能為力的。


       DAC(Discretionary access control,自主訪問控制):
DAC機制就是指對象(比如程序、文件或進程等)的的擁有者可以任意的修改或授予此對象相應的權限。例如傳統Linux,Windows等。


      MAC(Mandatory Access Control,強制訪問控制):
MAC機制是指系統不再允許對象(比如程序、文件或文件夾等)的擁有者隨意修改或授予此對象相應的權限,而是透過強制的方式為每個對象統一授予權限,例如SELinux。

SELinux的優點
SELinux系統比起通常的Linux系統來,安全性能要高的多,它通過對于用戶,進程權限的最小化,即使受到攻擊,進程或者用戶權限被奪去,也不會對整個系統造成重大影響。

      在標準Linux中,主體的訪問控制屬性是與進程通過在內核中的進程結構關聯的真實有效的用戶和組ID,這些屬性通過內核利用大量工具進行保護,包括登陸進程和setuid程序,對于文件,文件的inode包括一套訪問模式位、文件用戶和組ID。

    以前的訪問控制基于讀/寫/執行這三個控制位,文件所有者、文件所有者所屬組、其他人各一套。在SELinux中,訪問控制屬性總是安全上下文三人組形式,所有文件和主體都有一個關聯的安全上下文,標準Linux使用進程用戶/組ID,文件的訪問模式,文件用戶/組ID要么可以訪問要么被拒絕,SELinux使用進程和客體的安全上下文,需要特別指出的是,因為SELinux的主要訪問控制特性是類型強制,安全上下文中的類型標識符決定了訪問權。

   若要訪問文件,必須同時具有普通訪問權限和SELinux訪問權限。因此即使以超級用戶身份root運行進程,根據進程以及文件或資源的SELinux安全性上下文可能拒絕訪問文件或資源。


一、使用SELinux保護網絡服務  
====顯示和設置SELinux模式====
[root@tianyun ~]# vim /etc/sysconfig/selinux //強模式制 許可模式 禁用模式
[root@tianyun ~]# getenforce   //查看當前SElinux的狀態
[root@tianyun ~]# setenforce //可以在強模式制 許可模式之間切換
[root@tianyun ~]# sestatus //列出目錄SELinux使用的策略(Policy)


文件上下文 FILE CONTEXTS:
====顯示和設置SELinux文件、進程等的上下文====
[root@tianyun ~]# ps auxZ //查看進程的SELinux安全上下文
[root@tianyun ~]# ps -ZC httpd
[root@tianyun ~]# ls -Zd /home //查看文件的SELinux安全上下文
[root@tianyun ~]# ls -Zd /var/www

====修改文件SELinux上下文====
方法一:chcon
[root@tianyun ~]# chcon -R -t httpd_sys_content_t /virtual
[root@tianyun ~]# chcon -R --reference /var/www/html /vritual
方法二:semanage fcontext
[root@tianyun ~]# yum provides */semanage
[root@tianyun ~]# yum -y install policycoreutils policycoreutils-pythons

讓 Apache 可以訪問位于非默認目錄下的網站文件
首先,用 semanage fcontext -l | grep '/var/www' 獲知默認 /var/www 目錄的 SELinux 上下文:
/var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0


從中可以看到 Apache 只能訪問包含 httpd_sys_content_t 標簽的文件。
假設希望 Apache 使用 /srv/www 作為網站文件目錄,那么就需要給這個目錄下的文件增加 httpd_sys_content_t 標簽,分兩步實現。


    首先為 /srv/www 這個目錄下的文件添加默認標簽類型:semanage fcontext -a -t httpd_sys_content_t '/srv/www(/.*)?' 然后用新的標簽類型標注已有文件:restorecon -Rv /srv/www 之后 Apache 就可以使用該目錄下的文件構建網站了。


    其中 restorecon 在 SELinux 管理中很常見,起到恢復文件默認標簽的作用。比如當從用戶主目錄下將某個文件復制到 Apache 網站目錄下時,Apache 默認是無法訪問,因為用戶主目錄的下的文件標簽是 user_home_t。

    此時就需要 restorecon 將其恢復為可被 Apache 訪問的 httpd_sys_content_t 類型:


[root@tianyun ~]# semanage fcontext -a -t httpd_sys_content_t "/web2" //針對目錄
[root@tianyun ~]# semanage fcontext -a -t httpd_sys_content_t "/web2(/.*)?" //針對目錄及目錄下的所有文件
[root@tianyun ~]# semanage fcontext -a -t httpd_sys_content_t "/web2/file4" //針對文件
[root@tianyun ~]# semanage fcontext -a -t httpd_sys_content_t "/web2/index\.txt" //針對文件

1. cp、mv對上下文的影響
[root@tianyun ~]# touch /tmp/file1 /tmp/file2
[root@tianyun ~]# cp /tmp/file1 /var/www/html
[root@tianyun ~]# mv /tmp/file2 /var/www/html
[root@tianyun ~]# ls -Z /var/www/html/file*
[root@tianyun ~]# semanage fcontext -l |grep ^/var/www
[root@tianyun ~]# restorecon -Rv /var/www

2.針對新目錄添加上下文
[root@tianyun ~]# mkdir /virtual
[root@tianyun ~]# touch /virtual/index.html
[root@tianyun ~]# ls -Zd /virtual
[root@tianyun ~]# semanage fcontext -a -t httpd_sys_content_t ‘/virtual(/.*)?’
[root@tianyun ~]# restorecon -RFvv /virtual


除此之外我們還可以使用man來得到幫助 man -k http| grep selinux


SELinux布爾值
====通過SELinux布爾值調整策略行為====
SELinux布爾值是更改SELinux策略行為的開關
man -k ‘_selinux’
cd /selinux/booleans 相當于變量
getsebool -a |grep httpd 用于顯示布爾值
setsebool 用于修改布爾值
setsebool -P 修改SELinux策略,以永久保留修改
semanage boolean -l |grep httpd_enable_homedirs 顯示布爾值是否永久

二.
監控SELinux策略沖突情況
部署SELinux日志分析工具
必須安裝setroubleshoot-server軟件包,才能將SELinux消息發送至/var/log/messages
setroubleshoot-server偵聽/var/log/audit/audit.log中的審核信息并將簡短摘要發送至/var/log/messages
該摘要包括SELinux沖突的唯一標識符(UUIDs),可用于收集更多信息

[root@tianyun ~]# yum -y install setroubleshoot setroubleshoot-server
[root@tianyun ~]# service rsyslog restart; chkconfig rsyslog on
[root@tianyun ~]# service auditd restart; chkconfig auditd on


1.在開啟SElinux時,使用匿名用戶訪問ftp,并在upload目錄下上傳一個文件
在vsftpd.conf配置ftp匿名用戶可寫
anonymous_enable
anon_upload_enable
anon_other_write_enable
anon_mkdir_write_enable

 使用robin用戶訪問自己的家目錄 并且可以上傳

2.搭建samba服務器,自定義文件夾/share,使用samba共享,允許user1 user2 用戶 rw訪問 /share,允許user1通過samba訪問自己家目錄

到此,相信大家對“SELinux的知識點有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平陆县| 灌云县| 铁岭市| 庆阳市| 西青区| 昭通市| 临西县| 从化市| 新干县| 云龙县| 盘锦市| 图们市| 沙雅县| 宁海县| 武鸣县| 同德县| 吴桥县| 乌兰浩特市| 太仓市| 溆浦县| 民县| 舒兰市| 汪清县| 青田县| 齐齐哈尔市| 新昌县| 达拉特旗| 磴口县| 疏附县| 惠州市| 泰顺县| 禄丰县| 怀远县| 纳雍县| 宿州市| 大渡口区| 万年县| 吉隆县| 四子王旗| 钟山县| 策勒县|