SELinux
有効化し、セキュアに生きていく。
外部から取ってきたポリシーは信頼できるか?
ポリシーの無いソフトウェアに出会ったら、自分で書かなきゃならない。
ArchLinux
code:install-dependencies-on-archlinux.sh
pacman -S base-devel cunit xmlto swig devtools fakechroot python ruby
yay -S proot
pip install cython
Ubuntu
code:install-on-ubuntu.sh
apt install -y selinux-basics selinux-policy-default auditd
selinux-activate
reboot # 再起動必須
check-selinux-installation
# Ubuntu 20.04以前だとテストが通らない、当該テストを消すか、20.04以上を使うこと
# echo $? で0なら成功、それ以外なら失敗
code:usage.sh
apt install -y apache2 php libapache2-mod-php
setenforce 1
echo 'hello' > /var/www/html/hello.txt
curl localhost/hello.txt # 403
chcon -R -t httpd_sys_content_t /var/www/html
curl localhost/hello.txt # 200
# 恒久的にApacheが/var/www/htmlにアクセスできるようにする
semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?"
restorecon -R -v /var/www/html
参考