いつもLinuxをインストールする時、Minimalでインストールした後、一番最初にやることはSELinuxを無効にすることでした。
セキュアなOSとは知っていましたが、めんどくさいから、かつ難しいからでした。今回は少しSELinuxの設定について、触って見たいと思っています。内容はSELinuxが有効な状態でApacheでユーザごとのホームディレクトリを公開すること。以下簡易手順。CentOS6.4を使いました。
##### 0. SELinux確認 ##### # sestatus SELinux status: enabled SELinuxfs mount: /selinux Current mode: enforcing Mode from config file: enforcing Policy version: 24 Policy from config file: targeted ##### 1. Appche Web サーバのインストール ##### # yum install httpd ##### 2. httpd.conf にUserDirディレクティブを設定 ##### # vi /etc/httpd/conf/httpd.conf <IfModule mod_userdir.c> UserDir public_html <—追加 or コメントアウトを削除 </IfModule> ##### 3. Webサーバを再起動 ##### # service httpd restart ##### 4. ユーザlpicでログイン ##### # su - lpic ##### 5. 公開するディレクトリを作成 ##### $ mkdir public_html ##### 6. アクセス権限を追加 ##### $ chmod 711 /home/lpic/ $ chmod 711 /home/lpic/public_html/ ##### 7. テスト用のHTMLファイルを作成 ##### $ echo "It is a test page." > /home/lpic/public_html/index.html ##### 8. ブーリアン値httpd_enable_homedirsの確認 ##### # getsebool httpd_enable_homedirs httpd_enable_homedirs --> off ##### 9. http://ipaddress/~lpicにアクセス #####
##### ログ確認すると ##### # cat /var/log/httpd/error_log [Thu Jun 04 03:14:28 2015] [error] [client 192.168.0.13] (13)Permission denied: access to /~lpic/ denied ##### 10. ブーリアン値をonに設定(完了には時間がかかる) ##### # setsebool -P httpd_enable_homedirs on # getsebool httpd_enable_homedirs httpd_enable_homedirs --> on ##### 11. http://ipaddress/lpicにアクセス #####