GNU/Linux >> Znalost Linux >  >> Cent OS

7 nejlepších tipů na posílení zabezpečení pro server CentOS 8 / RHEL 8

Jakmile nainstalujete server CentOS 8 / RHEL 8, je na druhém místě jeho zabezpečení proti neoprávněnému přístupu a vniknutí. Jak praví přísloví:„Prevence je lepší než léčba“, takže prevence hackerů je lepší než pokusy o nápravu.

Prozkoumejte několik kroků, které můžete podniknout k posílení a zabezpečení serveru CentOS 8 / RHEL 8 a zmaření pokusů o hackování.

1) Nastavte bránu firewall

Jako uživatel Linuxu zaměřený na bezpečnost byste z bezpečnostních důvodů nepovolili žádný provoz do vašeho systému CentOS 8 / RHEL 8. Ve skutečnosti je nastavení brány firewall jednou z počátečních úloh nastavení serveru, které musí správce systému provést, aby otevřel pouze určité porty a povolil aktuálně používané služby.

Ve výchozím nastavení je systém CentsO8 / RHEL 8 dodáván s firewallem firewall, který lze spustit a povolit při spuštění spuštěním příkazů:

$ sudo systemctl start firewalld
$ sudo systemctl enable firewalld

Chcete-li zkontrolovat služby povolené na firewallu, jednoduše spusťte příkaz:

$ sudo firewall-cmd --list all

Chcete-li otevřít port na bráně firewall, např. port 443, spusťte příkaz:

$ sudo firewall-cmd --add-port=443/tcp --zone=public --permanent

Chcete-li povolit službu, např. ssh, použijte příkaz:

$ sudo firewall-cmd --add-service=ssh  --zone=public --permanent

Chcete-li odebrat port a službu, použijte –remove-port a –remove-service atributy.

Aby se změny projevily, vždy znovu načtěte firewall podle obrázku.

$ sudo firewall-cmd --reload

2) Zakázat nepoužívané / nežádoucí služby

Vždy se doporučuje vypnout nepoužívané nebo nepotřebné služby na vašem serveru. Důvodem je, že čím vyšší je počet spuštěných služeb, tím více je ve vašem systému otevřených portů, které může útočník zneužít k získání vstupu do vašeho systému. Kromě toho se vyhněte používání staré a nezabezpečené služby, jako je telnet, která odesílá provoz v prostém textu

Nejlepší bezpečnostní postupy doporučují zakázat nepoužívané služby a zbavit se všech nezabezpečených služeb běžících na vašem systému. Můžete použít nástroj nmap prohledat váš systém a zkontrolovat, které porty jsou otevřené a naslouchané.

3) Zabezpečte důležité soubory

Je důležité uzamknout důležité soubory, aby se zabránilo náhodnému smazání nebo úpravám. Mezi takové soubory patří /etc/passwd a /etc/gshadow, které obsahují hashovaná hesla. Chcete-li, aby byly soubory neměnné (tj. zabránit úpravě nebo náhodnému smazání), použijte příkaz chattr jak je znázorněno:

$ sudo chattr +i /etc/passwd
$ sudo chattr +i /etc/shadow

To zajišťuje, že hacker nemůže změnit heslo žádného uživatele ani je smazat, což povede k odmítnutí přihlášení do systému.

4) Zabezpečený protokol SSH

Protokol SSH je populární protokol pro vzdálené přihlášení. Ve výchozím nastavení má protokol nativní slabiny, které může zneužít hacker.

Ve výchozím nastavení SSH umožňuje vzdálené přihlášení uživatele root. Toto je potenciální mezera a pokud se hackerovi podaří získat heslo roota k vašemu systému, váš server je do značné míry vydán na jeho milost. Abyste tomu zabránili, je vhodné odmítnout vzdálené přihlášení root a místo toho vytvořit přihlašovacího běžného uživatele s právy sudo. Můžete to provést úpravou konfiguračního souboru SSH /etc/ssh/sshd_config a zakázáním přihlášení root, jak je znázorněno:

PermitRootLogin

Dalším způsobem, jak můžete zabezpečit SSH, je nastavení SSH autentizace bez hesla pomocí ssh klíčů. Namísto použití ověřování heslem, které je náchylné k útokům hrubou silou, jsou preferovány klíče SSH, protože umožňují přístup pouze uživatelům s klíčem ssh, aby se přihlásili ke vzdálenému serveru a zablokovali jakéhokoli jiného uživatele. Prvním krokem k povolení autentizace bez hesla je vygenerování páru klíčů pomocí příkazu:

$ ssh-keygen

Tím se vygeneruje pár veřejného a soukromého klíče. Soukromý klíč je umístěn na hostiteli, zatímco veřejný klíč je zkopírován do vzdáleného systému nebo serveru. Jakmile je pár ssh-key zkopírován, můžete se bez námahy přihlásit ke vzdálenému systému, aniž byste byli vyzváni k zadání hesla. Dále deaktivujte ověřování hesla úpravou konfiguračního souboru /etc/ssh/sshd_config a nastavením této hodnoty:

PasswordAuthentication no

Jakmile provedete změny, nezapomeňte restartovat službu SSH, aby se změny projevily.

$ sudo systemctl restart sshd

5 ) Definujte limit pro pokusy o zadání hesla

Chcete-li svůj server dále posílit, můžete zvážit omezení počtu pokusů o zadání hesla při přihlašování přes SSH, abyste zabránili útokům hrubou silou. Znovu přejděte do konfiguračního souboru SSH, přejděte a vyhledejte parametr „MaxAuthTries“. Odkomentujte jej a nastavte hodnotu, například 3, jak je znázorněno.

MaxAuthTries 3

To znamená, že po 3 nesprávných pokusech o zadání hesla bude relace uzavřena. To se hodí zejména tehdy, když chcete blokovat robotické skripty/programy, které se snaží získat přístup do vašeho systému.

6) Nastavte systém prevence narušení (IPS)

Dosud jsme se zabývali základními kroky, které můžete podniknout k posílení vašeho serveru CentOS 8 / RHEL 8. Chcete-li přidat další vrstvu, doporučujeme nainstalovat systém detekce narušení. Dokonalým příkladem IPS je Fail2ban.

Fail2ban je bezplatný a open source systém prevence narušení, který chrání servery před útoky hrubou silou tím, že zakáže IP adresy po určitém počtu pokusů o přihlášení, které lze zadat v konfiguračním souboru. Jakmile je uživatel se zlými úmysly nebo neoprávněný uživatel zablokován, nemůže ani zahájit pokus o přihlášení k SSH.

7) Pravidelně aktualizujte svůj server

Tento článek by nebyl úplný bez zdůraznění toho, jak důležité je pravidelně aktualizovat váš server. To zajišťuje, že váš server získá nejnovější funkce a aktualizace zabezpečení, které jsou nezbytné pro řešení stávajících problémů se zabezpečením.

Automatické aktualizace můžete nastavit pomocí nástroje kokpit, což je nástroj pro správu serveru založený na grafickém uživatelském rozhraní, který také provádí řadu dalších úkolů. To je ideální zejména pokud máte v úmyslu jet na dlouhodobý pobyt nebo dovolenou bez přístupu k serveru.


Cent OS
  1. 15 Linux Hardening Steps for CentOS 7 Server

  2. Jak vytvořit banner SSH na serveru CentOS/RHEL

  3. „Server odmítl alokovat pty“ – Nelze se přihlásit do CentOS/RHEL

  1. Nastavte SysLog Server na CentOS 6 / RHEL 6

  2. Jak nakonfigurovat samostatný port pro SSH a SFTP na CentOS/RHEL

  3. Nainstalujte MySQL 5.6 na CentOS 7 / RHEL 7

  1. Nainstalujte ssh server na CentOS 8 / RHEL 8

  2. Jak nastavit VNC Server pro nového uživatele v CentOS/RHEL 5

  3. Jak vytvořit úložiště Yum pro instalaci systémových balíčků v CentOS/RHEL