GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

Richten Sie die mehrstufige Authentifizierung für SSH unter Ubuntu 20.04 ein

SSH ist ein „Secure Shell Protocol“, das verwendet wird, um Remote-Linux-Systeme sicher über ein ungesichertes Netzwerk zu verbinden und zu verwalten. Es ist sehr nützlich für Systemadministratoren, um alltägliche Aufgaben auf dem Remote-Server auszuführen. Daher ist die Sicherung eines SSH-Servers ein wesentlicher Bestandteil jedes Systemadministrators.

Standardmäßig können Sie sich mit einem Passwort oder mit dem privaten Schlüssel mit SSH verbinden. Das heißt, es handelt sich nur um eine Ein-Faktor-Authentifizierung. Daher ist es eine gute Idee, eine Multi-Faktor-Authentifizierung im SSH-Server zu implementieren, um eine zusätzliche Sicherheitsebene hinzuzufügen. Bei der mehrstufigen Authentifizierung müssen Sie Ihr Systembenutzerkennwort und ein weiteres auf einem Mobilgerät generiertes Kennwort angeben. Dadurch wird die Sicherheit Ihres Servers erheblich verbessert.

In diesem Tutorial zeigen wir Ihnen, wie Sie die Multi-Faktor-Authentifizierung für SSH auf Ubuntu 20.04 VPS einrichten.

Voraussetzungen

  • Ein Ubuntu 20.04 VPS (wir verwenden unseren SSD 2 VPS-Plan)
  • Zugriff auf das Root-Benutzerkonto (oder Zugriff auf ein Administratorkonto mit Root-Rechten)

Schritt 1:Melden Sie sich beim Server an und aktualisieren Sie die Server-OS-Pakete

Melden Sie sich zunächst über SSH als Root-Benutzer bei Ihrem Ubuntu 20.04-Server an:

ssh root@IP_Address -p Port_number

Sie müssen „IP_Address“ und „Port_number“ durch die jeweilige IP-Adresse und SSH-Portnummer Ihres Servers ersetzen. Ersetzen Sie außerdem „root“ gegebenenfalls durch den Benutzernamen des Administratorkontos.

Bevor Sie beginnen, müssen Sie sicherstellen, dass alle auf dem Server installierten Ubuntu-Betriebssystempakete auf dem neuesten Stand sind. Sie können dies tun, indem Sie die folgenden Befehle ausführen:

apt-get update -y
apt-get upgrade -y

Schritt 2:Google Authenticator installieren

Wir werden Google Authenticator für die Multi-Faktor-Authentifizierung verwenden. Sie müssen also das Google Authenticator PAM-Modul auf Ihrem System installieren. Sie können es installieren, indem Sie den folgenden Befehl ausführen:

apt-get install libpam-google-authenticator -y

Führen Sie nach der Installation des Pakets den Google Authenticator mit dem folgenden Befehl aus:

google-authenticator

Während der Installation wird Ihnen folgende Frage gestellt:

Do you want authentication tokens to be time-based (y/n) y
Warning: pasting the following URL into your browser exposes the OTP secret to Google:
  https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/root@ubuntu2004%3Fsecret%3D4XXQ2QA6FRV72SDM2JWSZTQJE4%26issuer%3D

Drücken Sie y und drücken Sie Enter weitermachen. Auf dem folgenden Bildschirm sollte ein QR-Code angezeigt werden:

Beantworten Sie alle Fragen und drücken Sie Enter um den Vorgang wie unten gezeigt abzuschließen:

Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) y

By default, a new token is generated every 30 seconds by the mobile app.
In order to compensate for possible time-skew between the client and the server,
we allow an extra token before and after the current time. This allows for a
time skew of up to 30 seconds between authentication server and client. If you
experience problems with poor time synchronization, you can increase the window
from its default size of 3 permitted codes (one previous code, the current
code, the next code) to 17 permitted codes (the 8 previous codes, the current
code, and the 8 next codes). This will permit for a time skew of up to 4 minutes
between client and server.
Do you want to do so? (y/n) y

If the computer that you are logging into isn't hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting? (y/n) If the computer that you are logging into isn't hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting? (y/n) y

Schritt 3:Google Authenticator-Anwendung installieren

Als nächstes müssen Sie die Google Authenticator-Anwendung auf Ihrem Smartphone installieren. Öffnen Sie nach der Installation Google Authenticator auf Ihrem Handy und scannen Sie den obigen QR-Code. Sobald der QR-Code gescannt wurde, sollten Sie ein sechsstelliges Einmalpasswort auf Ihrem Telefon sehen, wie unten gezeigt:

Dieses Passwort läuft innerhalb von 30 Sekunden ab. Sie müssen also die Google Authenticator-Anwendung öffnen und ein neues Passwort sehen, um sich über SSH beim Ubuntu-Server anzumelden.

Sie können auch den geheimen Schlüssel, den Verifizierungscode und den Notfall-Scratch-Code in der obigen Ausgabe sehen. Es wird empfohlen, es zur späteren Verwendung an einem sicheren Ort aufzubewahren.

Your new secret key is: 4XXQ2QA6FRV72SDM2JWSZTQJE4
Your verification code is 423832
Your emergency scratch codes are:
  96469497
  84504151
  61871048
  79931657
  71052210

Schritt 4:Konfigurieren Sie SSH für die Verwendung von Google Authenticator

Als Nächstes müssen Sie auch SSH für die Verwendung von Google Authenticator konfigurieren. Sie können es konfigurieren, indem Sie die Datei /etc/ssh/sshd_config:

bearbeiten
nano /etc/ssh/sshd_config

Ändern Sie die folgenden Zeilen:

UsePAM yes
ChallengeResponseAuthentication yes

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den SSH-Dienst neu, um die Konfiguration zu übernehmen:

systemctl restart sshd

Als nächstes müssen Sie die Datei /etc/pam.d/sshd bearbeiten und PAM-Regeln für den SSH-Dienst definieren:

nano /etc/pam.d/sshd

Fügen Sie die folgende Zeile nach @include common-auth hinzu :

auth required pam_google_authenticator.so

Speichern und schließen Sie die Datei.

Schritt:5 Zwei-Faktor-Authentifizierung testen

An diesem Punkt ist Ihr SSH-Server jetzt mit Multi-Faktor-Authentifizierung konfiguriert. Es ist Zeit, es anzuschließen und zu testen.

Öffnen Sie auf dem Remote-System Ihr Terminal und melden Sie sich wie unten gezeigt über SSH bei Ihrem Server an:

ssh root@ssh-server-ip

Sie werden aufgefordert, Ihr Systemkennwort und den von Google Authenticator generierten Bestätigungscode anzugeben. Geben Sie Ihr Systempasswort ein, das in der Google Authenticator-App angezeigt wird, und drücken Sie Enter um sich wie unten gezeigt beim Server anzumelden:

Herzliche Glückwünsche! Ihr SSH-Server ist jetzt mit Multi-Faktor-Authentifizierung gesichert..

Natürlich müssen Sie die Multi-Faktor-Authentifizierung für SSH auf Ubuntu VPS nicht einrichten, wenn Sie einen unserer Managed Hosting-Dienste verwenden. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, die Multi-Faktor-Authentifizierung für SSH einzurichten auf Ubuntu, für Sie. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.

PS. Wenn Ihnen dieser Beitrag zur Einrichtung der Multi-Faktor-Authentifizierung für SSH auf Ubuntu gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Panels
  1. Ein einfaches BASH-Skript für die Ubuntu-Server-Nachinstallation

  2. So richten Sie WireGuard unter Ubuntu 22.04 ein

  3. So installieren und richten Sie einen sftp-Server in Ubuntu 20.04 ein

  4. So richten Sie SSH-Schlüssel unter Ubuntu 16.04 ein

  5. Ubuntu-Server für Dummies

So richten Sie die Multi-Faktor-Authentifizierung für SSH unter Linux ein

Richten Sie die SSH-Zwei-Faktor-Authentifizierung (2FA) auf dem Ubuntu-Server ein

So richten Sie die SSH-Zwei-Faktor-Authentifizierung unter Ubuntu 16.04 mit Google Authenticator ein

So richten Sie den Tegola Vector Tile Server unter Ubuntu 20.04 für OpenStreetMap ein

So aktivieren Sie den SSH-Server unter Ubuntu 22.04

Graylog-Überwachungsserver unter Ubuntu Linux für Überwachungsserver/-dienste