Jak dalej zabezpieczyć SSH za pomocą sekwencji przełączania portów na Ubuntu 18.04

Wprowadzenie

Oprócz zmiany domyślnego portu SSH i użycia pary kluczy do uwierzytelnienia, przełączanie portów może być również użyte do dalszego zabezpieczenia (lub dokładniej, zaciemnienia) serwera SSH. Działa, odrzucając połączenia z portem sieciowym SSH. Zasadniczo ukrywa to fakt, że korzystasz z serwera SSH, dopóki nie zostaną wykonane sekwencje prób połączenia z predefiniowanymi portami. Bardzo bezpieczne i łatwe do wdrożenia, przełączanie portów jest jednym z najlepszych sposobów ochrony serwera przed złośliwymi próbami połączenia SSH.

Wymagania wstępne

  • Serwer Vultr z systemem Ubuntu 18.04.
  • Dostęp do Sudo.

Przed wykonaniem poniższych kroków, jeśli nie jesteś zalogowany jako użytkownik root, uzyskaj tymczasową powłokę roota, uruchamiając sudo -ii wprowadzając hasło. Alternatywnie możesz sudoprzejść do poleceń pokazanych w tym artykule.

Krok 1: Instalacja Knockd

Knockd to pakiet, który jest używany w połączeniu z iptables do implementacji przełączania portów na twoim serwerze. iptables-persistentWymagany jest także pakiet „ ”.

apt update
apt install -y knockd iptables-persistent

Krok 2: Reguły iptables

Uruchom następujące polecenia w kolejności:

iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --destination-port 22 -j DROP
iptables-save > /etc/iptables/rules.v4

Te polecenia wykonają odpowiednio:

  • Poinstruuj iptables, aby utrzymywały istniejące połączenia.
  • Poinstruuj iptables, aby porzucił dowolne połączenie z portem tcp / 22 (jeśli demon SSH nasłuchuje na porcie innym niż 22, należy odpowiednio zmodyfikować powyższe polecenie).
  • Zapisz te dwie reguły, aby pozostały po ponownym uruchomieniu.

Krok 3: Konfiguracja Knockd

Korzystając z wybranego edytora tekstowego, otwórz plik /etc/knockd.conf.

Zobaczysz:

[openSSH]
sequence    = 7000,8000,9000
seq_timeout = 5
command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags    = syn

Powinieneś zmienić kolejność portów (wybierz numery portów powyżej 1024i nieużywane przez inne usługi) i przechowuj ją bezpiecznie. Ta kombinacja powinna być traktowana jak hasło. W przypadku zapomnienia utracisz dostęp do SSH. Będziemy odnosić się do tej nowej sekwencji jako x,y,z.

seq-timeoutlinia jest liczba sekund Knockd będzie czekać na klienta, aby zakończyć sekwencję portach pukania. Dobrym pomysłem byłoby zmienić to na coś większego, szczególnie jeśli wybijanie portów będzie wykonywane ręcznie. Jednak mniejsza wartość limitu czasu jest bezpieczniejsza. 15Zalecana jest zmiana na, ponieważ w tym samouczku będziemy pukać ręcznie.

Zmień sekwencję otwierania dla wybranych portów:

[openSSH]
sequence    = x,y,z

Zmień wartość polecenia na następującą:

command     = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT

Teraz odpowiednio zmień sekwencję zamykania:

[closeSSH]
sequence    = z,y,x

Zapisz zmiany i wyjdź, a następnie otwórz plik /etc/default/knockd:

  • Wymień START_KNOCKD=0się START_KNOCKD=1.
  • Dodaj następujący wiersz na końcu pliku: KNOCKD_OPTS="-i ens3"(zastąp ens3nazwą interfejsu sieci publicznej, jeśli jest inny).
  • Zapisz i wyjdź.

Teraz uruchom Knockd:

systemctl start knockd

Jeśli teraz odłączyć od serwera, musisz wbić na portach x, yi zpołączyć się ponownie.

Krok 4: Testowanie

Nie będzie można połączyć się z serwerem SSH.

Możesz przetestować pukanie portów za pomocą klienta Telnet.

Użytkownicy systemu Windows mogą uruchomić telnet z wiersza polecenia. Jeśli telnet nie jest zainstalowany, przejdź do sekcji „Programy” w Panelu sterowania, a następnie zlokalizuj „Włącz lub wyłącz funkcje systemu Windows”. Na panelu funkcji znajdź „Klienta Telnet” i włącz go.

W swoim terminalu / wierszu polecenia wpisz:

telnet youripaddress x
telnet youripaddress y
telnet youripaddress z

Zrób to wszystko w piętnaście sekund, ponieważ jest to limit nałożony w konfiguracji. Teraz spróbuj połączyć się z serwerem za pośrednictwem SSH. Będzie dostępny.

Aby zamknąć dostęp do serwera SSH, uruchom polecenia w odwrotnej kolejności.

telnet youripaddress z
telnet youripaddress y
telnet youripaddress z

Wniosek

Najlepsze w korzystaniu z przełączania portów jest to, że jeśli jest skonfigurowany wraz z uwierzytelnianiem klucza prywatnego, praktycznie nie ma szans, że ktoś inny może się dostać, chyba że ktoś zna Twoją sekwencję przełączania portów i ma Twój klucz prywatny.



Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.