7 sposobów na poprawę bezpieczeństwa serwera Linux

Photo of author

By maciekx

Od dłuższego czasu system Linux był postrzegany jako bezpieczny głównie dzięki swojej niejasności. Użytkownicy mogli czuć się względnie bezpiecznie, ponieważ nie znajdowali się w centrum zainteresowania hakerów. Ta sytuacja jednak uległa zmianie, a w latach 2017 i 2018 obserwowaliśmy wzrost aktywności dużych grup hakerskich, które zaczęły wykorzystywać luki i błędy w Linuksie, aby instalować złośliwe oprogramowanie, wirusy, rootkity i inne niebezpieczne programy.

W odpowiedzi na rosnącą liczbę exploitów i złośliwego oprogramowania, które zagrażają użytkownikom Linuksa, społeczność open source podjęła działania mające na celu wzmocnienie zabezpieczeń. Niemniej jednak, to może nie wystarczyć, dlatego jeśli korzystasz z Linuksa na serwerze, warto zapoznać się z naszą listą wskazówek dotyczących poprawy bezpieczeństwa serwera Linux.

1. Wykorzystaj SELinux

SELinux, czyli Security-Enhanced Linux, to wbudowane narzędzie zabezpieczeń w jądrze Linuksa. Po aktywacji, SELinux skutecznie egzekwuje wybraną politykę bezpieczeństwa, co jest kluczowe dla stabilności serwera Linux.

Wiele serwerowych systemów operacyjnych opartych na RedHat ma już wbudowany SELinux z dobrymi ustawieniami domyślnymi. Należy jednak pamiętać, że nie wszystkie dystrybucje domyślnie obsługują SELinux, dlatego pokażemy, jak go aktywować.

Uwaga: Pakiety Snap wymagają AppArmor, będącego alternatywą dla SELinux. Gdy zdecydujesz się na SELinux, w niektórych dystrybucjach Linuksa może być to niekompatybilne z Snapami.

CentOS / RHEL

CentOS oraz RedHat Enterprise Linux są dostarczane z wbudowanym SELinux. Jest on już wstępnie skonfigurowany dla optymalnego bezpieczeństwa, więc dodatkowe instrukcje nie są konieczne.

Serwer Ubuntu

Od czasów Karmic Koala, Ubuntu znacznie ułatwiło aktywację SELinux. Aby go skonfigurować, użyj poniższych poleceń.

sudo apt install selinux

Debian

Podobnie jak Ubuntu, Debian także ułatwia konfigurację SELinux. Aby to zrobić, wprowadź poniższe polecenia.

sudo apt-get install selinux-basics selinux-policy-default auditd

Po zakończeniu instalacji SELinux na Debianie, zapoznaj się z dokumentacją na Wiki, która zawiera wiele przydatnych informacji dotyczących korzystania z tego narzędzia.

Podręcznik SELinux

Po aktywacji SELinux warto zapoznać się z jego podręcznikiem. Dowiesz się z niego, jak działa to narzędzie. Twój serwer na pewno to doceni!

Aby uzyskać dostęp do podręcznika SELinux, wprowadź w terminalu poniższe polecenie.

man selinux

2. Dezaktywuj konto roota

Jednym z najrozsądniejszych kroków w celu zabezpieczenia serwera Linux jest dezaktywacja konta roota oraz korzystanie z uprawnień Sudoer do wykonywania działań administracyjnych. Ograniczając dostęp do konta roota, zminimalizujesz ryzyko, że niepożądane osoby uzyskają pełen dostęp do systemu, co mogłoby prowadzić do instalacji szkodliwego oprogramowania.

Dezaktywacja konta roota w systemie Linux jest prostą czynnością, a w wielu dystrybucjach serwerowych (np. Ubuntu) jest już domyślnie wyłączona jako środek ostrożności. Aby dowiedzieć się więcej na ten temat, sprawdź nasz przewodnik, który szczegółowo opisuje, jak zablokować konto roota.

3. Zabezpiecz serwer SSH

SSH często stanowi poważny słaby punkt na wielu serwerach Linux, ponieważ wielu administratorów korzysta z domyślnych ustawień, co ułatwia konfigurację, ale jednocześnie naraża serwer na ataki.

Wprowadzenie kilku podstawowych kroków w celu zabezpieczenia serwera SSH może znacznie ograniczyć liczbę nieautoryzowanych użytkowników oraz ataków złośliwego oprogramowania.

W przeszłości przygotowałem obszerne opracowanie na temat zabezpieczania serwera SSH w systemie Linux. Aby poznać szczegóły, zapraszam do zapoznania się z tym artykułem.

4. Regularnie instaluj aktualizacje

Choć może wydawać się to oczywiste, zaskakująco wiele osób zarządzających serwerami Linux ignoruje aktualizacje. Zrozumiałe jest, że każda aktualizacja może prowadzić do problemów z działającymi aplikacjami, jednak unikanie ich przekłada się na brak poprawek bezpieczeństwa, które eliminują luki wykorzystywane przez hakerów.

W rzeczywistości aktualizacje na serwerze produkcyjnym są znacznie bardziej kłopotliwe niż na komputerze osobistym. Po prostu nie można zatrzymać wszystkiego, aby przeprowadzić aktualizacje. Aby temu zaradzić, rozważ ustalenie harmonogramu aktualizacji.

Nie ma jednej, uniwersalnej zasady dotyczącej harmonogramów aktualizacji, ponieważ powinny być one dostosowane do konkretnego przypadku. Najlepiej jest instalować poprawki co tydzień lub co dwa tygodnie, aby zapewnić odpowiedni poziom bezpieczeństwa.

5. Unikaj repozytoriów oprogramowania zewnętrznego

Jedną z zalet korzystania z Linuksa jest dostępność repozytoriów oprogramowania, o ile używasz odpowiedniej dystrybucji. Problem pojawia się, gdy wiele z tych repozytoriów może wprowadzać do systemu złośliwe oprogramowanie i stwarzać zagrożenia. Korzystanie z oprogramowania pochodzącego z niezweryfikowanych źródeł może prowadzić do poważnych problemów.

Jeśli potrzebujesz oprogramowania, które nie jest dostępne w standardowej dystrybucji Linuksa, zamiast korzystać z repozytoriów zewnętrznych, rozważ aplikacje dostępne w systemie Snap. W sklepie Snap znajdziesz wiele aplikacji serwerowych, a każda z nich regularnie przechodzi audyty bezpieczeństwa.

Chcesz dowiedzieć się więcej o Snapie? Sprawdź nasz artykuł, aby dowiedzieć się, jak możesz go wykorzystać na swoim serwerze Linux!

6. Używaj zapory ogniowej

Posiadanie sprawnej zapory ogniowej na serwerze jest kluczowe. Dobrze skonfigurowany system zaporowy pomoże uniknąć wielu niechcianych intruzów. Z drugiej strony, brak właściwych zabezpieczeń może poważnie zaszkodzić twojemu serwerowi Linux.

W systemie Linux dostępnych jest kilka rozwiązań zaporowych. Niektóre z nich są łatwiejsze do zrozumienia niż inne. Jednym z najprostszych i najskuteczniejszych rozwiązań jest FirewallD.

Uwaga: Aby korzystać z FirewallD, musisz mieć system operacyjny oparty na SystemD.

Aby zainstalować FirewallD, otwórz terminal i wprowadź polecenia zgodne z Twoim systemem operacyjnym Linux.

Serwer Ubuntu

sudo systemctl disable ufw
sudo systemctl stop ufw
sudo apt install firewalld

Debian

sudo apt-get install firewalld

CentOS / RHEL

sudo yum install firewalld

Po zainstalowaniu oprogramowania, włącz je za pomocą Systemd.

sudo systemctl enable firewalld
sudo systemctl start firewalld

Podsumowanie

Na serwerach Linux coraz częściej występują problemy dotyczące bezpieczeństwa. Niestety, w miarę rosnącej popularności systemu Linux w obszarze przedsiębiorstw, te zagrożenia będą się nasilały. Stosując się do wskazówek z tej listy, możesz znacząco zwiększyć bezpieczeństwo swojego serwera i zminimalizować ryzyko ataków.


newsblog.pl