Despre Linux

  • Acasă
  • Linux
    • Comenzi Linux
    • Tutoriale
  • RHCSA
    • Exerciții RHCSA
    • SELinux
    • Permisiuni
  • General
    • Open source
  • Contact

SELinux - test practic

6 octombrie 2018 By Bobses Lasă un comentariu

După ce am trecut în revistă Security-Enhanced Linux (SELinux), a sosit și timpul unui exercițiu practic, asemănător cu ceea ce se poate da în timpul examinării în vederea obținerii certificării RHCSA. Trebuie reținut că o cerință din cadrul examinării RHCSA poate fi îndeplinită în mai multe moduri - alegeți-o pe cea pe care o cunoașteți cel mai bine (în cazul în care nu se specifică în mod special o anumită metodă); de asemenea, toate modificările trebuie să reziste unui restart al sistemului (la fel, dacă nu se specifică altceva).

1. Descărcați și instalați serverul web Apache

# yum install httpd

2.  Modificați fișierul de configurare /etc/httpd/conf/httpd.conf și înlocuiți /var/www/html cu /content. Creați directorul /content și apoi creați un fișier static numit index.html în directorul /content cu conținutul "This is my website".

# sed -i 's/\/var\/www\/html/\/content/' /etc/httpd/conf/httpd.conf

sau

# vi /etc/httpd/conf/httpd.conf apoi căutați și înlocuiți șirul de caractere /var/www/html cu /content

Atenție! Sunt 2 linii care trebuie înlocuite:

# cat /etc/httpd/conf/httpd.conf | grep "/var/www/html"
DocumentRoot "/var/www/html"
<Directory "/var/www/html">

Creăm noul director content în directorul rădăcină al sistemului:

# mkdir -p /content

În directorul /content, vom crea fișierul static index.html cu conținutul cerut:

# echo "This is my website" > /content/index.html

3. Folosind sed, modificați conținutul fișierului /etc/httpd/conf.d/userdir.conf și înlocuiți  UserDir disabled cu  UserDir public_html

# sed -i 's/disabled/public_html/' /etc/httpd/conf.d/userdir.conf

Atenție! Deși acest fișier se poate modifica și manual (folosind vi/vim sau nano), cerința specifică în mod clar modificarea lui cu sed.

4. Creați un director public_html în directorul /home/user. Cu comanda echo, scrieți "This is my website" într-un fișier simplu html /home/user/public_html/index.html

# mkdir -p /home/bobses/public_html
# echo "This is my website" > /home/bobses/public_html/index.html

5. Setați permisiunile pentru user și grup ale directorului /home/user/public_html pentru userul "user". Setați permisiuni 711 pentru directorul /home/user și 755 recursiv pentru /home/user/public_html

# chown -R bobses. /home/bobses/public_html
# chmod 711 /home/bobses
# chmod 755 -R /home/bobses/public_html 

Executarea comenzilor de la acest punct (precum și modificările făcute) pot fi urmărite în imaginea de mai jos:

6. Restartați serviciul httpd:

# systemctl restart httpd

7. Instalați pachetul corect SELinux pentru depanarea politicilor de interzicere și violarea accesului

# yum install -y setroubleshoot-server 

8. Copiați adresa IP a serverului și încercați să accesați fișierul index.html din directorul /content în browser (notă - veți primi un mesaj de eroare: Forbidden You don't have permission to access /index.html on this server). Depanați eroarea folosind pachetul SELinux troubleshooting și vedeți care ar putea fi cauza. După ce ați determinat cauza, implementați o soluție pentru a remedia violarea politicii SELinux.

# sealert -a /var/log/audit/audit.log # semanage fcontext -a -t httpd_sys_content_t '/content(/.*)?' # restorecon -Rv /content restorecon reset /content context unconfined_u:object_r:default_t:s0->unconfined_u:object_r:httpd_sys_content_t:s0 restorecon reset /content/index.html context unconfined_u:object_r:default_t:s0->unconfined_u:object_r:httpd_sys_content_t:s0

La următoarea încercare de accesare a fișierului index.html în browser, va fi afișat conținutul său:

9. Modificați fișierul /etc/httpd/conf/httpd.conf și înlocuiți /content cu /home/bobses/public_html. Restartați serverul httpd și repetați pașii de mai sus: accesare fișier index.html, depanare probleme SELinux.

Partajează asta:

  • Dă clic pentru a partaja pe Facebook(Se deschide în fereastră nouă)
  • Dă clic pentru a partaja pe LinkedIn(Se deschide în fereastră nouă)
  • Dă clic pentru a partaja pe Twitter(Se deschide în fereastră nouă)

Similare

Din categoria: SELinux Etichete: RHCSA, SELinux

Lasă un răspuns Anulează răspunsul

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Copyright © 2021 · Bobses