Nu meer dan ooit leven we in een wereld waar organisaties voortdurend worden bestookt met beveiligingsinbreuken die gemotiveerd zijn door de verwerving van zeer gevoelige en vertrouwelijke gegevens, die zeer waardevol zijn en zorgen voor een enorme financiële beloning.
Het is nogal verrassend dat ondanks het feit dat bedrijven een hoog risico lopen om te lijden onder een mogelijk verwoestende cyberaanval, de meeste bedrijven niet goed voorbereid zijn of eenvoudigweg de rode vlaggen over het hoofd zien, vaak met desastreuze gevolgen.
In 2016 leed Equifax een catastrofale gegevensinbreuk waarbij miljoenen zeer vertrouwelijke klantgegevens werden gestolen na een reeks beveiligingsfouten. Een gedetailleerd rapport gaf aan dat de inbreuk voorkomen had kunnen worden als het juiste beveiligingsmaatregelen waren geïmplementeerd door het beveiligingsteam van Equifax.
In feite werd maanden voor de inbreuk Equifax gewaarschuwd voor een mogelijke kwetsbaarheid in hun webportal die hun beveiliging zou compromitteren, maar helaas werd de waarschuwing genegeerd met ernstige gevolgen. Veel andere grote bedrijven zijn slachtoffer geworden van aanvallen, die blijven toenemen in complexiteit met elk voorbijgaand moment.
We kunnen niet genoeg benadrukken hoe cruciaal de beveiliging van uw Linux-systeem is. U bent misschien geen financiële instelling met een hoog profiel die een potentieel doelwit is voor inbreuken, maar dat betekent niet dat u uw waakzaamheid moet laten verslappen.
Beveiliging moet bovenaan uw lijst staan bij het instellen van uw Linux-server, vooral als deze verbonden zal zijn met internet en op afstand toegankelijk zal zijn. Het hebben van elementaire beveiligingsvaardigheden is essentieel om uw Linux-server te beschermen.
In deze gids richten we ons op enkele van de basisbeveiligingsmaatregelen die u kunt nemen om uw systeem te beschermen tegen indringers.
Cyberaanvalvectoren
Indringers zullen een verscheidenheid aan aanvalstechnieken gebruiken om toegang te krijgen tot uw Linux-server. Voordat we ingaan op enkele van de maatregelen die u kunt nemen om uw systeem te beschermen, laten we enkele van de veelvoorkomende aanvalsvectoren onderzoeken die een hacker kan gebruiken om systemen binnen te dringen.
1. Brute force-aanvallen
A brute-force attack is an attack where the hacker uses trial and error to guess the login credentials of the user. Usually, the intruder will use automated scripts to continuously gain entry until the right combination of the username and password is obtained. This kind of attack is most effective where weak & easily guessable passwords are used.
2. Zwakke referenties
Zoals eerder gesuggereerd, vormen zwakke referenties zoals korte en gemakkelijk te raden wachtwoorden zoals wachtwoord1234 een potentieel risico voor uw systeem. Hoe korter en minder complex een wachtwoord is, hoe groter de kans dat uw systeem wordt gecompromitteerd.
3. Phishing
Phishing is een sociale techniek waarbij de aanvaller het slachtoffer een e-mail stuurt die afkomstig lijkt te zijn van een legitieme instelling of iemand met wie u bekend bent of zaken doet.
Meestal bevat de e-mail instructies die het slachtoffer aanzetten om gevoelige informatie prijs te geven of bevat een link die hen naar een nep-site stuurt die zich voordoet als de site van het bedrijf. Zodra het slachtoffer probeert in te loggen, worden hun referenties door de aanvaller gevangen.
4. Malware
Malware staat voor kwaadaardige software. Het omvat een breed scala aan verraderlijke toepassingen zoals virussen, trojanen, wormen en ransomware die ontworpen zijn om snel te verspreiden en het slachtoffer’s systeem gijzelaar te nemen in ruil voor losgeld.
Dergelijke aanvallen kunnen verlammend zijn en het bedrijfsleven van een organisatie lamleggen. Sommige malware kan worden ingesmeerd in documenten zoals afbeeldingen, video’s, Word- of PowerPoint-documenten en verpakt in een phishing-e-mail.
5. DoS-aanvallen (DoS)
A DoS attack is an attack that limits or impacts the availability of a server or computer system. The hacker floods the server with traffic or ping packets that render the server inaccessible to users for prolonged durations.
A DDoS (Distributed Denial of Service) attack is a kind of DoS that employs multiple systems that flood a target with traffic rendered it unavailable.
6. SQL-injectieaanval
Een afkorting voor Structured Query Language, SQL is een taal die wordt gebruikt om met databases te communiceren. Het stelt gebruikers in staat om records in de database te maken, te verwijderen en bij te werken. Veel servers slaan gegevens op in relationele databases die SQL gebruiken voor interactie met de database.
Een SQL-injectieaanval maakt gebruik van een bekende SQL-kwetsbaarheid die de server ertoe brengt gevoelige database-informatie prijs te geven die het anders niet zou doen door kwaadaardige SQL-code in te spuiten. Dit vormt een enorme risico als de database persoonlijke gegevens opslaat zoals creditcardnummers, sociale zekerheidsnummers en wachtwoorden.
7. Man-in-the-Middle-Aanval
Algemeen afgekort als MITM, de man-in-the-middle aanval houdt in dat een aanvaller informatie tussen twee punten onderschept met als doel afluisteren of verkeer tussen de twee partijen aan te passen. Het doel is om op de hoogte te blijven van het slachtoffer, gegevens te corrumperen of gevoelige informatie te stelen.
Basis tips voor het beveiligen van uw Linux-server
Na het bekijken van de mogelijke ingangspoorten die een aanvaller kan gebruiken om uw systeem binnen te dringen, laten we enkele van de fundamentele maatregelen bekijken die u kunt nemen om uw systeem te beveiligen.
1. Lichamelijke veiligheid
Niet veel aandacht wordt besteed aan de fysieke locatie en veiligheid van uw server, echter, als u van plan bent uw server in een on-premise omgeving te hebben, is dit meestal waar u begint.
Het is belangrijk om ervoor te zorgen dat uw server veilig is opgeslagen in een datacenter met reservekrachtbron, redundant internetconnectiviteit en voldoende koeling. Toegang tot het datacenter moet beperkt zijn tot slechts gemachtigde personen.
2. Update uw systeemopslagplaatsen en pakketten
Zodra de server is opgesteld, is de eerste stap om de opslagplaatsen en applicatie-softwarepakketten als volgt bij te werken. Het bijwerken van het pakket maakt eventuele gaten in de bestaande versies van applicaties schoon.
Voor Ubuntu / Debian distributies:
$ sudo apt update -y $ sudo apt upgrade -y
Voor RHEL / CentOS distributies:
$ sudo yum upgrade -y
3. Schakel een firewall in
A firewall is an application that filters incoming and outgoing traffic. You need to install a robust firewall such as the UFW firewall and enable it to only allow the required services and their corresponding ports.
Bijvoorbeeld, u kunt deze installeren op Ubuntu met de opdracht:
$ sudo apt install ufw
Eens geïnstalleerd, schakel het als volgt in:
$ sudo ufw enable
Om een dienst zoals HTTPS toe te staan, voer de volgende opdracht uit;
$ sudo ufw allow https
Je kunt ook de bijbehorende poort toestaan, die 443 is.
$ sudo ufw allow 443/tcp
Vervolgens laad je opnieuw om de wijzigingen van kracht te laten worden.
$ sudo ufw reload
Om de status van je firewall te controleren, inclusief toegestane diensten en open poorten, voer je uit
$ sudo ufw status
4. Schakel onnodige diensten/poorten uit
Verder kun je overwegen om ongebruikte of onnodige diensten en poorten op de firewall uit te schakelen. Het hebben van meerdere poorten die niet worden gebruikt vergroot alleen maar het aanvalsoppervlak.
5. Beveilig SSH-protocol
De standaard SSH-instellingen zijn niet beveiligd, en dus zijn enkele aanpassingen nodig. Zorg ervoor dat de volgende instellingen worden afgedwongen:
- De rootgebruiker uitschakelen voor externe aanmelding.
- Schakel SSH-verificatie zonder wachtwoord in met behulp van SSH-publieke/private sleutels.
Voor het eerste punt bewerk je het /etc/ssh/sshd_config bestand en pas je de volgende parameters aan om er als volgt uit te zien.
PermitRootLogin no
Zodra je de rootgebruiker uitschakelt voor externe aanmelding, maak je een reguliere gebruiker aan en geef je sudo-rechten. Bijvoorbeeld.
$ sudo adduser user $ sudo usermod -aG sudo user
Om wachtwoordloze authenticatie in te schakelen, ga eerst naar een andere Linux-PC – bij voorkeur uw eigen PC – en genereer een SSH-sleutelpaar.
$ ssh-keygen
Kopieer vervolgens de openbare sleutel naar uw server
$ ssh-copy-id user@server-IP
Zodra u ingelogd bent, schakel zeker de wachtwoordauthenticatie uit door het /etc/ssh/sshd_config bestand aan te passen en de getoonde parameter te wijzigen.
PasswordAuthentication no
Let erop dat u uw ssh-privésleutel niet kwijtraakt, aangezien dit de enige manier is waarop u zich kunt aanmelden. Bewaar deze veilig en maak er bij voorkeur een back-up van in de cloud.
Sluit af met het opnieuw starten van SSH om de wijzigingen door te voeren
$ sudo systemctl restart sshd
Samenvatting
In een wereld met evoluerende cyberdreigingen moet beveiliging een hoge prioriteit hebben bij het opzetten van uw Linux-server. In deze gids hebben we enkele van de basale beveiligingsmaatregelen besproken die u kunt nemen om uw server te versterken. In het volgende onderwerp gaan we dieper in en bekijken we aanvullende stappen die u kunt nemen om uw server te harden.