Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Letzte Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:selinux_-_webserver_inhalte_freigeben [2018/11/12 23:50] ingo_wichmann |
admin_grundlagen:selinux_-_webserver_inhalte_freigeben [2019/08/13 11:02] dhoppe [HTML Datei außerhalb des DocumentRoot anlegen] |
||
---|---|---|---|
Zeile 67: | Zeile 67: | ||
- | ====== PHP Anwendung: Rechte testen ====== | ||
- | yum install php | ||
- | service httpd restart | ||
- | cd /var/www/html/ | ||
- | id -Z | ||
- | ls -dZ . | ||
- | matchpathcon . | ||
- | -> Type: ''httpd_sys_content_t'' | ||
- | PHP-Shell((https://github.com/flozz/p0wny-shell)) installieren: (**niemals auf produktiven Systemen**) | ||
- | wget https://github.com/flozz/p0wny-shell/raw/master/shell.php | ||
- | ls -Z shell.html | ||
- | -> Type: ''httpd_sys_content_t'', Webserver kann darauf zugreifen | ||
- | |||
- | -> http://localhost/shell.php | ||
====== HTML Datei außerhalb des DocumentRoot anlegen ====== | ====== HTML Datei außerhalb des DocumentRoot anlegen ====== | ||
- | mkdir -p /srv/www/html/ | + | <file txt /etc/httpd/conf.d/srv.conf> |
- | chcon --reference /var/www/html /srv/www/html/ | + | Alias /srv /srv/test |
- | matchpathcon /srv/www/html | + | |
+ | <Directory /srv/test> | ||
+ | Require all granted | ||
+ | </Directory> | ||
+ | </file> | ||
+ | |||
+ | apachectl graceful | ||
+ | |||
+ | mkdir -p /srv/test | ||
+ | ls -dZ /srv/test/ | ||
+ | -> Type: ''var_t'' | ||
+ | chcon --reference /var/www/html /srv/test | ||
+ | ls -dZ /srv/test/ | ||
-> Type: ''httpd_sys_content_t'' | -> Type: ''httpd_sys_content_t'' | ||
+ | matchpathcon /srv/test/ | ||
+ | -> Type: ''var_t'' (**Achtung!**) | ||
<file html test.html> | <file html test.html> | ||
Zeile 100: | Zeile 100: | ||
</file> | </file> | ||
- | ls -Z /srv/www/html/test.html | + | ls -Z /srv/test/test.html |
+ | -> Type: ''var_t'', Webserver kann **nicht** darauf zugreifen | ||
+ | chcon --reference /var/www/html /srv/test/test.html | ||
+ | ls -Z /srv/test/test.html | ||
+ | -> Type: ''httpd_sys_content_t'', Webserver kann darauf zugreifen | ||
+ | restorecon -RF /srv/test/ | ||
+ | ls -Z /srv/test/test.html | ||
+ | -> Type: ''var_t'', Webserver kann **nicht** darauf zugreifen | ||
+ | semanage fcontext --add -t httpd_sys_content_t '/srv/test(/.*)?' | ||
+ | restorecon -RF /srv/test/ | ||
-> Type: ''httpd_sys_content_t'', Webserver kann darauf zugreifen | -> Type: ''httpd_sys_content_t'', Webserver kann darauf zugreifen | ||