偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何使用semanage和避免禁用SELinux?

譯文
開(kāi)發(fā) 開(kāi)發(fā)工具
本文介紹的三個(gè)semanage命令有助于大大簡(jiǎn)化SELinux的處理。

[[390322]]

【51CTO.com快譯】SELinux頗具挑戰(zhàn)性;當(dāng)這個(gè)安全層阻止您的應(yīng)用程序或服務(wù)時(shí),您的第一個(gè)反應(yīng)往往是將其設(shè)成“禁用”或“允許”。在安全至關(guān)重要的當(dāng)下,您無(wú)法進(jìn)行這種更改,否則您的整個(gè)系統(tǒng)或網(wǎng)絡(luò)安全堪憂(yōu)。您不想那樣。

為何不使用可助您一臂之力的工具?這款工具就是semanage,它是SELinux策略管理工具。借助semanage,您可以調(diào)整文件上下文、端口上下文和布爾值,這將有助于您確保系統(tǒng)可使用,又不必禁用安全系統(tǒng)。

本文將介紹以下命令:

  • semanage boolean
  • semanage fcontext
  • semanage port

知道這些命令后,您應(yīng)該能夠在Linux系統(tǒng)上更好地使用SELinux。

您需要什么?

運(yùn)行中的Linux實(shí)例(使用SELinux)

擁有sudo特權(quán)的用戶(hù)

如何使用semanage boolean?

使用semanage boolean,您可以啟用和禁用允許規(guī)則集,因而可以為不同的用例允許不同的規(guī)則集。假設(shè)您有一臺(tái)Web服務(wù)器,必須允許讀取用戶(hù)內(nèi)容,比如來(lái)自主目錄的數(shù)據(jù)。SELinux默認(rèn)情況下不允許這么做。使用semanage boolean命令,您可以啟用該功能。

您可以使用semanage boolean命令,通過(guò)以下命令列出所有可用的HTTP相關(guān)策略:

  1. sudo semanage boolean -l | grep httpd 

您將看到幾項(xiàng)條目,比如:

  1. httpd_read_user_content (off , off) Allow httpd to read user content 

每份列表含有布爾值的名稱(chēng)、布爾值的當(dāng)前和持久狀態(tài)以及布爾值描述。如上所示,httpd_read_user_content布爾值設(shè)為off。我們?nèi)绾螁⒂盟?很簡(jiǎn)單:

  1. sudo semanage boolean -m --on httpd_read_user_content 

使用-m選項(xiàng),我們指示SELinux使用后面的選項(xiàng)(--on)來(lái)修改記錄(本例中是httpd_read_user_context)。

就是這樣。您已完成了設(shè)置,SELinux將允許Web服務(wù)器讀取用戶(hù)內(nèi)容。

如果想要列出所有布爾值,看看您還可以做些什么,執(zhí)行以下命令:

  1. sudo semanage boolean -l 

如何使用semanage fcontext?

semanage fcontext命令用于管理文件上下文定義,這包含額外信息(比如SELinux用戶(hù)、角色、類(lèi)型和級(jí)別),以做出訪問(wèn)控制決策。文件上下文是管理員在SELinux上面臨的最大問(wèn)題之一。您可能已經(jīng)創(chuàng)建了一個(gè)新目錄來(lái)容納SSH主機(jī)密鑰,但是如果沒(méi)有正確的文件上下文,SELinux不會(huì)允許通過(guò)SSH訪問(wèn)該目錄。

您可以執(zhí)行什么操作?

可以使用semanage fcontext更改新目錄的文件上下文。

與boolean一樣,fcontext也有可以使用的策略。想查看可用策略的完整列表,請(qǐng)執(zhí)行以下命令:

  1. sudo semanage fcontext -l 

如果想列出所有與SSH守護(hù)程序有關(guān)的策略,請(qǐng)執(zhí)行以下命令:

  1. sudo semanage fcontext -l | grep sshd 

在該列表中,您將看到以下條目:

  1. /etc/ssh/primes regular file system_u:object_r:sshd_key_t:s0 
  2.  
  3. /etc/ssh/ssh_host.*_key regular file system_u:object_r:sshd_key_t:s0 
  4.  
  5. /etc/ssh/ssh_host.*_key\.pub regular file system_u:object_r:sshd_key_t:s0 

假設(shè)您要將SSH主機(jī)密鑰放在/data/keys中。創(chuàng)建目錄,將所有鍵移動(dòng)到新主目錄中,并更改sshd_config文件以匹配新映射。嘗試使用SSH時(shí),它會(huì)失敗。為什么?因?yàn)?data/keys沒(méi)有正確的fcontext。可以使用以下兩個(gè)命令解決該問(wèn)題:

  1. sudo semanage fcontext -a -t sshd_key_t '/data/keys/*.*' 
  2.  
  3. sudo restorecon -r /data/keys 

我們使用semanage fcontxt創(chuàng)建新策略之后,必須使用restorecon命令對(duì)新文件設(shè)置安全上下文。正則表達(dá)式*.*獲取目錄中的所有文件。

如何使用semanage port?

您可能猜到了,semanage port讓您可以在自定義端口上運(yùn)行服務(wù)。如果您嘗試在自定義端口上運(yùn)行服務(wù),該服務(wù)會(huì)失敗。假設(shè)您想在非標(biāo)準(zhǔn)端口上運(yùn)行SSH守護(hù)程序。如果您僅為此配置sshd_config,會(huì)發(fā)現(xiàn)SELinux將阻止您獲得訪問(wèn)權(quán)限,因?yàn)镾ELinux不知道您已進(jìn)行了此更改。

如果想把SSH端口更改為2112:

  1. semanage port -a -t ssh_port_t -p tcp 2112 

然后就要使用以下命令將端口添加到防火墻:

  1. sudo firewall-cmd --add-port=2112/tcp --permanent 
  2.  
  3. sudo firewall-cmd --reload 

至此,您終于可以使用非標(biāo)準(zhǔn)端口,通過(guò)SSH訪問(wèn)支持SELinux的服務(wù)器。

想列出所有可用的端口策略,請(qǐng)執(zhí)行以下命令:

  1. sudo semanage port –l 

結(jié)論

SELinux是一種功能很強(qiáng)大的工具,擅長(zhǎng)保護(hù)Linux服務(wù)器免受不必要的更改。這種功能帶來(lái)了一定程度的復(fù)雜性。熟悉上述三個(gè)命令,可使管理工作變得更輕松,而不是禁用SELinux或?qū)⑵湓O(shè)置為“許可”模式。

原文標(biāo)題:How to use semanage and avoid disabling SELinux,作者:Jack Wallen

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2020-07-04 11:08:34

SELinuxLinux操作系統(tǒng)

2019-07-26 10:35:52

Linux禁用SELinux

2011-05-31 14:22:23

2018-11-19 09:50:51

Linux命令操作系統(tǒng)

2019-05-13 10:23:28

Linux網(wǎng)卡命令

2019-09-24 08:56:00

內(nèi)存Redis使用

2011-11-25 10:20:14

虛擬化桌面虛擬化VDI

2012-09-05 11:09:15

SELinux操作系統(tǒng)

2013-10-09 13:43:09

2017-08-18 09:05:50

2023-11-01 13:32:42

Go代碼

2009-05-13 11:13:07

MySQL定位性能故障

2013-03-25 10:15:57

2021-03-01 15:52:14

開(kāi)源開(kāi)源軟件陷阱

2013-05-06 16:36:55

SELinuxSELinux故障

2021-01-29 08:00:00

服務(wù)器安全SELinux

2013-03-13 10:24:48

2012-04-13 16:26:49

虛擬化云計(jì)算云停滯

2018-04-26 11:00:17

數(shù)據(jù)移動(dòng)數(shù)據(jù)中心云端

2010-04-01 15:16:45

CentOS系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)