CentOS auf VPS installieren
Wir zeigen dir Schritt für Schritt wie du CentOS auf einem VPS installieren kannst. Erfahre jetzt mehr!
Inhaltsverzeichnis
- 1. CentOS 8 installieren
- 2. VPS starten
- 3. Per SSH mit deinem VPS verbinden
- 4. Programme updaten
- 5. Benutzer erstellen
- 6. Texteditor nano installieren
- 7. SSH Port ändern und root Login deaktivieren
- 8. Zwischen den Benutzern wechseln
- 9. UFW Firewall installieren und einrichten
- 10. Server gegen Brute Force Angriffe absichern
Hinweis
Einige Screenshots zeigen das Backend unseres Schwesterunternehmens dogado. Die gezeigten Schritte können jedoch auch im easyname-Backend durchgeführt werden.
1. CentOS 8 installieren
Im ersten Schritt wollen wir auf unseren VPS CentOS 8 64 bit installieren. Dazu im easyname Login unter „Server“ und klickst auf „Login“, um zum easyname-Cloudpit zu gelangen. Nach dem Login klickst du auf die „Wolke“ und wählst „Übersicht“ aus.
![Cloud Server im Cloudpit von dogado](https://blog-static.easyname.com/2022/03/07081523/CentOS-001.png)
Nun siehst du all deine VPS. Hier wählst du nun den VPS aus, auf dem du CentOS 8 installieren möchtet.
![Übersicht der vServer](https://blog-static.easyname.com/2022/03/07081527/CentOS-002-1030x329.png)
Klicke anschließend auf das aktuelle Betriebssystem deines Servers. Bei mir ist dies in dem Fall „AlmaLinux 8 / 64 bit“.
![Betriebssystem des vServer](https://blog-static.easyname.com/2022/03/07081534/CentOS-003.png)
Nun solltest du folgendes sehen:
![Betriebssystem-Einstellungen](https://blog-static.easyname.com/2022/03/07081539/CentOS-004-1030x383.png)
Wähle nun CentOS 8 aus der Liste aus.
![CentOS 8 als Betriebssystem auswählen](https://blog-static.easyname.com/2022/03/07081546/CentOS-005.png)
Nachdem du CentOS gewählt hast, gibst du noch ein Kennwort ein. Dies wird später dein root Kennwort.
![root Kennwort eingeben](https://blog-static.easyname.com/2022/03/07081553/CentOS-006.png)
Nun klickst du auf „Betriebssystem installieren“. Du solltest dann folgende Meldung erhalten, die du mit „Ja“ bestätigst.
![Betriebssystem neu installieren](https://blog-static.easyname.com/2022/03/07081600/CentOS-007.png)
Nun sollte bei dir folgende Meldung erscheinen. Dieser Vorgang dauert nun einige Minuten.
![Cloud Server wird neu installiert](https://blog-static.easyname.com/2022/03/07081604/CentOS-008-1030x409.png)
Du kannst wieder oben auf die „Wolke“ klicken. Hier siehst du die Übersicht deiner Server. In dieser Übersicht sollte dann stehen „Betriebssystem wechseln“. Du musst die Seite öfter dann mit „F5“ aktualisieren.
![Status: Betriebssystem wechseln](https://blog-static.easyname.com/2022/03/07081612/CentOS-009-1030x386.png)
Nach kurzer Zeit sollte es dann so aussehen:
![Status: gestoppt](https://blog-static.easyname.com/2022/03/07081620/CentOS-010-1030x280.png)
2. VPS starten
Nach der Installation ist deinVPS noch gestoppt. Um ihn zu starten, klickst du auf deinen Server und anschließend auf den „grünen Pfeil“.
![vServer starten](https://blog-static.easyname.com/2022/03/07081626/CentOS-011-1030x159.png)
Warte nun einige Sekunden. Anschließend solltest du folgendes sehen:
![vServer ist gestartet](https://blog-static.easyname.com/2022/03/07081633/CentOS-012-1030x151.png)
3. Per SSH mit deinem VPS verbinden
Nachdem du deinen Server installierst und gestartet hast, wollen wir uns das erste Mal damit verbinden. Dazu benötigst du einen SSH Client. Ein kostenloser, beliebter SSH Client ist PuTTy. Klicke auf „here“.
![PuTTy Download](https://blog-static.easyname.com/2022/03/07081639/CentOS-013-1030x177.png)
Anschließend wählst du dir den 32bit oder 64bit Installer aus.
![PuTTy Version auswählen](https://blog-static.easyname.com/2022/03/07081645/CentOS-014-1030x336.png)
Starte nun Putty und gib bei „Host Name“ die IP an, welche dir das easyname Cloudpit anzeigt. Der Port ist hier 22.
![Hostname und Port eingeben](https://blog-static.easyname.com/2022/03/07081650/CentOS-015.png)
IP eures Servers:
![IP-Adresse des Servers](https://blog-static.easyname.com/2022/03/07081657/CentOS-016.png)
Wenn du dich bereits vor der Neuinstallation schon mal mit dem Server verbunden hast, dann solltest du folgende Meldung bekommen. Dies ist normal. Klickt hier auf „ja“ um dich mit dem Server zu verbinden.
![PuTTy Security Alert](https://blog-static.easyname.com/2022/03/07081701/CentOS-017.png)
Gib nun als Nutzername „root“ ein und dein eben gewähltes Kennwort. Nach erfolgreichem Login siehst du folgendes:
![Nutzername und Kennwort eingeben](https://blog-static.easyname.com/2022/03/07081706/CentOS-018.png)
4. Programme updaten
Nun können wir ein Update aller bereits installierten Programme durchführen. Gib dazu folgendes ein. Durch diesen Befehl werden dir später alle verfügbaren Updates angezeigt.
yum check-update
![Updates anzeigen lassen](https://blog-static.easyname.com/2022/03/07081712/CentOS-019.png)
Zum Installieren der Updates gibst du nun folgendes ein:
yum -y update
Nun werden alle Updates installiert. Dieser Vorgang kann je nach Anzahl der Updates einige Minuten dauern.
![Updates installieren](https://blog-static.easyname.com/2022/03/07081718/CentOS-020.png)
5. Benutzer erstellen
Nun wollen wir uns neben unserem Benutzer „root“ noch einen weiteren Benutzer erstellen. Gib dazu folgendes ein:
adduser <Name>
Mein Benutzer soll z.B. „dogado“ heißen. Also gebe ich folgendes ein:
adduser dogado
![User hinzufügen](https://blog-static.easyname.com/2022/03/07081724/CentOS-021.png)
Nun musst du noch ein Kennwort für diesen Benutzer vergeben. Dazu gibst du folgendes ein:
passwd <Benutzer Name>
In meinem Fall also:
passwd dogado
Nun gibst du dein Kennwort zwei Mal ein.
![Kennwort zwei Mal eingeben](https://blog-static.easyname.com/2022/03/07081730/CentOS-022.png)
6. Texteditor nano installieren
Nun installieren wir uns noch einen Texteditor, welchen wir später zum Anpassen einiger Einstellungen benötigen. Gib dazu folgendes ein:
yum -y install nano
![Texteditor installieren](https://blog-static.easyname.com/2022/03/07081736/CentOS-023-1030x513.png)
7. SSH Port ändern und root Login deaktivieren
Nun wollen wir noch unseren SSH Port ändern. Dies ist nützlich, da dieser normalerweise immer auf Port 22 läuft. Im Internet gibt es viele automatische Scanner, welche genau diesen Port scannen. Indem wir diesen also abändern, werden wir bei diesen automatischen Scans nicht erkannt. Ebenfalls wollen wir noch den root Login deaktivieren. Dies bedeutet, dass sich der Benutzer „root“ später nicht mehr direkt per SSH anmelden kann. Dies gibt uns zusätzliche Sicherheit, da so ein Angreifer sich erst als Benutzer Zugang zu unserem Server verschaffen muss und dann erst Zugang zu unserem root Nutzer bekommen kann, wenn er das root Kennwort besitzt. Um die Änderungen durchzuführen, gibst du nun folgenden Befehl ein:
nano /etc/ssh/sshd_config
7.1 Port ändern
Dazu änderst du folgende Zeile ab:
#Port 22
Bei mir soll SSH auf Port 2222 bereitgestellt werden. Also gebe ich folgendes ein:
Port 2222
![Port ändern](https://blog-static.easyname.com/2022/03/07081743/CentOS-024.png)
7.2 Root Login verbieten
Dies kannst du nur machen, wenn du in Schritt 5 einen neuen Benutzer erstellt hast. Hast du keinen neuen Benutzer erstellt, so kannst du dich später nicht mehr anmelden. Scrolle nun ganz ans Ende der Datei. Dort findest du folgenden Eintrag:
PermitRootLogin yes
Dies änderst du auf folgendes ab:
PermitRootLogin no
![Root-Login verbieten](https://blog-static.easyname.com/2022/03/07081749/CentOS-025.png)
Anschließend kannst du mit „STRG+O“ die Datei speichern und mit „STRG+X“ das Programm beenden.
7.3 SSH Dienst neu starten
Nun müsst ihr noch den SSH Dienst neu starten, damit die Änderungen übernommen werden. Gib dazu folgendes ein:
systemctl restart sshd.service
7.4 Per SSH verbinden
Nun starten wir eine zusätzliche Putty Sitzung. Lass deine aktuelle Konsole noch offen! Dies ist wichtig, falls du Fehler gemacht haben solltest, da du sonst keinen Zugriff mehr auf deinen Server hast. Gib nun folgendes bei Putty ein:
![Host Name / IP Adesse und Port eingeben](https://blog-static.easyname.com/2022/03/07081753/CentOS-026.png)
Wichtig ist, dass ihr hier euren „neuen SSH Port“ angibt. Bei mir erscheint nun wieder eine Meldung, dass sich der Server verändert hat. Dies bestätige ich mit „Ja“.
![PuTTY Security Alert](https://blog-static.easyname.com/2022/03/07081759/CentOS-027.png)
Melde dich nun mit deinem neuen Benutzer aus Schritt 5 an.
![Mit neuem Bnutzer anmelden](https://blog-static.easyname.com/2022/03/07081804/CentOS-028.png)
8. Zwischen den Benutzern wechseln
Um von deinem Nutzer auf den Benutzer „root“ zu wechseln, gibst du einfach „su“ ein, gefolgt von dem Root Kennwort.
![Zwischen Benutzern wechseln](https://blog-static.easyname.com/2022/03/07081810/CentOS-029.png)
Anhand der „#“ siehst du, dass ihr nun „root“ seid.
Um vom Benutzer root zu deinem neu erstellten Benutzer zu wechseln, gibst du folgendes ein:
su <Nutzername>
In meinem Fall also
su dogado
![Zu neu erstelltem Benutzer wechseln](https://blog-static.easyname.com/2022/03/07081815/CentOS-030.png)
Hierbei musst du kein Kennwort eingeben.
9. UFW Firewall installieren und einrichten
9.1 Installieren
Nun wollen wir auf unserem CentOS VPS noch eine Firewall installieren. Die nachfolgenden Befehle führe ich als root aus. Gib nun folgendes ein:
yum -y install epel-release
![Firewall für CentOS installieren](https://blog-static.easyname.com/2022/03/07081820/CentOS-031-1030x485.png)
Jetzt haben wir das benötigte Repository installiert. Anschließend können wir UFW installieren. Gib dazu folgendes ein:
yum -y install ufw
![UFW installieren](https://blog-static.easyname.com/2022/03/07081828/CentOS-032-1030x600.png)
9.2 aktuell genutzte Ports anzeigen
Nach der Installation schauen wir uns alle aktuell genutzten Ports an. Dies ist wichtig, da du diese Ports gegeben falls später wieder freigeben musst. Gib dazu folgenden Befehl ein:
ss -nptl
![aktuell genutze Ports anzeigen lassen](https://blog-static.easyname.com/2022/03/07081836/CentOS-033-1030x99.png)
Bei mir sieht die Ausgabe so aus:
Dies bedeutet, dass folgende Ports genutzt werden:
- 25: SMTP
- 80: Webserver
- 2222: SSH
- 111: RPC
9.3 UFW Grundeinstellungen
Nun legen wir fest, dass wir grundsätzliche alle eingehen Verbindungen blockieren wollen. Dazu gibst du folgendes ein:
ufw default deny incoming
Dies sollte dann so aussehen:
![ufw default deny incoming](https://blog-static.easyname.com/2022/03/07081842/CentOS-034.png)
Nun haben wir auch einige Standard-Einstellungen gesetzt bekommen. Diese können wir uns nun anzeigen lassen. Gib dazu einfach folgendes ein
ufw status
Nun sollötest du folgendes sehen:
![ufw status](https://blog-static.easyname.com/2022/03/07081845/CentOS-035.png)
Ich lösche hier meinen SSH Port, da es sich auf den Port 22 bezieht. Wir nutzen jedoch einen anderen Port (2222). Dazu gebe ich folgendes ein:
ufw delete 3
ufw delete 1
So sieht dies bei mir aus:
![ufw delete](https://blog-static.easyname.com/2022/03/07081849/CentOS-036.png)
Nun können wir uns unsere Firewall Regeln erneut anschauen. Dazu gibt hier wieder folgendes ein
ufw status
![ufw status](https://blog-static.easyname.com/2022/03/07081853/CentOS-037.png)
Jetzt siehst du, dass unsere SSH Einträge entfernt wurden. Die beiden letzten Einträge benötigst du, damit dein Server Webseiten Namen auflösen kann.
9.4 Ports freigeben
Nun erlauben wir also die aktuell genutzten Ports, damit unser Server später wieder korrekt funktioniert. Den Port 111 gebe ich hier nicht frei, da ich diese Funktion nicht benötige. Gib dazu folgendes ein:
ufw allow 25
ufw allow 80
ufw allow 2222
Für jeden Port wird nun eine Regel angelegt.
![Regel für jeden Port](https://blog-static.easyname.com/2022/03/07081857/CentOS-038.png)
Nun können wir uns wieder eine Übersicht aller Regeln anschauen. Gib dazu folgendes ein:
ufw status
So sieht dies bei mir aus:
![Regel für jeden Port](https://blog-static.easyname.com/2022/03/07081901/CentOS-039.png)
9.5 UFW starten / beenden
Du kannst die ufw Firewall mit folgenden Befehlen starten bzw. beenden: Starten der Firewall
ufw enable
Beenden der Firewall
ufw disable
Wenn du die Firewall startest, erscheint folgende Meldung. Diese musst du mit „y“ bestätigen.
![Meldung nach Start der Firewall](https://blog-static.easyname.com/2022/03/07081906/CentOS-040.png)
9.6 Status der Firewall anzeigen
Du kannst dir mittels folgenden Befehls den Status anzeigen lassen. So erfährst du, ob ufw aktiviert ist und welche Regeln aktuell aktiv sind.
ufw status
![Status der Firewall anzeigen](https://blog-static.easyname.com/2022/03/07081910/CentOS-041.png)
10. Server gegen Brute Force Angriffe absichern
Euer Server wird als Teil des Internets regelmäßig von Bots „angegriffen“. Dies bedeutet, dass Angreifer versuchen sich Zugang per SSH auf deinen Server zu verschaffen. Daher haben wir bereits den SSH Port angepasst. Ein Angreifer findet jedoch auch ohne Probleme deinen frei gewählten SSH Port heraus. Daher wollen wir nun die Anzahl der Versuche der Passworteingabe beschränken. Dies bedeutet, dass man später nur beispielsweise 5 Versuche in 30 Minuten hat und danach für einen gewissen Zeitraum gebannt wird. Somit wird es für einen Angreifer viel schwerer Zugang zu deinem Server zu bekommen. Das Tool hierfür ist „fail2ban“. Dies installieren wir mit folgendem Befehl:
yum -y install fail2ban
![fail2ban installieren](https://blog-static.easyname.com/2022/03/07081916/CentOS-042-1030x764.png)
Anschließend erstellen wir uns eine Konfigurationsdatei:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Diese öffnen wir nun
nano /etc/fail2ban/jail.local
Wenn du nun etwas nach unten scrollst, solltest du folgende Einträge finden:
![Einträge aus jail.local](https://blog-static.easyname.com/2022/03/07081924/CentOS-043.png)
Standardmäßig ist hier eingestellt, dass man 5 Versuche innerhalb von 10 Minuten hat. Wenn man also 5x innerhalb von 10 Minuten das Passwort eingibt, wird man für 10 Minuten gebannt. Diese Werte kannst du beliebig anpassen.
Scrolle nun noch weiter nach unten, bis du folgendes siehst:
![JAILS - SSH servers](https://blog-static.easyname.com/2022/03/07081929/CentOS-044.png)
Wir wollen nun unseren SSH Dienst absichern. Dazu schreiben wir in den Bereich „sshd“ folgendes:
enabled = true
Anschließend ändern wir noch den Port auf unseren veränderten SSH Port ab. Pass also folgendes an:
port = 2222
So sieht dann meine Konfiguration aus:
![Konfiguration nach Portänderung](https://blog-static.easyname.com/2022/03/07081934/CentOS-045.png)
Anschließend kannst du mit „STRG+O“ die Datei speichern und mit „STRG+X“ das Programm beenden. Nun müssen wir „fail2ban“ noch neu starten, damit die Änderungen übernommen werden. Gib dazu folgendes ein:
systemctl restart fail2ban.service
Nun können wir uns den aktuellen Status von fail2ban anschauen. Dazu gibst du folgendes ein:
service fail2ban status
Hier sehen wir nun, dass fail2ban korrekt läuft.
![fail2ban läuft korrekt](https://blog-static.easyname.com/2022/03/07081939/CentOS-046.png)
Ebenfalls kannst du dir noch die Log Dateien anschauen. Dort finden wir noch weitere Informationen. Gib einfach folgendes ein:
cat /var/log/fail2ban.log
Hier sehen wir auch, dass unser Schutz „sshd“ aktiviert ist und wie die genauen „Bannzeiten“ sind.
![Aktiver Schutz und Bannzeiten sind zu sehen](https://blog-static.easyname.com/2022/03/07081945/CentOS-047.png)
easyname ist ein erfolgreicher und bekannter österreichischer Anbieter von Cloud-Services, Domains sowie Webhosting bis hin zur Server-Infrastruktur und gehört seit 2020 zur dogado group.
Das Unternehmen ist seit 2006 in Österreich erfolgreich am Markt und inzwischen auch in vielen anderen Ländern weltweit tätig. Sowohl das Team als auch die gehosteten Daten befinden sich in Österreich.
easyname liegt die Datensicherheit besonders am Herzen und stellt daher zu jedem Hosting-Paket auch kostenlose SSL-Zertifikate zur Verfügung. Mit intuitiven Tools zur Erstellung von Websites und Webshops und mit Easy Install Apps wie WordPress, Joomla oder PrestaShop können alle easyname-Kunden schnell in die Online-Welt einsteigen.