国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux怎么安裝使用semanage

2020-10-14 22:34:47
字體:
來源:轉載
供稿:網友

semanage命令是用來查詢與修改SElinux默認目錄的安全上下文,那么大家知道Linux怎么安裝使用semanage嗎?接下來大家跟著小編一起來了解一Linux安裝使用semanage下的解決方法吧。

Linux安裝使用semanage方法

Selinux極大的增強了Linux系統的安全性,能將用戶權限關在籠子里,如httpd服務,apache默認只能訪問/var/www目錄,并只能監聽80和443端口,因此能有效的防范0-day類的攻擊。舉例來說,系統上的 Apache 被發現存在一個漏洞,使得某遠程用戶可以訪問系統上的敏感文件(比如 /etc/passwd 來獲得系統已存在用戶),而修復該安全漏洞的 Apache 更新補丁尚未釋出。此時 SELinux 可以起到彌補該漏洞的緩和方案。因為 /etc/passwd 不具有 Apache 的訪問標簽,所以 Apache 對于 /etc/passwd 的訪問會被 SELinux 阻止。

CentOS系統自帶的chcon工具只能修改文件、目錄等的文件類型和策略,無法對端口、消息接口和網絡接口等進行管理,semanage能有效勝任SELinux的相關配置工作。

安裝:

代碼如下:

# yum -y install policycoreutils-python

用法:

semanage命令用來查詢與修改SELinux默認目錄的安全上下文。

semanage fcontext [-S store] -{a|d|m|l|n|D} [-frst] file_spec

semanage fcontext [-S store] -{a|d|m|l|n|D} -e replacement target

主要參數:

-a:添加

-d:刪除

-m:修改

-l:列舉

-n:不打印說明頭

-D:全部刪除

-f:文件

-s:用戶

-t:類型

r:角色

基本使用:

管理登錄linux的用戶和SELinux局限的用戶之間的映射。

代碼如下:

semanage login [-S store] -{a|d|m|l|n|D} [-sr] login_name | %groupname

管理策略模塊:

代碼如下:

semanage module [-S store] -{a|d|l} [-m [--enable | --disable] ] module_name

管理網絡端口類型定義

代碼如下:

semanage port [-S store] -{a|d|m|l|n|D} [-tr] [-p proto] port | port_range

例:如apache采用非標準端口,需執行如下命令:

代碼如下:

emanage port -a -t http_port_t -p tcp port_number

查看當前允許的httpd端口:

代碼如下:

# semanage port -l|grep http

http_cache_port_t tcp 3128, 8080, 8118, 8123, 10001-10010

http_cache_port_t udp 3130

http_port_t tcp 8888, 80, 443, 488, 8008, 8009, 8443

pegasus_http_port_t tcp 5988

pegasus_https_port_t tcp 5989

注意:8888是我剛才添加的

管理網絡接口類型定義

代碼如下:

semanage interface [-S store] -{a|d|m|l|n|D} [-tr] interface_spec

管理網絡節點類型定義

代碼如下:

semanage node [-S store] -{a|d|m|l|n|D} [-tr] [ -p protocol ] [-M.netmask] address

管理文件中映射定義

代碼如下:

semanage fcontext [-S store] -{a|d|m|l|n|D} [-frst] file_spec

semanage fcontext [-S store] -{a|d|m|l|n|D} -e replacement target

例:讓 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 類型:

代碼如下:

restorecon -v /srv/www/foo.com/html/file.html

restorecon reset /srv/www/foo.com/html/file.html context unconfined_u:object_r:user_home_t:s0->system_u:object_r:httpd_sys_content_t:s0

semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?" //新建一條規則,指定/web目錄及其下的所有文件的擴展屬性為httpd_sys_content_t


(責任編輯:VEVB)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 始兴县| 柘荣县| 阳曲县| 宣城市| 安龙县| 浮山县| 曲水县| 漳浦县| 介休市| 都江堰市| 松江区| 邵东县| 镇江市| 会泽县| 桃园市| 胶南市| 民县| 海安县| 左权县| 儋州市| 湘潭市| 五河县| 疏勒县| 紫金县| 临邑县| 五家渠市| 卫辉市| 彩票| 中超| 西乌珠穆沁旗| 西藏| 长岭县| 社旗县| 内江市| 白银市| 连云港市| 芷江| 邵阳市| 鹤壁市| 肇庆市| 扎兰屯市|