COMPUTERS EN ZO...

ExifJPG

Tags
Alle(7)
Fotobewerking(1)
Hardware(1)
Linux(5)
MySQL(1)
PHP(1)
Software(2)
Ubuntu(5)
Windows(2)


pagecounter



Linux miniserver met Intel Atom - 3

Ubuntu server beheren via de bash shell en SSH

Na de succesvolle installatie van Ubuntu server starten we het systeem opnieuw op en krijgen we een zogenaamde shell voorgeschoteld zoals in afbeelding 1.

Highslide JS
Afbeelding 1.
Als het systeem succesvol is geinstalleerd staat na opnieuw opstarten een shell met login prompt onderaan je scherm.

 

De standaard shell in de meeste Linux-distributies is BASH. De commando's die je kunt uitvoeren in de BASH-shell zijn erg krachtig, en zijn prima in scripts te gebruiken.

Om je server te beheren met enkel de BASH shell dien je je wel enigzins te verdiepen in de commando's die je kunt gebruiken. Kennis van de Engelse taal is hierbij erg handig. Om software te installeren/deinstalleren en de al geinstalleerde programma's te updaten maak je in Ubuntu gebruik van apt-get. Voor het bewerken van configuratiebestanden kun je gebruik maken van VIM, een eenvoudige text-editor.

Je kunt om veiligheidsredenen in Ubuntu niet als beheerder (root) inloggen. Je kunt opdrachten wel als beheerder uitvoeren door sudo voor je opdracht te typen. Het systeem zal dan om je beheerderswachtwoord vragen, waarna de opdracht wordt uitgevoerd. Aangezien Linux veel met rechten werkt, kun je als normale gebruiker weinig aan je systeeminstellingen wijzigen. Je zult sudo dus vaak gebruiken als je in de shell werkt.

De shell zoals je in afbeelding 1 ziet, kun je lokaal bedienen, dat wil zeggen met behulp van de monitor en het toetsenbord die zijn aangesloten op je linux-systeem, maar ook op afstand, via het lokale netwerk of via internet, met behulp van SSH. Tijdens de installatie van Ubuntu Server 9.04 op ons systeem hebben we SSH-server al mee-geinstalleerd, maar mocht het nog niet op je systeem hebben dan kun je het installeren met de volgende commando's:

sudo apt-get update
sudo apt-get install openssh-server

Via je thuisnetwerk kun je met een andere Linux-machine inloggen op je server met het commando ssh gevolgd door een spatie en het ip-adres van je server. Vanaf een computer met Windows kun je gebruikmaken van het programma PuTTY. Wil je je server via internet benaderen, dan moet je in ieder geval zorgen dat poort 22 (standaard voor SSH) in je router geforward wordt naar het ip-adres van je server. Dit brengt ons meteen bij het eerste stukje extra beveiliging van onze server. Dat iedereen nu via internet poort 22 onze server kan bereiken wil niet meteen zeggen dat de deur openstaat voor iedereen om in te loggen. Daarvoor heb je natuurlijk je gebruikersnaam en wachtwoord nodig. Zorg in ieder geval dat die niet makkelijk te raden zijn. Een gebruikersnaam als admin en een wachtwoord als P4ssw0rd zijn veel te voor de hand liggend, en gebruik natuurlijk het liefst ook geen combinatie van gebruikersnaam en wachtwoord die je al ergens anders in gebruik hebt. De reden waarom we hier voorzichtig moeten zijn is vanwege de vele brute-force attacks en dictionary attacks die op een server worden uitgevoerd. De server van marisan.nl wordt bijvoorbeeld tientallen keren per dag bestookt door scriptkiddies en wanna-be hackers. Per uur worden duizenden combinaties van gebruikersnamen en wachtwoorden op de SSH-server op poort 22 afgevuurd, en dat proces gaat 24 uur per dag door als je geen maatregelen neemt. Een van de beste maatregelen die je hiertegen kunt nemen is het installeren van het programma Fail2ban. Alle geslaagde en mislukte inlogpogingen worden door je Linux-systeem bijgehouden in een logfile, namelijk in /var/log/auth.log. Fail2ban houdt deze logfile continu in de gaten en grijpt in bij het vooraf ingestelde aantal mislukte inlogpogingen. Het ip-adres van waar de inlogpogingen kwamen wordt dan voor een bepaalde, instelbare tijd geblokkeerd. Meestal haakt de aanvaller dan af, zo niet, dan nog is de kans klein dat de attack slaagt, omdat er bijvoorbeeld maar drie inlogpogingen per halfuur kunnen worden gedaan voordat het ip-adres van de aanvaller weer geblokkeerd wordt. Fail2ban installeer je eenvoudig door middel van onderstaand commando:

sudo apt-get install fail2ban


Highslide JS
Afbeelding 2.
Installatie van Fail2ban

 

Standaard na installatie van Fail2ban wordt de SSH poort (22) beschermd. Na 6 mislukte inlogpogingen wordt het bijbehorende ip-adres voor 10 minuten geblokkeerd. Deze waarden kun je aanpassen in /etc/fail2ban/jail.conf.

[ssh]

enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

Bovenstaande code kun je vervangen door de volgende:

[ssh]

enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1800

Dit resulteert in een blokkering van het ip-adres na 3 ipv de standaard 6 mislukte inlog-pogingen, en de blokkering duurt 1800 seconden (30 minuten) ipv de standaard-instelling van 600 seconden (10 minuten). Let er wel op dat je zelf dan ook niet te vaak een typefout in je gebruikersnaam of wachtwoord moet maken, anders word je zelf ook geblokkeerd. :-)

In het vervolg van dit artikel, wat binnenkort verschijnt, installeren installeren we Gnome, een grafische desktop, voor mensen die liever een muis vasthouden...

5 oktober 2009 21:39 door Sander.


Tags:


Linux, Ubuntu


  

Er zijn nog geen reacties

Hier graag uw bericht




?
? ?
?

Powered by TalkBack