人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

Linux中安裝使用semanage來修改文本的教程

發(fā)布日期:2022-01-21 09:19 | 文章來源:源碼中國(guó)

Selinux極大的增強(qiáng)了Linux系統(tǒng)的安全性,能將用戶權(quán)限關(guān)在籠子里,如httpd服務(wù),apache默認(rèn)只能訪問/var/www目錄,并只能監(jiān)聽80和443端口,因此能有效的防范0-day類的攻擊。舉例來說,系統(tǒng)上的 Apache 被發(fā)現(xiàn)存在一個(gè)漏洞,使得某遠(yuǎn)程用戶可以訪問系統(tǒng)上的敏感文件(比如 /etc/passwd 來獲得系統(tǒng)已存在用戶),而修復(fù)該安全漏洞的 Apache 更新補(bǔ)丁尚未釋出。此時(shí) SELinux 可以起到彌補(bǔ)該漏洞的緩和方案。因?yàn)?/etc/passwd 不具有 Apache 的訪問標(biāo)簽,所以 Apache 對(duì)于 /etc/passwd 的訪問會(huì)被 SELinux 阻止。

CentOS系統(tǒng)自帶的chcon工具只能修改文件、目錄等的文件類型和策略,無法對(duì)端口、消息接口和網(wǎng)絡(luò)接口等進(jìn)行管理,semanage能有效勝任SELinux的相關(guān)配置工作。

安裝:

復(fù)制代碼
代碼如下:

# yum -y install policycoreutils-python

用法:
semanage命令用來查詢與修改SELinux默認(rèn)目錄的安全上下文。
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

主要參數(shù):


-a:添加
-d:刪除
-m:修改
-l:列舉
-n:不打印說明頭
-D:全部刪除
-f:文件
-s:用戶
-t:類型
r:角色

基本使用:

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

復(fù)制代碼
代碼如下:

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

管理策略模塊:

復(fù)制代碼
代碼如下:

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

管理網(wǎng)絡(luò)端口類型定義

復(fù)制代碼
代碼如下:

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

例:如apache采用非標(biāo)準(zhǔn)端口,需執(zhí)行如下命令:

復(fù)制代碼
代碼如下:

emanage port -a -t http_port_t -p tcp port_number

查看當(dāng)前允許的httpd端口:

復(fù)制代碼
代碼如下:

# 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是我剛才添加的

管理網(wǎng)絡(luò)接口類型定義

復(fù)制代碼
代碼如下:

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

管理網(wǎng)絡(luò)節(jié)點(diǎn)類型定義

復(fù)制代碼
代碼如下:

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

管理文件中映射定義

復(fù)制代碼
代碼如下:

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 可以訪問位于非默認(rèn)目錄下的網(wǎng)站文件

首先,用 semanage fcontext -l | grep '/var/www' 獲知默認(rèn) /var/www 目錄的 SELinux 上下文:

復(fù)制代碼
代碼如下:

/var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0

從中可以看到 Apache 只能訪問包含 httpd_sys_content_t 標(biāo)簽的文件。

假設(shè)希望 Apache 使用 /srv/www 作為網(wǎng)站文件目錄,那么就需要給這個(gè)目錄下的文件增加 httpd_sys_content_t 標(biāo)簽,分兩步實(shí)現(xiàn)。

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

其中 restorecon 在 SELinux 管理中很常見,起到恢復(fù)文件默認(rèn)標(biāo)簽的作用。比如當(dāng)從用戶主目錄下將某個(gè)文件復(fù)制到 Apache 網(wǎng)站目錄下時(shí),Apache 默認(rèn)是無法訪問,因?yàn)橛脩糁髂夸浀南碌奈募?biāo)簽是 user_home_t。此時(shí)就需要 restorecon 將其恢復(fù)為可被 Apache 訪問的 httpd_sys_content_t 類型:

復(fù)制代碼
代碼如下:

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(/.*)?" //新建一條規(guī)則,指定/web目錄及其下的所有文件的擴(kuò)展屬性為httpd_sys_content_t

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部