设为首页 收藏本站
查看: 3139|回复: 6

[经验分享] SELinux 简介

[复制链接]

尚未签到

发表于 2012-6-5 16:34:21 | 显示全部楼层 |阅读模式
索引:
1.
DAC 及 MAC
2.
控管 SELinux 的政策
3.
SELinux 之布林值
4.
SELinux 之 security context
5.
SELinux 的相關指令
sestatus、setsebool、chcon、setenforce 及 getenforce、restorecon
6.
實作演練


1. DAC 及 MAC 
 傳統 Linux 上頭的檔案權限控管,可經由管理者或檔案擁有者自行指派,以規劃 user/group/other 的相關權限,而此種檔案存取限制的機制稱之為 Discretionary Access Control (DAC:任意存取控制),意即只要符合所設計之權限,即可存取相關資源。不過此種權限控管並無法有效阻擋一些惡意程式或設計不良程式所造成對系統的危害,因此由美國國家安全局 (National Security Agency:NSA) 所發展的 SELinux 便應運而生。
 SELinux (Security-Enhanced Linux) 顧名思義就是增強安全性的 Linux,目前已被整合到 Linux 2.6 版的核心之中,其主要是以 LSM (Linux Security Modules) 的方式來把 SELinux 加入 kernel 中使用。SELinux 所採用的機制為 Mandatory Access Control (MAC:強制存取控制),在 MAC 機制下是以 policy 來對存取權限做控管,而由 policy 中所制定的規則,將能允許或拒絕使用者及執行程式對物件 (objects:files、directories、devices、processes、…) 的存取。
 當啟用了 SELinux 之後,使用者及應用程式需同時滿足 DAC 及 MAC 所制定的權限及規則方能對此物件做正常存取,只要有一處不符合即遭拒絕,而對此物件所做的限制將不會影響其他正常運作中的執行程式。
 或許看到這裡可能還不是很明白到底 SELinux 的主要作用為何 ? 簡單的說,它就是透過 MAC 這種強制的方式來為應用程式規劃其所能存取的物件範圍,避免讓程式因越權而造成對系統的危害。

2. 控管 SELinux 的政策
 當您要修改系統 SELinux 的政策,可至 /etc/selinux/config 或 /etc/sysconfig/selinux 檔案做調整即可,而 /etc/sysconfig/selinux 為一連結至 /etc/selinux/config 的符號連結檔。
[iyunv@rhel ~]# vi /etc/selinux/config
#
This file controls the state of SELinux on the system.
#
SELINUX= can take one of these three values:
#
enforcing - SELinux security policy is enforced.
#
permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.

SELINUX=enforcing

#
SELINUXTYPE= type of policy in use. Possible values are:
#
targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.

SELINUXTYPE=targeted


 針對該檔的兩個主要參數介紹如下:
e1f114119306f333e948b3a5683799da.jpg
SELINUX設定 SELinux 政策所使用的模式。

˙
enforcing :強制啟用 SELinux。

˙permissive:只顯示警告訊息以替代強制啟用 SELinux。

˙disabled :停用 SELinux。

Tips:此參數修改過後,需重新開機才能生效。

SELINUXTYPE設定 SELinux 政策所使用的類型。

˙

targeted:只對網路相關服務 (daemons) 做保護。這是 RHEL5 預設所使用的政策類型

˙strict :能完整保護整個系統的執行。
Tips:修改 SELinux 政策所使用的模式時,還可利用「system-config-securitylevel」工具去做設定,且此工具亦可用來設定防火牆,讀者可善加利用。 
3. SELinux 之布林值
 SELinux 的 targeted policy 中能根據布林值 (boolean value) 的設定來決定啟用或停用對網路服務相關規則的限定,比如您在架設 Samba Server 後,想要讓使用者能存取自己的家目錄,那麼必須把 samba_enable_home_dirs 的布林值設成 1;又如設定 ftp 時,想讓匿名使用者可以上傳檔案,則必須把 allow_ftpd_anon_write 的布林值也設成 1。
 布林值不是 1 就是 0,1 表示 Active 或 on,0 代表 Inactive 或 off。可執行「getsebool -a」指令來查看所有 SELinux 的布林值,或執行「getsebool boolean ...」來查看特定的布林值:
[iyunv@rhel ~]# getsebool -a
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
allow_httpd_anon_write --> off
allow_nfsd_anon_write --> off
allow_smbd_anon_write --> off
allow_ypbind --> off
automount_disable_trans --> off
crond_disable_trans --> off
cupsd_disable_trans --> off
cyrus_disable_trans --> off
dhcpd_disable_trans --> off
dovecot_disable_trans --> off
ftp_home_dir --> off
ftpd_disable_trans --> off
httpd_disable_trans --> off
httpd_enable_cgi --> on
httpd_enable_homedirs --> on
klogd_disable_trans --> off
named_disable_trans --> off
named_write_master_zones --> off
nfs_export_all_ro --> on
nfs_export_all_rw --> on
nfsd_disable_trans --> off
nmbd_disable_trans --> off
ntpd_disable_trans --> off
portmap_disable_trans --> off
postfix_disable_trans --> off
rhgb_disable_trans --> off
rsync_disable_trans --> off
samba_enable_home_dirs --> off
samba_share_nfs --> off
saslauthd_disable_trans --> off
setroubleshootd_disable_trans --> off
slapd_disable_trans --> off
smbd_disable_trans --> off
squid_disable_trans --> off
syslogd_disable_trans --> off
tcpd_disable_trans --> off
telnetd_disable_trans --> off
use_nfs_home_dirs --> off
use_samba_home_dirs --> off
ypbind_disable_trans --> off
yppasswdd_disable_trans --> off
ypserv_disable_trans --> off
ypxfr_disable_trans --> off
[iyunv@rhel ~]# getsebool httpd_disable_trans allow_ypbind
httpd_disable_trans --> off
allow_ypbind --> off
 針對以上所列之部分 booleans 稍作解釋:
DNS 服務:

˙
named_disable_trans
是否關閉 SELinux 對 named daemon 的保護。預設為 off。

˙named_write_master_zones
是否允許 named 能覆寫 master zone files 的內容。預設為 off。

FTP 服務:

˙

ftpd_disable_trans
是否關閉 SELinux 對 ftpd daemon 的保護。預設為 off。  

˙allow_ftpd_anon_write
是否允許 client 上傳檔案至標記為 public_content_rw_t 的目錄。預設為 off。

˙ftp_home_dir
是否允許使用者讀取/寫入檔案於自己家目錄內。預設為 off。

SAMBA 服務:

˙smbd_disable_trans
是否關閉 SELinux 對 smbd daemon 的保護。預設為 off。  

˙nmbd_disable_trans
是否關閉 SELinux 對 nmbd daemon 的保護。預設為 off。  

˙allow_smbd_anon_write
是否允許對標記為 public_content_rw_t 的目錄具有寫入的權限。預設為 off。

˙samba_enable_home_dirs
是否允許使用者能存取自己的家目錄。預設為 off。  

NIS 服務:

˙ypserv_disable_trans
是否關閉 SELinux 對 ypserv daemon 的保護。預設為 off。

˙yppasswdd_disable_trans
是否關閉 SELinux 對 yppasswd daemon 的保護。預設為 off。

˙ypbind_disable_trans
是否關閉 SELinux 對 ypbind daemon 的保護。預設為 off。

˙allow_ypbind
是否允許您系統能於 NIS 環境裡正常運作。預設為 off。

HTTP 服務:

˙httpd_disable_trans
是否關閉 SELinux 對 httpd daemon 的保護。預設為 off。

˙httpd_enable_cgi
是否允許 cgi scripts 的執行。預設為 on。

˙httpd_enable_homedirs
是否允許 httpd 存取使用者家目錄。預設為 on。

4. SELinux 之 security context
 在 SELinux 中,對 objects 的存取是經由所制定的一些安全項目來做控管,這些安全項目即是所謂的 security context (安全內文);欲查看 objects 的 security context,可執行 ls 或 ps 指令並搭配 -Z 參數來查閱:
[iyunv@rhel ~]# ls -Z /var/www
drwxr-xr-x root root system_u:object_r:httpd_sys_script_exec_t cgi-bin

drwxr-xr-x root root system_u:object_r:httpd_sys_content_t error
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t html
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t icons
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t
manual
[iyunv@rhel ~]# ls -Zd /etc/samba /etc/passwd
-rw-r--r-- root root system_u:object_r:etc_t    /etc/passwd
drwxr-xr-x root root system_u:object_r:samba_etc_t
/etc/samba

[iyunv@rhel ~]#ps -ZC syslogd -C portmap -C init

LABEL              PID TTY    TIME CMD
system_u:system_r:init_t     1 ?   00:00:00 init
system_u:system_r:syslogd_t  1754 ?   00:00:00 syslogd
system_u:system_r:portmap_t  1797 ?   00:00:00 portmap


 注意到以上用冒號做區隔的那三個欄位,其分別為「user:role:type」,此三個欄位的介紹如下:
user

˙
user_u :一般使用者登入系統後,其預設的 SELinux 之使用者身分。

˙system_u:啟動程序 (processes) 的 SELinux 使用者身分。

˙root  :這是 root 登入後的 SELinux 使用者身分。


由以上說明可知除 root 外,其餘的 SELinux 使用者身分都是以「_u」做結尾。另外此欄位對 targeted policy 而言不是那麼的重要,需搭配 strict policy 才有意義,所以讀者了解一下即可。

role

˙

object_r:這是 files 所具有的 role。

˙system_r:這是 processes 或 users 所具有的 role。查看 processes role 可執行「ps -eZ」,users role 則執行「id」或「id -Z」即可。


此欄位都是以「_r」做結尾。另外 roles 通常是與 RBAC (Role-Based Access Control) 這類的存取控制比較有關係,而 RBAC 在 targeted policy 中是不使用的,搭配 strict policy 才有意義。

type:

此乃 SELinux security context 中最重要的欄位, 它是用來指定 files 或 processes 所標記的類型,透過這樣的設計能規劃出何種程序類型將可存取 domain 裡的何種檔案類型,如此方能達到嚴厲的存取控管。這裡所謂的 domain,指的是所管理的服務類型,比如像 httpd 服務、samba 服務、ftp 服務、… 等等。
此欄位是以「_t」做結尾。以下舉幾個 file context type 的例子給讀者參考。
˙針對 Apache (httpd daemon)
httpd_sys_content_t
設定此 type 之檔案,可讓檔案內容供 httpd scripts 及 daemon 來存取。
httpd_sys_script_exec_t
當 cgi scripts 具備此 type 時,將允許這些 scripts 能存取所有具 sys types 的檔案。
httpd_sys_script_ro_t
可讓 httpd_sys_script_exec_t scripts 能讀取具此 types 檔案的資料,而其他非 sys scripts 將無法存取此檔案內容。
httpd_sys_script_rw_t
可讓 httpd_sys_script_exec_t scripts 能讀取/寫入具此 types 檔案的資料,而其他非 sys scripts 將無法存取此檔案內容。
˙
針對 Samba (smbd daemon)
samba_share_t
當要分享檔案 (非家目錄) 予 Samba Client 端存取時,此檔案需標記成 samba_share_t 這個 type 才行。
˙
針對 FTP (vsftpd daemon)
public_content_t
標記此類型的檔案,將允許分享給匿名使用者存取。 當所分享的檔案打算提供給多個 domains (apache、ftp、rsync、samba) 來存取時,即可將此檔案規劃成這個 file context type。
public_content_rw_t
要開放某個目錄有寫入的權限時,需將此目錄標記成 public_content_rw_t。

5. SELinux 的相關指令
 要管理好 SELinux 的話,則對其相關指令勢必要有所了解,以下會舉幾個基本指令的用法。
[size=+1] d446bf21f8cd302b0dd1081e5f5f1fc4.gif 指令 sestatus
[size=+1] 查詢 SELinux 目前的狀態。
指令語法
sestatus [-v] [-b]
參數說明
-v
可列出 /etc/sestatus.conf 中 files 及 processes 的 security context。
-b
可顯示目前的 boolean value。
範例說明
1. 查詢 SELinux 啟用與否、policy 模式及 policy 類型:
[iyunv@rhel ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
2. 列出 /etc/sestatus.conf 中 files 及 processes 的 security context:
[iyunv@rhel ~]# sestatus -v
3. 顯示目前的 boolean value:
[iyunv@rhel ~]# sestatus -b


[size=+1] 指令 setsebool
[size=+1] 設定 SELinux 的布林值。
指令語法
setsebool [-P] boolean value | bool1=val1 bool2=val2 ...
參數說明
-P
未加此參數時,所設定的布林值只限當前有效,故欲讓目前設定的布林值能於 reboot 後還是能套用,則需加上 -P 參數,如此方能把目前的設定寫入 policy file 裡。
範例說明
1. 設定布林值(有使用等號):
[iyunv@rhel ~]#
setsebool -P ftp_home_dir=1 httpd_enable_cgi=0
[iyunv@rhel ~]# getsebool ftp_home_dir httpd_enable_cgi
ftp_home_dir --> on
httpd_enable_cgi --> off

2. 設定布林值(未使用等號):
[iyunv@rhel ~]# setsebool -P allow_ypbind 1
[iyunv@rhel ~]# getsebool allow_ypbind
allow_ypbind --> on


[size=+1] 當設定布林值未使用等號時,一次只能設定一個布林。
[size=+1] 指令 chcon
[size=+1] 修改檔案目錄的 security context。
指令語法
chcon [OPTION]... CONTEXT FILE...
參數說明
-R
遞迴地改變檔案目錄的 security context。
-r
設定檔案目錄之 security context 欄位中的 role。
-t
設定檔案目錄之 security context 欄位中的 type。
-u
設定檔案目錄之 security context 欄位中的 user。
範例說明
先建立一個目錄,再複製幾個檔案過去,以方便等會兒的練習:
[iyunv@rhel ~]# mkdir /testdir
[iyunv@rhel ~]# cp /etc/passwd /etc/fstab /testdir

遞迴地修改 file context type:
[iyunv@rhel ~]# chcon -R -t samba_share_t /testdir
[iyunv@rhel ~]# ls -dZ /testdir;ls -Z /testdir
drwxr-xr-x root root root:object_r:samba_share_t /testdir

-rw-r--r-- root root root:object_r:samba_share_t
fstab
-rw-r--r-- root root root:object_r:samba_share_t passwd

修改使用者個人網站根目錄 (假設是 ~username/web) 之 file context type:
[barry@rhel ~]$ mkdir web
[barry@rhel ~]$ chcon -t httpd_sys_content_t web
[barry@rhel ~]$ ls -dZ web
drwxrwxr-x barry barry root:object_r:httpd_sys_content_t web

 通常在新增檔案目錄時,這些檔案目錄會繼承上層目錄的 file context type,範例如下:
[barry@rhel ~]$ cd web
[barry@rhel web]$ echo "barry's web site" > index.html
[barry@rhel web]$ ls -Z
-rw-rw-r-- barry barry root:object_r:httpd_sys_content_t index.html

[size=+1] 指令 setenforce、getenforce
[size=+1] setenforce 指令是用來修改 SELinux 在執行中的模式,而 getenforce 則是查詢 SELinux 目前所使用的模式。
指令語法
setenforce [ Enforcing | Permissive | 1 | 0 ]
 執行「setenforce enforcing」或「setenforce 1」是把 SELinux 修改成 Enforcing 模式;執行「setenforce permissive」或「setenforce 0」則是把 SELinux 修改成 Permissive 模式。
範例說明
查詢 SELinux 目前的模式:
[iyunv@rhel ~]# getenforce
Enforcing
將 SELinux 修改成 Permissive 模式:
[iyunv@rhel ~]# setenforce 0
[iyunv@rhel ~]# getenforce
Permissive

[size=+1] 如原本 /etc/selinux/config 裡的 SELINUX 是設定 enforcing 模式,但想於開機時能關閉 SELinux,此時可於 GRUB 選單畫面中按下 e 進入編輯,接著選取 kernel 指令那一行再按下 e,最後把核心參數「selinux=0」補至該行最後端即可。
[size=+1] 指令 restorecon
 回復檔案目錄其預設的 security context。
指令語法
restorecon [OPTION] CONTEXT FILE...
參數說明
-R、-r
遞迴地回復檔案目錄預設的 security context。
-F
強制回復檔案目錄預設的 security context 。
-v
當 restorecon 對原本檔案的 security context 有做異動時,會顯示改變後的結果。
[size=+1]範例說明
先查看原本檔案的 security context:
[iyunv@rhel ~]# ls -Z install.log
-rw-r--r-- root root root:object_r:user_home_t    install.log
修改 file context 中的 user 及 type 欄位:
[iyunv@rhel ~]#
chcon -u user_u -t var_t install.log
[iyunv@rhel ~]# ls -Z install.log

-rw-r--r-- root root
user_u:object_r:var_t        install.log
回復檔案的 security context:
[iyunv@rhel ~]# restorecon install.log
[iyunv@rhel ~]# ls -Z install.log
-rw-r--r-- root root root:object_r:user_home_t install.log



6. 實作演練
 過去的 SELinux 其對系統安全的提昇是受到普遍的認同,但也因為設定方面太過於複雜而讓使用者望而怯步,因此當用戶在操作系統時幾乎都把 SELinux 關閉;不過幸運的是在 RHEL5 裡新增了一個障礙排除工具,可讓管理者對排解錯誤問題的發生有個遵循的依據。而讀者欲使用這方面功能時,請先確定 setroubleshoot 套件已安裝在系統上。
 以下的實作練習會搭配此障礙排除器來做演練,而等您了解整個障礙排除的方式後,相信日後將不會再對 SELinux 心生畏懼。

實作演練一:FTP 服務
[size=+1] 狀況一:允許匿名使用者上傳檔案
 請先於 /etc/vsftpd/vsftpd.conf 檔案裡修改 anon_upload_enable 參數,並規劃一目錄以提供匿名使用者上傳檔案用:
1. 修改 vsftpd.conf:
[iyunv@rhel ~]# vi /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES
[iyunv@rhel ~]# service vsftpd start
2. 規劃上傳目錄及權限:
[iyunv@rhel ~]# mkdir /var/ftp/upload
[iyunv@rhel ~]# chown ftp /var/ftp/upload


 接著即可做上傳的測試。此時用戶端應該會看到一個錯誤訊息「put: 存取失敗:553 Could not create file.」,而 Server 端在視窗桌面的工作列上則會出現一個星星的符號,這就表示用戶端該項操作被 SELinux 所阻擋:
1bc957689ba5ec18eafccb12812ae220.png
 當點選該星星圖像後即可看到以下障礙排除器所提供的訊息:
2bf1a42feda393bc449057ce2d7cc42d.png
 從上面 「Allowing Access」中所列的資訊,已經很清楚的告訴我們要如何操作才能允許用戶端的存取。首先需要把 allow_ftpd_anon_write 的布林值設為 1,並把提供上傳檔案的那個目錄其 context type 調整為 public_content_rw_t:
[iyunv@rhel ~]# setsebool -P allow_ftpd_anon_write=1
[iyunv@rhel ~]# getsebool allow_ftpd_anon_write
allow_ftpd_anon_write --> on

[iyunv@rhel ~]# chcon -t public_content_rw_t /var/ftp/upload
[iyunv@rhel ~]# ls -dZ /var/ftp/upload
drwxr-xr-x ftp root root:object_r:public_content_rw_t /var/ftp/upload


 完成後請再測試看看,這次應該就能順利上傳檔案了。
 另外除了用以上指令的方式修改布林值外,也可利用 SELinux 的管理工具來處理,您可從視窗桌面工作列上的 [系統] → [管理] → [SELinux Management][size=+1] 或執行「system-config-selinux」來進入 SELinux 的管理畫面,如下圖所示:
9bde2bb2e0a510c35a38113bb30b011f.png
 您只須把 SELinux 管理工具的畫面中 [Allow ftpd to upload files to directories labeled public_content_rw_t] 這個項目打勾,就等於執行「setsebool -P allow_ftpd_anon_write=1」。爾後要是再遇到需修改布林值時,即可多加利用這個工具。
[size=+1] 狀況二:允許使用者存取家目錄
 當用戶端透過認證方式存取 FTP 服務時,也會被 SELinux 所阻擋,此時 Server 端所顯示訊息如下:
85ca409805a25242c42374a2c5861e5b.png
 此時根據提示訊息將 ftp_home_dir 布林值調整成 1 即可:
[iyunv@rhel ~]# setsebool -P ftp_home_dir=1
[iyunv@rhel ~]# getsebool ftp_home_dir
ftp_home_dir --> on



實作演練二:SAMBA 服務
[size=+1] 狀況一:允許匿名帳號於分享目錄中新增目錄及刪除資料
 規劃一分享目錄 /sharedir,並開放給所有人具有寫入的權限:
[iyunv@rhel ~]# mkdir /sharedir
[iyunv@rhel ~]# cp /etc/passwd /sharedir
[iyunv@rhel ~]# chmod 777 /sharedir



 接著設定 smb.conf:
[iyunv@rhel ~]# vi /etc/samba/smb.conf

[global]
  workgroup = workgroup
  netbios name = rhel
  security = share
[share]
  public = yes
  path = /sharedir
  writable = yes

[iyunv@rhel ~]# service smb start


 再來進行測試:
[iyunv@Client ~]# smbclient //rhel/share
Password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c-2]
Server not using user level security and no password supplied.
smb: \> more passwd

smb: \> put install.log
putting file install.log as \install.log (1595.5 kb/s) (average 1595.5 kb/s)
smb: \> mkdir mydir
NT_STATUS_ACCESS_DENIED making remote directory \mydir
smb: \> rm passwd
NT_STATUS_ACCESS_DENIED deleting remote file \passwd


 經由上面的實作練習可以發現不管是瀏覽檔案或上傳檔案都沒問題,但要建立目錄或刪除檔案時卻遭遇存取被拒絕的訊息,此時趕快檢視一下 Server 端障礙排除器所提供的訊息:
6df7e07de56fc4fb991f1494988ac76e.png
 原來是 file context type 的問題,那就做個修正:
[iyunv@rhel ~]# chcon -R -t samba_share_t /sharedir


 調整過後再嘗試新增目錄及刪除檔案時應該就沒問題了。另外再提供另一種修改方式,就是把 allow_smbd_anon_write 布林值設 1,而 file context type 修改為 public_content_rw_t:
[iyunv@rhel ~]# setsebool -P allow_smbd_anon_write=1

[iyunv@rhel ~]# chcon -R -t public_content_rw_t /sharedir

 這樣也可達到相同的目的,提供給讀者參考。
[size=+1] 狀況二:允許使用者存取自己的家目錄
 先設定 SAMBA 認證:
[iyunv@rhel ~]# vi /etc/samba/smb.conf

[global]
  workgroup = workgroup
  netbios name = rhel
  security = user


[iyunv@rhel ~]# service smb restart
[iyunv@rhel ~]# smbpasswd -a barry
New SMB password:
Retype new SMB password:
Added user barry.


 用戶端測試:
[iyunv@Client ~]# smbclient //rhel/barry -U barry%mypasswd
Domain=[RHEL] OS=[Unix] Server=[Samba 3.0.23c-2]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME


 結果又被拒絕存取,看一下障礙排除器所提供的資訊:
4a2b7db1ef61ed580faaa3c075f09f33.png
 此時將 samba_enable_home_dirs 之布林值修改成 1 即可:
[iyunv@rhel ~]# setsebool -P samba_enable_home_dirs=1



實作演練三:HTTP 服務
[size=+1] 允許存取使用者個人網頁
 先設定 httpd.conf:
[iyunv@rhel ~]# vi /etc/httpd/conf/httpd.conf
<IfModule mod_userdir.c>

UserDir userweb
# 筆者把個人網站的根目錄名稱修改為 userweb。
</IfModule>
[iyunv@rhel ~]#
service httpd start


 修改家目錄權限及把個人網站的根目錄及 home page 建立起來:
[barry@rhel ~]$ chmod 711 .
[barry@rhel ~]$ mkdir userweb
[barry@rhel ~]$
echo "barry's web site" > userweb/index.html

 接著做測試時於 URL 上輸入 http://localhost/~barry/,結果出現「You don't have permission to access /~barry/ on this server.」的拒絕訊息,此時只要把相關檔案目錄的 file context type 修改成 httpd_sys_content_t 後,即可讓 httpd 正常存取:
[barry@rhel ~]$ ls -dZ userweb;ls -Z userweb
drwxrwxr-x barry barry user_u:object_r:user_home_t userweb
-rw-rw-r-- barry barry user_u:object_r:user_home_t index.html
[barry@rhel ~]$
chcon -R -t httpd_sys_content_t userweb
[barry@rhel ~]$ ls -dZ userweb;ls -Z userweb
drwxrwxr-x barry barry user_u:object_r:httpd_sys_content_t userweb
-rw-rw-r-- barry barry user_u:object_r:httpd_sys_content_t index.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-13-1-1.html 上篇帖子: 如何修改网卡顺序。 下篇帖子: 开机时自动挂载ISO文件 管理者 security 安全局 安全性
累计签到:315 天
连续签到:1 天
发表于 2012-6-5 16:39:30 | 显示全部楼层
可不可以不用繁体字?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-15 17:31:16 | 显示全部楼层
生我之前谁是我,生我之后我是谁?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-24 19:53:08 | 显示全部楼层
为中华而努力读书!一包中华好多钱啊~~~

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

发表于 2013-6-7 14:01:01 | 显示全部楼层
佛曰,色即是空,空即是色!今晚,偶想空一下

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-21 01:51:33 | 显示全部楼层
床上运动也可以减肥的,你们都不知道吗?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-29 03:57:39 | 显示全部楼层
.其实我是一个天才,可惜天妒英才!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表