GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So sichern Sie SSH mithilfe der Zwei-Faktor-Authentifizierung unter Ubuntu 16.04 LTS

In diesem Tutorial zeigen wir Ihnen, wie Sie SSH mit Zwei-Faktor-Authentifizierung unter Ubuntu 16.04 LTS sichern. Für diejenigen unter Ihnen, die es nicht wussten, Sichern von SSH mit Zwei-Faktor-Authentifizierung mit Die zweistufige Verifizierung von Google Authenticator (auch bekannt als Zwei-Faktor-Authentifizierung, abgekürzt TFA) ist ein Prozess, der zwei Phasen umfasst, um die Identität einer Entität zu überprüfen, die versucht, auf Dienste in einem Computer oder in einem Netzwerk zuzugreifen Multi-Faktor-Authentifizierung, die möglicherweise nur einen der drei Authentifizierungsfaktoren (einen Wissensfaktor, einen Besitzfaktor und einen Vererbungsfaktor) für beide Schritte umfasst.

Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich werde Ihnen Schritt für Schritt das sichere SSH mit Zwei-Faktor-Authentifizierung auf einem Ubuntu 16.04 (Xenial Xerus)-Server zeigen.

Voraussetzungen

  • Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Ubuntu 16.04 und jede andere Debian-basierte Distribution wie Linux Mint.
  • Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
  • SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
  • Ein non-root sudo user oder Zugriff auf den root user . Wir empfehlen, als non-root sudo user zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.

Sicheres SSH mit Zwei-Faktor-Authentifizierung auf Ubuntu 16.04 LTS

Schritt 1. Stellen Sie zunächst sicher, dass alle Ihre Systempakete auf dem neuesten Stand sind, indem Sie den folgenden apt-get ausführen Befehle im Terminal.

sudo apt-get update
sudo apt-get upgrade

Schritt 2. Google Authenticator installieren.

Führen Sie den folgenden Befehl aus, um das Paket unter Ubuntu zu installieren:

apt-get install libpam-google-authenticator

Der nächste Schritt besteht darin, den Verifizierungscode zu erhalten. Es ist ein sehr einfacher Befehl, den Verifizierungscode und die Rubbelcodes zu erhalten, indem Sie einfach einfache Fragen des Servers beantworten, die er stellen wird Sie können diesen Schritt ausführen, indem Sie den folgenden Befehl ausführen:

google-authenticator

Sie werden aufgefordert, einige Fragen zu beantworten; beantworten Sie die ersten beiden Fragen mit Ja (y):

Do you want authentication tokens to be time-based (y/n) y

In Ihrem Terminal wird ein großer QR-Code generiert. Sie können den Code mit der Authentifizierungsanwendung auf Ihrem Android-/iOS-/Windows-Telefon oder -Tablet scannen oder das Geheimnis eingeben Schlüssel, der auf dem Bildschirm generiert wird.

Notfall-Scratch-Codes werden ebenfalls generiert. Sie können diese Codes zur Authentifizierung verwenden, falls Sie Ihr Mobilgerät verlieren:

Your emergency scratch codes are:
80461001
68335920
89765548
12485672
11145603

Speichern Sie die Authentifizierungseinstellungen für den Root-Benutzer, indem Sie die nächste Frage mit JA beantworten:

Do you want me to update your "/root/.google_authenticator" file (y/n) y

Als nächstes können Sie den Authenticator so konfigurieren, dass er einmalige Passwörter generiert. In den letzten 30 Sekunden können alle generierten Passwörter einmal verwendet werden. Antworten Sie mit y, um die Datei zu erstellen die diese Einstellungen speichert:

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

Sie können die nächste Einstellung verwenden, wenn Sie Probleme mit der Zeitsynchronisierung auf Ihren Geräten haben, daher werden wir diese Option nicht verwenden:

By default, tokens are good for 30 seconds and 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. If you experience problems with poor
time synchronization, you can increase the window from its default
size of 1:30min to about 4min. Do you want to do so (y/n) n

Die nächste Einstellung verhindert Brute-Force-Angriffe. Sie haben nur drei Versuche pro 30 Sekunden, das richtige Passwort einzugeben:

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

Herzlichen Glückwunsch! Sie haben Ihren Schlüssel fertig generiert und zu Ihrem Client hinzugefügt, aber einige zusätzliche Konfigurationen sind erforderlich, bevor diese Einstellungen wirksam werden.

Der nächste Schritt besteht darin, die Authentifizierungseinstellungen in openSSH zu konfigurieren. Öffnen Sie dazu die Datei „/etc/pam.d/sshd ”-Datei und fügen Sie am Ende der Datei die folgende Zeile hinzu:

### nano /etc/pam.d/sshd
auth required pam_google_authenticator.so

Speichern Sie die Änderungen, öffnen Sie die Datei „/etc/ssh/sshd_config ”-Datei und aktivieren Sie die Challenge-Response-Authentifizierung:

### nano /etc/ssh/sshd_config
ChallengeResponseAuthentication yes

Speichern Sie abschließend die Datei und starten Sie den SSH-Server neu, damit die Änderungen wirksam werden:

systemctl restart ssh

Herzlichen Glückwunsch! Sie haben SSH erfolgreich gesichert. Vielen Dank, dass Sie dieses Tutorial für sicheres SSH mit Zwei-Faktor-Authentifizierung auf einem Ubuntu 16.04 LTS-System (Xenial Xerus) verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Besuchen Sie die offizielle SSH-Website.


Ubuntu
  1. So installieren und sichern Sie Redis unter Ubuntu 18.04 LTS

  2. So installieren und sichern Sie phpMyAdmin unter Ubuntu 18.04 LTS

  3. So richten Sie einen VPN-Server mit Pritunl unter Ubuntu 18.04 LTS ein

  4. So aktivieren Sie den SSH-Dienst in Ubuntu 22.04 LTS

  5. Sicheres SSH mit Zwei-Faktor-Authentifizierung unter Ubuntu 16.04

So aktivieren Sie ssh unter Ubuntu 20.04 LTS Linux

So installieren Sie den SSH-Server unter Ubuntu 18.04 LTS

So installieren Sie den SSH-Server unter Ubuntu 20.04 LTS

So richten Sie die Zwei-Faktor-Authentifizierung unter Ubuntu 20.04 LTS ein

So installieren Sie den SSH-Server unter Ubuntu 22.04 LTS

Wie richte ich die ssh-schlüsselbasierte Authentifizierung für Github mithilfe der Datei ~/.ssh/config ein?