Skonfiguruj czynniki uwierzytelniania logowania SSH w CentOS 7

Bezpieczeństwo jest jednym z bastionów CentOS 7 i lubimy administratorzy lub personel IT, który zarządza tego typu maszynami, musi zapewnić, że te poziomy bezpieczeństwa są każdego dnia lepsze, ponieważ zagrożone są informacje użytkowników. Istnieje wiele środków bezpieczeństwa, które możemy wdrożyć w CentOS 7 A jednym z głównych, na którym się skupimy, jest uwierzytelnianie.

Współczynnik uwierzytelnianie Jest to metoda, która określa, że ​​użytkownik ma uprawnienia do wykonania akcji w systemie, takiej jak rozpoczęcie sesji lub instalacja aplikacji, jest to niezbędne, ponieważ pozwala nam na scentralizowaną kontrolę nad każdym zdarzeniem występującym w systemie Istnieje kilka podstawowych elementów procesu uwierzytelniania, takich jak:

Kanał uwierzytelnianiaTak wygląda system uwierzytelniania dostarcza czynnik do użytkownika aby wykazać swoje uprawnienia, na przykład komputer.

Współczynnik uwierzytelnianiaJak wspomnieliśmy, jest to metoda, aby to pokazać mamy prawa aby wykonać akcję, na przykład hasło.

Wiemy, że SSH używa predefiniowanych haseł, ale jest to czynnik uwierzytelniania i ważne jest, aby dodać kanał, ponieważ hasło w niepowołanych rękach naraża całą integralność operacji. Tym razem porozmawiamy i przeanalizujemy, jak wdrożyć wiele czynników uwierzytelniania, znanych jako MSZ, ponieważ znacznie zwiększają one bezpieczeństwo dostępu, wymagając nie tylko jednego, ale kilku parametrów uwierzytelniania, aby zalogować się poprawnie.
Istnieją różne czynniki uwierzytelniania, takie jak:

  • Hasła i pytania asekuracyjny.
  • Znak asekuracyjny.
  • Głos lub odcisk palca cyfrowy.
Dzięki tym koncepcjom rozpoczniemy proces konfigurowania wielu czynników uwierzytelniania w CentOS 7.

1. Jak zainstalować Google PAM


PAM (Pluggable Authentication Module) to w zasadzie infrastruktura uwierzytelniania dla użytkowników środowisk Linux. Ten PAM generuje TOTP (jednorazowe hasło oparte na czasie) i jest zgodny z aplikacjami OATH-TOTP, takimi jak Google Authenticator.

Krok 1
Do instalacji PAM na CentOS 7 najpierw konieczne będzie zainstalowanie repozytorium EPEL (Extra Packages for Enterprise Linux), do tego użyjemy poniższej linii. Akceptujemy pobieranie i odpowiednia instalacja pakietów.

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

POWIĘKSZAĆ

Krok 2
Po zainstalowaniu repozytorium EPEL zainstalujemy PAM w CentOS 7 za pomocą następującego wiersza:

 sudo mniam zainstaluj google-authenticator

POWIĘKSZAĆ

Krok 3
Jeśli po raz pierwszy korzystamy z tego repozytorium, musimy zaakceptuj użycie hasła z EPEL ale nie zostanie ponownie poproszony, w tym wierszu wpisujemy listy:

POWIĘKSZAĆ

Widzimy, że instalacja przebiegła pomyślnie. mamy zainstalowany PAM W CentOS 7 skorzystamy z pomocy narzędzia, aby wygenerować TOPT dla użytkownika, do którego zostanie dodany drugi czynnik uwierzytelniający. Ważne jest, aby wyjaśnić, że to klucz musi być wygenerowany przez użytkownika ale nie na poziomie systemu, ponieważ każdy dostęp jest osobisty.

2. Jak korzystać z Google PAM


Teraz zobaczymy jak uruchom i używaj PAM Google.

Krok 1
Mając to na uwadze, przystępujemy do uruchom Google Authenticator za pomocą następującego polecenia:

 google-uwierzytelniający
Wyświetli się poniższe okno, w którym otrzymamy wiadomość, czy tokeny bezpieczeństwa będą oparte na czasie, w którym wejdziemy Tak:

POWIĘKSZAĆ

Krok 2
PAM obsługuje dwa rodzaje tokenów, oparte na czasie lub sekwencyjne, sekwencyjne pozwalają na rozpoczęcie kodu w punkcie, a następnie na wzrost z każdym użyciem. Token czasowy umożliwia losową modyfikację kodu po określonym czasie. Do naciśnij Y, zobaczymy, co następuje.

Widzimy Kod QR który możemy skanować naszym telefonem lub zapisz klucz tajny tuż poniżej. W ten sam sposób możemy zobaczyć kod weryfikacyjny (6 cyfr), który zmienia się co 30 sekund.

POWIĘKSZAĆ

NotatkaWażne jest, aby zapiszmy wszystkie kody rozmieszczone w bezpiecznym miejscu.

Krok 3
W pytaniu, które widzimy na końcu linii, oznacza to, że klucze zostaną zapisane, a plik zostanie zaktualizowany. google-uwierzytelniającyJeśli wpiszemy literę n, program zostanie zamknięty i aplikacja nie będzie działać.
Wpisujemy literę Tak, zostaną wyświetlone następujące informacje:

POWIĘKSZAĆ

Krok 4
To pytanie dotyczy tego, czy akceptujemy unikamy awarii powtarzanie, które powoduje, że każdy kod traci ważność po użyciu, ta opcja uniemożliwia osobom postronnym przechwycenie tych kodów w celu nieautoryzowanego dostępu. Naciskając i zobaczymy:

POWIĘKSZAĆ

Krok 5
Jeśli odpowiemy, jeśli na to pytanie dopuścimy do 8 ważnych kodów z oknem 4 minut, to jeśli odpowiemy, nie będziemy mieli tylko 3 ważnych kodów z oknem półtorej minuty. Tam wybieramy najbardziej odpowiednia opcja będąc najbezpieczniejszym. Zobaczymy ponownie, co następuje.

To pytanie odnosi się do próby ograniczenia w którym atakujący może uzyskać dostęp przed zablokowaniem, maksymalnie 3 próby. Kliknij Tak, dlatego skonfigurowaliśmy google-authenticator w CentOS 7.

POWIĘKSZAĆ

3. Jak skonfigurować OpenSSH na CentOS 7?


W tym momencie stworzymy drugi Połączenie SSH do przeprowadzenia testów, ponieważ jeśli zablokujemy jedyny dostęp SSH, będziemy mieli trudności z konfiguracją parametrów.

Krok 1
Aby edytować te wartości, uzyskamy dostęp do pliku sshd za pomocą preferowanego edytora, wprowadzimy:

 sudo nano /etc/pam.d/sshd

POWIĘKSZAĆ

Krok 2
Na końcu pliku dodamy następujący wiersz:

 wymagane uwierzytelnienie pam_google_authenticator.so nullok

POWIĘKSZAĆ

Krok 3
Trzymamy plik za pomocą kombinacji klawiszy:

Ctrl + O

Tak Wyszliśmy tego samego za pomocą kombinacji:

Ctrl + X

Krok 3
Termin nullok informuje PAM, że ten czynnik uwierzytelniania jest opcjonalny, umożliwiając użytkownikom bez OATH-TOTP dostęp przy użyciu ich klucza SSH. Ale już skonfigurujemy sshd Aby zezwolić na ten typ uwierzytelniania, w tym celu wprowadzimy następujący wiersz:

 sudo nano / etc / ssh / sshd_config

POWIĘKSZAĆ

Krok 4

  • Tam zlokalizujemy następujący wiersz:
 WyzwanieOdpowiedźUwierzytelnianie
  • Odkomentujemy linia:
 WyzwanieOdpowiedźUwierzytelnianie tak
  • Na linii skomentujemy:
 WyzwanieOdpowiedź Numer uwierzytelnienia

POWIĘKSZAĆ

Krok 4
Zmiany zapisujemy za pomocą klawisz kontrolny + LUB. i ponownie uruchamiamy usługę za pomocą następującej linii:

 sudo systemctl restart sshd.service
Krok 5
Możemy uprawomocnić dostęp do łączności z innego terminala:

4. Jak włączyć SSH do obsługi MFA w CentOS 7?

Krok 1
W tym celu ponownie uzyskujemy dostęp do pliku sshd.config iw końcowej części pliku dodamy następujący wiersz:

 AuthenticationMethods klucz publiczny, klucz publiczny hasła, interakcja z klawiaturą 

POWIĘKSZAĆ

Krok 2
Zmiany zapisujemy za pomocą klawisz kontrolny + LUB a następnie uzyskamy dostęp do pliku sshd PAM za pomocą następującego wiersza:

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

Tam zlokalizujemy linię auth substack hasło-auth i skomentujemy to (#), aby PAM nie wymagał hasła dostępu przez SSH:

POWIĘKSZAĆ

Krok 4
Trzymamy zmiany. Restartujemy obsługa za pomocą polecenia:

 sudo systemctl restart sshd.service

5. Jak dodać trzeci czynnik uwierzytelniania w CentOS 7?

Krok 1
Widzieliśmy, że dodano następujące czynniki uwierzytelniania:

 klucz publiczny (klucz SSH) hasło klucz publiczny (hasło) interaktywna klawiatura (kod weryfikacyjny)
Krok 2
Jeśli spróbujemy się połączyć, zobaczymy tylko klucz SSH i kod weryfikacyjny aktywny, aby włączyć hasło wystarczy ponownie uzyskać dostęp do trasy sudo nano /etc/pam.d/sshd i tam odkomentuj linię
 auth substack hasło-auth.
Krok 3
Zapisujemy zmiany i zamierzamy ponownie uruchomić usługę za pomocą sudo
 systemctl restart sshd.service 
Jak widzimy, im więcej poziomów bezpieczeństwa obsługujemy w CentOS 7, tym więcej będziemy mieli możliwości posiadania stabilnego i niezawodnego systemu dla wszystkich użytkowników. Aby dowiedzieć się więcej o bezpieczeństwie w swoim systemie, zobacz jak skonfigurować, włączyć lub wyłączyć zaporę sieciową w CentOS 7.

Zapora sieciowa CentOS7

wave wave wave wave wave