Linux-systemen zijn door hun ontwerp beveiligd en bieden robuuste beheertools. Maar hoe goed een systeem ook is ontworpen, de beveiliging hangt af van de gebruiker.
Beginners doen er vaak jaren over om het beste beveiligingsbeleid voor hun machines te vinden. Daarom delen we deze essentiële Linux-verhardingstips voor nieuwe gebruikers zoals jij. Probeer ze eens.
1. Dwing sterk wachtwoordbeleid af
Wachtwoorden zijn de primaire verificatiemethode voor de meeste systemen. Of u nu een thuisgebruiker of een professional bent, het afdwingen van solide wachtwoorden is een must. Schakel eerst lege wachtwoorden uit. Je zult niet geloven hoeveel mensen ze nog gebruiken.
awk -F: '($ 2 == "") {print}' / etc / shadow
Voer de bovenstaande opdracht uit als root om te zien welke accounts lege wachtwoorden hebben. Als u iemand met een leeg wachtwoord vindt, moet u de gebruiker meteen vergrendelen. U kunt dit doen door het volgende te gebruiken.
passwd -l GEBRUIKERSNAAM
U kunt ook wachtwoordveroudering instellen om ervoor te zorgen dat gebruikers geen oude wachtwoorden kunnen gebruiken. Gebruik het chage-commando om dit vanaf uw terminal te doen.
chage -l GEBRUIKERSNAAM
Deze opdracht geeft de huidige vervaldatum weer. Gebruik de onderstaande opdracht om het wachtwoord na 30 dagen te laten verlopen. Gebruikers kunnen gebruik Linux-wachtwoordmanagers om online accounts te beveiligen.
Een veilige wachtwoordbeheerder voor Linux nodig? Deze apps zijn gemakkelijk te gebruiken en houden uw online wachtwoorden veilig.
chage -M 30 GEBRUIKERSNAAM
2. Maak een back-up van essentiële gegevens
Als u serieus bent over uw gegevens, maak dan regelmatig back-ups. Op deze manier kunt u de gegevens snel herstellen, zelfs als uw systeem crasht. Maar het kiezen van de juiste back-upmethode is cruciaal voor Linux-hardening.
Als je een thuisgebruiker bent, het klonen van de gegevens naar een harde schijf zou kunnen volstaan. Bedrijven hebben echter geavanceerde back-upsystemen nodig die snel herstel mogelijk maken.
3. Vermijd verouderde communicatiemethoden
Linux ondersteunt veel externe communicatiemethoden. Maar oudere Unix-services zoals telnet, rlogin en ftp kunnen ernstige beveiligingsproblemen opleveren. Dus probeer ze te vermijden. U kunt ze helemaal verwijderen om de bijbehorende beveiligingsproblemen te verminderen.
apt-get --purge verwijderen xinetd nis tftpd tftpd-hpa telnetd \
> rsh-server rsh-redone-server
Dit commando verwijdert een aantal veelgebruikte maar verouderde services van Ubuntu / Debian-machines. Als u een op RPM gebaseerd systeem gebruikt, gebruikt u in plaats daarvan het volgende.
yum wissen xinetd ypserv tftp-server telnet-server rsh-server
4. Beveiligde OpenSSH
Het SSH-protocol is de aanbevolen methode voor externe communicatie voor Linux. Zorg ervoor dat u uw OpenSSH-server (sshd) -configuratie beveiligt. Jij kan lees hier meer over het opzetten van een SSH-server.
Bewerk het /etc/ssh/sshd_config bestand om beveiligingsbeleid voor ssh in te stellen. Hieronder staan enkele algemene beveiligingsbeleidsregels die iedereen kan gebruiken.
PermitRootLogin no # schakelt root login uit
MaxAuthTries 3 # beperkt verificatiepogingen
PasswordAuthentication no # schakelt wachtwoordverificatie uit
PermitEmptyPasswords no # schakelt lege wachtwoorden uit
X11Forwarding no # schakelt GUI-verzending uit
DebianBanner no # verstoort de uitgebreide banner
AllowUsers *@XXX.X.XXX.0/24 # beperken gebruikers tot een IP-bereik
5. Beperk het gebruik van CRON
CRON is een robuuste taakplanner voor Linux. Hiermee kunnen beheerders plan taken in Linux met behulp van de crontab. Het is dus cruciaal om te beperken wie CRON-taken kan uitvoeren. U kunt alle actieve cronjobs voor een gebruiker achterhalen door de volgende opdracht te gebruiken.
crontab -l -u GEBRUIKERSNAAM
Controleer de vacatures voor elke gebruiker om erachter te komen of iemand CRON misbruikt. Misschien wilt u voorkomen dat alle gebruikers crontab gebruiken, behalve u. Voer hiervoor de volgende opdracht uit.
echo $ (whoami) >> /etc/cron.d/cron.allow
# echo ALL >> /etc/cron.d/cron.deny
6. Dwing PAM-modules af
Linux PAM (Pluggable Authentication Modules) biedt krachtige authenticatiefuncties voor apps en services. U kunt verschillende PAM-beleidsregels gebruiken om de login van het systeem te beveiligen. De onderstaande opdrachten beperken bijvoorbeeld het hergebruik van wachtwoorden.
# CentOS / RHEL
echo 'wachtwoord voldoende pam_unix.so use_authtok md5 shadow Remember = 5' >> \
> /etc/pam.d/system-auth
# Ubuntu / Debian
echo 'wachtwoord voldoende pam_unix.so use_authtok md5 shadow Remember = 5' >> \
> /etc/pam.d/common-password
Ze beperken het gebruik van wachtwoorden die in de afgelopen vijf weken zijn gebruikt. Er zijn veel meer PAM-beleidsregels die extra beveiligingslagen bieden.
7. Verwijder ongebruikte pakketten
Door ongebruikte pakketten te verwijderen, wordt het aanvalsoppervlak op uw computer verkleind. Daarom raden we u aan om zelden gebruikte pakketten te verwijderen. U kunt alle momenteel geïnstalleerde pakketten bekijken met de onderstaande opdrachten.
yum lijst geïnstalleerd # CentOS / RHEL
apt list - geïnstalleerd # Ubuntu / Debian
Stel dat u het ongebruikte pakket vlc wilt verwijderen. U kunt dit doen door de volgende opdrachten als root uit te voeren.
yum verwijder vlc # CentOS / RHEL
apt verwijder vlc # Ubuntu / Debian
8. Beveiligde kernelparameters
Een andere effectieve manier van Linux-hardening is het beveiligen van de kernelparameters. U kunt deze parameters configureren met sysctl of door het configuratiebestand te wijzigen. Hieronder staan enkele veelvoorkomende configuraties.
kernel.randomize_va_space = 2 # willekeurige adresbasis voor mmap, heap en stack
kernel.panic = 10 # herstart na 10 seconden na een kernel panic
net.ipv4.icmp_ignore_bogus_error_responses # beschermt slechte foutmeldingen
net.ipv4.ip_forward = 0 # schakelt IP-forwarding uit
net.ipv4.icmp_ignore_bogus_error_responses = 1 # negeert ICP-fouten
Dit zijn slechts enkele basisconfiguraties. U zult met ervaring verschillende manieren van kernelconfiguratie leren.
9. Configureer iptables
Linux-kernels bieden robuuste filtermethoden voor netwerkpakketten via de Netfilter API. U kunt iptables gebruiken om met deze API te communiceren en aangepaste filters voor netwerkverzoeken instellen. Hieronder staan enkele basisregels voor iptables voor op beveiliging gerichte gebruikers.
-A INPUT -j REJECT # alle inkomende verzoeken weigeren
-A FORWARD -j WEIGERING # doorsturen van verkeer weigeren
-EEN INGANG -i lo -j ACCEPTEREN
-A OUTPUT -o lo -j ACCEPT # verkeer op localhost toestaan
# ping-verzoeken toestaan
-A OUTPUT -p icmp -j ACCEPT # laat uitgaande pings toe
# sta tot stand gebrachte / gerelateerde verbindingen toe
-EEN INGANG -m staat --staat GEVESTIGD, GERELATEERD -j ACCEPTEREN
-EEN UITGANG -m staat --staat GEVESTIGD, GERELATEERD -j ACCEPTEREN
# DNS-lookups toestaan
-EEN UITGANG -p udp -m udp --dport 53 -j ACCEPTEREN
# staat http / https-verzoeken toe
-A UITGANG -p tcp -m tcp --dport 80 -m status --state NIEUW -j ACCEPTEREN
-A UITGANG -p tcp -m tcp --dport 443 -m status --state NIEUW -j ACCEPTEREN
# SSH-toegang toestaan
-EEN INGANG -p tcp -m tcp --dport 22 -j ACCEPTEREN
-EEN UITGANG -p tcp -m tcp --dport 22 -j ACCEPTEREN
10. Monitor logboeken
U kunt logboeken gebruiken om uw Linux-machine beter te begrijpen. Uw systeem slaat verschillende logbestanden op voor apps en services. We schetsen hier de essentiële.
- /var/log/auth.log registreert autorisatiepogingen
- /var/log/daemon.log registreert apps op de achtergrond
- / var / log / debug logt foutopsporingsgegevens in
- /var/log/kern.log registreert kerneldata
- / var / log / syslog registreert systeemgegevens
- / var / log / faillog logs mislukte aanmeldingen
Beste Linux-verhardingstips voor beginners
Het beveiligen van een Linux-systeem is niet zo moeilijk als u denkt. U kunt de beveiliging versterken door enkele van de tips te volgen die in deze handleiding worden genoemd. Je leert meer manieren om Linux te beveiligen terwijl je ervaring opdoet.
Gebruikt u een Chromebook, maar maakt u zich zorgen over privacy? Pas deze 7 instellingen in de Chrome-browser op Chrome OS aan om online veilig te blijven.
- Linux
- Computer beveiliging
- Linux
- SSH
Rubaiat is een afgestudeerde CS met een sterke passie voor open-source. Behalve dat hij een Unix-veteraan is, houdt hij ook van netwerkbeveiliging, cryptografie en functioneel programmeren. Hij is een fervent verzamelaar van tweedehands boeken en heeft een oneindige bewondering voor classic rock.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve aanbiedingen!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.