Introductie
Onze servers hebben een standaard template waarmee je je kunt aanmelden en de configuratie kunt afronden. Hoewel je met de standaard template wel op afstand kunt inloggen als beheerder, raden we je toch aan om de instructies van dit artikel te volgen zodat de veiligheid en bruikbaarheid van jouw server wordt verbeterd.
Vereisten
Aangezien we een kale server hebben, zijn er geen vereisten voor deze installatie. Je hoeft alleen het IP-adres and rootgegevens van jouw server te weten.
Stap 1: Log in als root
Jouw server is ingesteld zonder een grafische omgeving. Je moet inloggen met SSH om opdrachten op de server uit te voeren. Als je niet weet hoe je verbinding moet maken met je server dan kun je het artikel Leer hoe je via SSH verbinding kunt maken met je server volgen.
Stap 2: Maak een nieuwe gebruiker aan
We gaan een nieuwe gebruiker aanmaken, we gebruiken gebruikersnaam johnny. Mocht je een andere gebruiksnaam willen gebruiken dan kun je die van ons vervangen.
adduser johnny
Je krijgt een aantal vragen die je moet beantwoorden. Zo wordt je bijvoorbeeld gevraagd het wachtwoord (tweemaal) voor de nieuwe gebruiker op te geven. Beantwoord alle vragen en druk op “Enter” nadat je elke vraag hebt beantwoord.
Adding user `johnny' ... Adding new group `johnny' (1000) ... Adding new user `johnny' (1000) with group `johnny' ... Creating home directory `/home/johnny' ... Copying files from `/etc/skel' ... Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for johnny Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n]
Stap 3: Voeg de gebruiker toe aan de sudo groep
usermod -aG sudo johnny
Stap 4: Test logging in with the new user and become root
Je moet inloggen met de nieuwe aangemaakte gebruiker en eerst een root worden voordat je verder kan gaan met de volgende stappen. Vervang “johnny” door jouw nieuwe gebruikersnaam en x.x.x.x door het IP-adres van jouw server.
ssh [email protected]
De server vraagt nu om een wachtwoord, nadat je dit correct hebt ingevoerd zul je een opdrachtprompt zien.
[email protected]'s password:
...
...
...
johnny@hostname:~$
Je kunt nu root worden.
sudo -i
Het antwoord van de server moet er ongeveer zo uitzien:
[sudo] password for johnny: root@hostname:~#
Ga nu terug naar je account:
exit
Het antwoord van de server moet er ongeveer zo uitzien:
logout johnny@hostname:~$
Je kunt nu verder gaan met de volgende stappen!
Stap 5: Interactive root login uitschakelen met SSH
We raden aan om root met een wachtwoord uit te schakelen. De volgende configuratiewijzigingen moeten worden doorgevoerd:
Open eerst de SSH-serverconfiguratie met jouw favoriete teksteditor. Wij gebruiken nano:
sudo nano /etc/ssh/sshd_config
Vul je wachtwoord in als erom wordt gevraagd. Zoek (CTRL + W om het zoekvenster in nano te openen) voer het volgende commando uit:
PermitRootLogin yes
Verander de regel naar:
PermitRootLogin without-password
Sla het bestand op en sluit af met CTRL + X. Start daarna de SSH-daemon opnieuw op met:
sudo service ssh restart
Stap 6: Server updaten
Je gaat nu jouw server updaten. Update eerst catalogs:
sudo apt-get update && sudo apt-get -y dist-upgrade
Je moet af en toe wat vragen beantwoorden. Het is veilig om standaardantwoorden te geven door te drukken op “Enter”.
Stap 7: Tijdzone instellen
Wij gebruiken tijdzonde “Europe/Amsterdam” je kunt dit aanpassen. Bekijk hier de lijst met tijdzondes.
sudo rm -f /etc/localtime ; sudo ln -s /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime
Stap 8: Configurer een firewall
It’s advised to use a firewall to further secure your server. While an extensive firewall configuration is out of the scope of this document we advise at least the following steps: Allow SSH access:
We raden je aan om een firewall te gebruiken voor de beveiliging van jouw server. Hoewel een uitgebreide firewallconfiguratie niet echt wordt behandeld in deze tutorial, adviseren wij je om de volgende stappen uit te voeren: SSH-toegang toestaan:
sudo ufw allow OpenSSH
Output:
Rules updated Rules updated (v6)
Firewall inschakelen:
sudo ufw enable
Je wordt gevraagd of je verder wilt gaan. Antwoord y en druk “Enter”:
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Output:
Firewall is active and enabled on system startup
Je kunt de status van de firewall als volgt weergeven:
sudo ufw status
Output:
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6)
Wanneer je extra diensten installeert, is het belangrijk dat je niet vergeet om toegang toe te staan. Dit kun je doen door de firewall-instellingen aan te passen. Je kunt een lijst met beschikbare applicaties weergeven door het onderstaande commando uit te voeren:
sudo ufw app list
Output:
Available applications: OpenSSH
Stap 9: Reboot
Tijdens de updates wordt er vaak een kernelupdate geïnstalleerd die opnieuw opstarten vereist. Start de server opnieuw op met het volgende commando:
sudo reboot
Conclusie
Jouw server is nu beschermt tegen basis-inbraken. Gebruikers moeten een SSH-sleutel (geen wachtwoord) gebruiken om in te loggen. We hebben een aantal basisinstellingen uitgevoerd om te controleren of alles goed is geïnstalleerd. Veel plezier met jouw nieuwe serverinstallatie!
Geef een reactie