Hulpartikel overzicht

Hulpartikel

Wat is Selinux?

Security-Enhanced Linux, of SELinux, is een kernel security module, om de beveiliging van een Linux-systeem te verbeteren. Het wordt standaard geïnstalleerd op CentOS- en Fedora-installaties.

SELinux is geen firewall, maar heeft er wel raakvlak mee. Een firewall controleert verkeer van en naar een computer op een netwerk/het internet. SELinux controleert/beheert poort-toegang van programma's en is vooral bedoelt als extra aanvulling naast een firewall. Dit betekent als beheerder vooral dat als je bijvoorbeeld je SSH-poort aanpast, ook in SELinux die poort open moet staan voor de SSH-service.

Je kunt SELinux bijvoorbeeld gebruiken om network services te beperken tot een bepaalde port, of je Apache server tot port 80.


De status van SELinux controleren

Je controleert de status van SELinux met het commando:

sestatus

De output ziet er als volgt uit:

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      31

De belangrijkste zaken om te weten van dit overzicht zijn:

  • Status: Geeft aan of SELinux aan staat (enabled), uit staat (disabled), of aan staat en waarschuwingen geeft, maar geen actie onderneemt (permissive).
  • root directory: In deze map vind je de configuratiebestanden van SELinux
  • Current mode: Toont enforcing als SELinux zijn policies uitvoert, of permissive als SELinux enkel waarschuwingen geeft.

SELinux aan- of uitzetten

Je kunt SELinux op twee manieren aan- of uitzetten:

  • Tijdelijk, tot je je VPS herstart. Dit doe je met het commando:
    setenforce permissive
    De enige opties hier zijn permissive of enforcing, waarbij in beide gevallen SELinux waarschuwingen geeft, maar bij permissive geen actie onderneemt.
     
  • Permanent, maar hiervoor is een herstart van je VPS nodig. Open het config-bestand:
    nano /etc/selinux/config
    
    Pas de regel SELINUX=enforcing aan. Je hebt de keuze uit enforcing, permissive, of disabled. Sla de wijzigingen daarna op en sluit het bestand (ctrl + x > y > enter).

Open poorten controleren

Je controleert de open poorten met het commando:

semanage port -l

Specifieke poorten

De output is vaak vrij groot. Als je wil weten of een specifieke poort open staat gebruik je:

semanage port -l | grep poortnummer

Vervang hier 'poortnummer' door het nummer van de poort die je daadwerkelijk wil controleren.


Specifiek type

Je kunt ook direct op poort-type (i.e. een specifiek programma/service) controleren met het commando:

semanage port -l | grep -w ssh_port_t

Waarbij je ssh vervangt door de gewenste service/software naam, bijvoorbeeld http_port_t


Poorten openen of dichtzetten

SELinux is bedoelt om specifiek de toegang van software te beheren. Wanneer je dus bij SELinux spreekt over poorten openen, gaat het om software/services toegang geven tot een poort.


 

Poorten openen

Je zet een poort open in SELinux met onderstaand commando, waarbij je ssh vervangt door de naam van de software/service (e.g. http_port_t) en 12345 door het daadwerkelijke poortnummer dat je open wil zetten.

semanage port --add -t ssh_port_t -p tcp 12345
  • --add voegt de poort toe
  • -t geeft het poort type aan, in dit voorbeeld ssh_port_t
  • -p tcp specificeert het tcp protocol
  • 12345 het poortnummer, gebruik de syntax 1234-1238 om een range te specificeren

Poorten sluiten

Poorten die onderdeel zijn van de SELinux policy, bijvoorbeeld poort 22, kun je niet sluiten. Overige poorten (e.g. zelf toegevoegde poorten) zet je dicht met het commando:

semanage port -d -t ssh_port_t -p tcp 12345

Verander hier ssh_port_t naar het daadwerkelijke poort type, bijvoorbeeld http_port_t en het poortnummer 12345 naar de gekozen poort.


 

Mocht je aan de hand van dit artikel nog vragen hebben, aarzel dan niet om onze supportafdeling te benaderen. Je kunt hen bereiken via de knop 'Neem contact op' onderaan deze pagina.

Wil je dit artikel met andere gebruikers bespreken, laat dan vooral een bericht achter onder 'Reacties'.

 

Heb je ook een goed idee?

Stuur jouw idee in! Met genoeg stemmen komt jouw idee op onze wishlist!

Heeft dit artikel je geholpen?

Maak een account aan of log in om een beoordeling achter te laten.

Reacties

Maak een account aan of log in om een reactie te plaatsen.

Kom je er niet uit?

Ontvang persoonlijke hulp van onze supporters

Neem contact op