• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 297,  comments - 15,  trackbacks - 0

            看了很多網(wǎng)路上有關於 SELinux 的文章以及到書店去翻了一下有提到 SELinux 的 Linux 書籍
            看完了的感覺不是很好
            幾乎都沒提到什麼是 SELinux?SELinux 的運作機制是什麼?
            大部份提到的解決辦法,都是 “請把 SELinux 停用”
            這樣也只不過是治標而不是治本的方法

            SELinux 的設定檔

            * /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

            若要停用 SELinux, 則把 SELINUX=enforcing 改成 SELINUX=disabled 後重新開機即可

            SELinux 的一些相關指令

            * sestatus
            查看 SELinux 是否啟用及目前狀態(tài)如何的指令
            如:
            1.SELinux Disabled

            $ sestatus
            SELinux status: disabled

            2.SELinux Enabled
            mode: enforcing
            Policy: targeted

            $ sestatus
            SELinux status: disabled
            SELinux status: enabled
            SELinuxfs mount: /selinux
            Current mode: enforcing
            Mode from config file: enforcing
            Policy version: 18
            Policy from config file:targeted

            Policy booleans:
            ...skip...
            httpd_builtin_scripting active
            httpd_disable_trans active
            httpd_enable_cgi active
            httpd_enable_homedirs active
            httpd_ssi_exec active
            httpd_tty_comm inactive
            httpd_unified active
            ...skip...

            * system-config-securitylevel
            圖形化介面的工具程式,除了可以設定防火牆(iptables)外,也可以設定 SELinux

            * setenforce
            SELinux 啟動為 enforcing 的狀況下,可以執(zhí)行 “setenforce 0“ 來將 SELinux 暫時停用

            * getsebool and setsebool
            /etc/selinux/targeted/booleans 這個檔裡面放的就是各個 Policy 的布林值,不過,在 FC5 之後,已經(jīng)沒有這個檔了,你可以用
            $ getsebool -a
            來查看所有的 booleans 設定狀況
            或是使用如:
            $ setsebool -P httpd_disable_trans 1
            來將 httpd_disable_trans 停用,這樣其實也就等於是停用 SELinuxhttpd 的保護了

            * chcon
            傳統(tǒng)的 chmod 指令是用來設定檔案或目錄的權限的,而同樣的 chcon 指令則是用來設定 SELinux 對檔案或目錄的 content 標籤的

            * fixfiles
            fixfiles check 指令可以用來檢查檔案或目錄的 SELinux content
            fixfiles restore 指令則可以用來修正(還原)檔案或目錄的 SELinux content
            fixfiles relabel 則是會重新修正(還原)所有的檔案及目錄的 SELinux content

            如何在 SELinux 啟動為 enforcing 的狀況下也讓 Web Server(httpd) 能正常運作?

            前面提到,我們可以將 SELinux 停用(disabled) 或是執(zhí)行 “setsebool -P httpd_disable_trans 1“ 來停用 SELinuxhttpd 的保護,這樣,httpd 就可以跟平常一樣的運作了
            那如果我們要啟用 SELinux 且讓 httpd 也可以正常運作呢?
            舉個例子來說:

            [root@acer:~] pwd
            /root
            [root@acer:~] echo "" > index.php
            [root@acer:~] mv index.php /var/www/html/
            `index.php' -> `/var/www/html/index.php'
            [root@acer:~]

            在上述的指令中,我在 root 的 $HOME 目錄下產(chǎn)生了一個 index.php 的檔案,內(nèi)容為顯示 phpinfo
            然後把再把這個檔案搬移到 /var/www/html 目錄底下,然後開 browser 來瀏覽 http://localhost/index.php 這個頁面,得到的畫面卻是:

            Forbidden

            You don't have permission to access /index.php on this server.

            Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.

            沒錯,無法存取,我們來看一看到底是怎麼回事:

            [root@acer:~] ls -Z /var/www/html/index.php
            -rw-r--r-- root root root:object_r:user_home_t /var/www/html/index.php
            [root@acer:~]
            [root@acer:~] 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/

            因為 index.php 的 content type 為 user_home_t 而不是 httpd_sys_content_t 所以無法存取
            因此,我們可以執(zhí)行:

            [root@acer:~] chcon -u system_u -t httpd_sys_content_t /var/www/html/index.php
            [root@acer:~] ls -Z /var/www/html/index.php
            -rw-r--r-- root root system_u:object_r:httpd_sys_content_t /var/www/html/index.php

            請再開一次 browser (or reload),現(xiàn)在是不是可以正常存取 index.php 頁面了呢?

            再看另一個例子:

            [root@acer:~] wget http://wordpress.org/latest.tar.gz
            --13:36:59-- http://wordpress.org/latest.tar.gz
            => `latest.tar.gz'
            Resolving wordpress.org... 72.232.44.122
            Connecting to wordpress.org|72.232.44.122|:80... connected.
            HTTP request sent, awaiting response... 200 OK
            Length: unspecified [application/octet-stream]

            [ ] 505,475 90.49K/s

            13:37:07 (90.28 KB/s) - `latest.tar.gz' saved [505475]

            [root@acer:~] tar zxf latest.tar.gz
            [root@acer:~] mv wordpress /var/www/html/wp
            `wordpress' -> `/var/www/html/wp'

            瀏覽 http://localhost/wp/ 的結果一樣被拒絕存取,因為 content 的問題

            [root@acer:~] ls -dZ /var/www/html/wp
            drwxr-xr-x 1025 1011 root:object_r:user_home_t /var/www/html/wp/

            同樣的,我們可以用 chone -R 指令來修正 content

            [root@acer:~] chcon -R -u system_u -t httpd_sys_content_t /var/www/html/wp/

            或是使用 fixfiles restore 指令也可以

            [root@acer:~] fixfiles restore /var/www/html/wp/

            修正過後的狀況:

            [root@acer:~] ls -dZ /var/www/html/wp
            drwxr-xr-x apache apache system_u:object_r:httpd_sys_content_t /var/www/html/wp/

            相關參考文件

            http://linux.vbird.org/somepaper/20050801_SELinux.pdf
            http://fedoraproject.org/wiki/SELinux
            http://fedora.redhat.com/docs/selinux-faq/
            http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/selinux-guide/
            http://www.redhat.com/magazine/001nov04/features/selinux/
            http://www.redhat.com/magazine/006apr05/features/selinux/
            http://www.tresys.com/selinux/index.shtml
            http://www.nsa.gov/selinux/


            from:

            http://blog.chinaunix.net/u1/38576/showart_1926391.html

            posted on 2010-04-01 17:22 chatler 閱讀(283) 評論(0)  編輯 收藏 引用 所屬分類: Linux_SysAdmin
            <2011年5月>
            24252627282930
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久国内免费视频| 久久综合视频网站| 一级做a爰片久久毛片毛片| 一本色道久久综合狠狠躁| 色偷偷91久久综合噜噜噜噜| 久久精品免费网站网| 国产成人99久久亚洲综合精品 | 日韩av无码久久精品免费| 久久久精品日本一区二区三区| 色诱久久久久综合网ywww| 久久伊人精品一区二区三区| 亚洲欧美一级久久精品| 青青热久久国产久精品 | 久久久久久久久66精品片| 国产三级精品久久| 久久久精品久久久久久| 久久久久久久久66精品片| 亚洲国产日韩综合久久精品| 99久久做夜夜爱天天做精品| 99久久国产综合精品女同图片| 久久99精品久久久大学生| 久久久久se色偷偷亚洲精品av| 伊人色综合久久天天人手人婷 | 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 2022年国产精品久久久久| 一本大道加勒比久久综合| 久久久久久久久久免免费精品| 中文精品99久久国产| 国产毛片欧美毛片久久久| 国产91久久精品一区二区| 久久久无码精品亚洲日韩软件| 日韩人妻无码一区二区三区久久 | 国产午夜福利精品久久2021 | 久久伊人精品一区二区三区| 久久亚洲AV无码精品色午夜 | 午夜不卡久久精品无码免费| 国产一级做a爰片久久毛片| 一级做a爰片久久毛片免费陪 | 国产精品亚洲美女久久久| 久久国产精品免费| 久久精品一本到99热免费|