Konfigurieren Sie die SSH-Anmeldeauthentifizierungsfaktoren in CentOS 7

Sicherheit ist eine der Stärken von CentOS 7, und wir als Administratoren oder IT-Mitarbeiter, die diese Art von Maschinen verwalten, müssen sicherstellen, dass diese Sicherheitsstufen jeden Tag besser sind, da die Informationen der Benutzer gefährdet sind. Es gibt verschiedene Sicherheitsmaßnahmen, die wir in CentOS 7 implementieren können. Eine der wichtigsten Maßnahmen , auf die wir uns konzentrieren werden, ist die Authentifizierung.

Ein Authentifizierungsfaktor ist eine Methode, mit der festgestellt wird, dass ein Benutzer über die Berechtigung verfügt, eine Aktion im System auszuführen, z. B. die Anmeldung oder Installation einer Anwendung. Dies ist von entscheidender Bedeutung, da wir so eine zentrale Kontrolle über jedes aufgetretene Ereignis haben Es gibt einige grundlegende Komponenten im Authentifizierungsprozess, wie zum Beispiel:

Authentifizierungskanal
Auf diese Weise gibt das Authentifizierungssystem dem Benutzer einen Faktor zum Nachweis seiner Berechtigung, beispielsweise einen Computer.

Authentifizierungsfaktor
Wie wir bereits erwähnt haben, ist die Methode, um zu demonstrieren, dass wir die Rechte zum Ausführen der Aktion haben, beispielsweise ein Passwort.

Wir wissen, dass SSH vordefinierte Passwörter verwendet, dies ist jedoch ein Authentifizierungsfaktor und es ist wichtig, einen Kanal hinzuzufügen, da ein in schlechten Händen befindliches Passwort die gesamte Integrität des Vorgangs gefährdet. In dieser Gelegenheit werden wir diskutieren und analysieren, wie mehrere als MFA bezeichnete Authentifizierungsfaktoren implementiert werden können, da diese insbesondere die Sicherheit des Zugriffs erhöhen, indem nicht nur ein, sondern mehrere Authentifizierungsparameter für die korrekte Anmeldung erforderlich sind.
Es gibt verschiedene Authentifizierungsfaktoren wie:

  • Passwörter und Sicherheitsfragen.
  • Sicherheitstoken
  • Stimme oder Fingerabdruck

Mit diesen Konzepten beginnen wir mit der Konfiguration mehrerer Authentifizierungsfaktoren in CentOS 7.

1. So installieren Sie Google PAM

PAM (Pluggable Authentication Module) ist im Grunde eine Authentifizierungsinfrastruktur für Benutzer von Linux-Umgebungen. Diese PAM generiert TOTP (Time-based One-Time Password) und ist mit OATH-TOTP-Anwendungen wie Google Authenticator kompatibel.

Schritt 1

Um PAM in CentOS 7 zu installieren, muss zuerst das EPEL-Repository (Extra Packages for Enterprise Linux) installiert werden. Hierzu wird die folgende Zeile verwendet. Wir akzeptieren den Download und die jeweilige Installation der Pakete.

 sudo yum installiere https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 

2-Installation-del-PAM-de-Google.png

Schritt 2

Sobald das EPEL-Repository installiert ist, installieren wir PAM in CentOS 7 mithilfe der folgenden Zeile:

 sudo yum installiere google-authenticator 

3-sudo-yum-install-google-authenticator.png

Schritt 3

Wenn wir dieses Repository zum ersten Mal verwenden, müssen wir die Verwendung des EPEL- Codes akzeptieren, aber er wird nicht erneut angefordert . In dieser Zeile geben wir den Buchstaben S ein: 4-Installation-del-PAM-de-Google.png

See also  So zeigen Sie den Android-Benachrichtigungsverlauf an und rufen ihn ab

Wir können sehen, dass die Installation korrekt war. Sobald wir PAM in CentOS 7 installiert haben, werden wir die Hilfe des Dienstprogramms verwenden, um das TOPT für den Benutzer zu generieren, zu dem ein zweiter Authentifizierungsfaktor hinzugefügt wird. Es ist wichtig zu klären, dass dieser Schlüssel vom Benutzer generiert werden muss, jedoch nicht auf Systemebene, da jeder Zugriff persönlich ist.

2. Verwendung von Google PAM

Jetzt werden wir sehen, wie Google PAM ausgeführt und verwendet wird .

Schritt 1

In diesem Sinne starten wir google-authenticator mit dem folgenden Befehl:

 Google-Authenticator 

Das folgende Fenster wird angezeigt, in dem wir die Meldung erhalten, ob die Sicherheitstoken auf der Zeit basieren. Geben Sie Y ein: 5-execute-pam-google.png

Schritt 2

PAM verarbeitet zwei Arten von Token, zeitbasiert oder sequenziell. Die sequenziellen Typen ermöglichen es dem Code, an einem Punkt zu beginnen und dann mit zunehmender Verwendung zuzunehmen. Mit dem zeitbasierten Token kann der Code nach einer bestimmten Zeit nach dem Zufallsprinzip geändert werden. Wenn Sie Y drücken, wird Folgendes angezeigt .

Wir sehen einen QR-Code, den wir mit unserem Telefon scannen oder den unten stehenden Geheimcode aufschreiben können. Auf die gleiche Weise können wir den Bestätigungscode (6 Ziffern) sehen, der sich alle 30 Sekunden ändert.

6-google-authenticator.png

Hinweis
Es ist wichtig, dass wir alle angezeigten Codes an einem sicheren Ort aufbewahren.

Schritt 3

In der Frage, die wir am Ende der Zeile sehen, wird angezeigt, dass die Schlüssel geschrieben und die Google-Authenticator- Datei aktualisiert werden. Wenn wir den Buchstaben n eingeben, wird das Programm geschlossen und die Anwendung funktioniert nicht.
Geben Sie den Buchstaben Y ein . Folgendes wird angezeigt: 7-update-del-archivo-google-authenticator.png

Schritt 4

Diese Frage bezieht sich auf die Tatsache, dass wir, wenn wir akzeptieren, einen Wiederholungsfehler vermeiden, der dazu führt , dass jeder Code nach seiner Verwendung verfällt. Diese Option verhindert, dass Außenstehende diese Codes für nicht autorisierten Zugriff erfassen. Beim Drücken von und sehen wir folgendes: 8-code-qr - centos7.png

Schritt 5

Wenn wir diese Frage mit Ja beantworten, lassen wir bis zu 8 gültige Codes mit einem Fenster von vier Minuten zu, wenn wir antworten, haben wir nicht nur 3 gültige Codes mit einem Fenster von eineinhalb Minuten. Dort wählen wir die am besten geeignete Option aus , die am sichersten ist. Wir werden das Folgende wiedersehen.

See also  Nginx - Erweiterte Tests

Diese Frage bezieht sich auf die Beschränkung der Versuche, auf die ein Angreifer zugreifen kann, bevor er blockiert wird. Das Maximum sind 3 Versuche. Wir klicken auf und haben auf diese Weise den google-authenticator in CentOS 7 konfiguriert.

9-google-authenticator-de-CentOS-7..png

3. So konfigurieren Sie OpenSSH in CentOS 7

An dieser Stelle erstellen wir eine zweite SSH-Verbindung , um die Tests durchzuführen, da wir Schwierigkeiten haben, die Parameter zu konfigurieren, wenn wir den einzigen SSH-Zugriff blockieren.

Schritt 1

Um diese Werte zu bearbeiten, greifen wir mit dem bevorzugten Editor auf die sshd-Datei zu. Geben Sie Folgendes ein:

 sudo nano /etc/pam.d/sshd 

10-Konfiguration-von-OpenSSH.png

Schritt 2

Am Ende der Datei werden wir die folgende Zeile hinzufügen:

 Authentifizierung erforderlich pam_google_authenticator.so nullok 

11-auth-required-pam_google_authenticator.so-nullok.png

Schritt 3

Wir speichern die Datei mit der Tastenkombination:

+ O Strg + O

Und wir verlassen es mit der Kombination:

+ X Strg + X

Schritt 3

Der Begriff nullok weist PAM darauf hin, dass dieser Authentifizierungsfaktor optional ist, sodass Benutzer ohne OATH-TOTP mithilfe ihres SSH-Schlüssels zugreifen können. Jetzt konfigurieren wir sshd so , dass diese Art der Authentifizierung möglich ist. Dazu geben wir die folgende Zeile ein:

 sudo nano / etc / ssh / sshd_config 

12-sudo-nano-etc-ssh-sshd_config.png

Schritt 4
  • Dort werden wir die folgende Zeile finden:
 ChallengeResponseAuthentication 
  • Wir werden die Linie auspacken :
 ChallengeResponseAuthentication yes 
  • Wir werden die Zeile kommentieren:
 ChallengeResponseAuthentication nicht 

13-ChallengeResponseAuthentication.png

Schritt 4

Wir speichern die Änderungen mit Strg + O. und wir starten den Dienst mit der folgenden Zeile neu:

 sudo systemctl starte sshd.service neu 
Schritt 5

Wir können die Konnektivität überprüfen, indem wir von einem anderen Terminal aus auf Folgendes zugreifen:

14-validate-the-connectivity.png

4. So aktivieren Sie SSH für die Verwaltung von MFA in CentOS 7

Schritt 1

Dazu greifen wir erneut auf die Datei sshd.config zu und fügen im letzten Teil der Datei die folgende Zeile hinzu:

 AuthenticationMethods publickey, password publickey, keyboard-interactive 

15-enable-that-SSH-this-managing-MFA.png

Schritt 2

Speichern Sie die Änderungen mit Strg + O und greifen Sie dann über die folgende Zeile auf die PAM-sshd-Datei zu:

 sudo nano /etc/pam.d/sshd 
Schritt 3

Dort platzieren wir die Zeile auth substack password-auth und kommentieren sie (#), damit PAM das Zugangspasswort von SSH nicht benötigt:

See also  Tastenkombinationen in Word und Excel 2016 von wesentlicher Bedeutung

16-auth-substack-password-auth.png

Schritt 4

Wir behalten die Änderungen. Wir starten den Dienst mit dem folgenden Befehl neu:

 sudo systemctl starte sshd.service neu 

5. Hinzufügen eines dritten Authentifizierungsfaktors in CentOS 7

Schritt 1

Wir konnten feststellen, dass die folgenden Authentifizierungsfaktoren hinzugefügt wurden:

 publickey (SSH Passwort) Passwort publickey (Passwort) keyboard-interactive (Bestätigungscode) 
Schritt 2

Wenn wir versuchen, eine Verbindung herzustellen , werden nur der SSH-Schlüssel und der Bestätigungscode angezeigt . Um das Kennwort zu aktivieren, greifen Sie einfach erneut auf den sudo nano- Pfad /etc/pam.d/sshd zu und entfernen Sie dort das Kommentarzeichen in der Zeile

 auth substack password-auth. 
Schritt 3

Wir speichern die Änderungen und starten den Dienst mit sudo neu

 systemctl starte sshd.service neu 

Je mehr Sicherheitsstufen wir in CentOS 7 verwalten, desto größer die Chance, dass wir ein stabiles und zuverlässiges System für alle Benutzer haben. Informationen zum Thema Sicherheit in Ihrem System finden Sie unter Konfigurieren, Aktivieren oder Deaktivieren der Firewall in CentOS 7.

CentOS7 Firewall

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *