Lynis – prosty sposób na audyt bezpieczeństwa systemu Linux
W dobie nieustannie rosnących zagrożeń cybernetycznych, szybki i skuteczny sposób oceny stanu bezpieczeństwa serwera jest na wagę złota. Jednym z najlepszych narzędzi typu open-source do tego celu jest Lynis – lekki, modularny i bardzo szczegółowy skaner bezpieczeństwa dla systemów Linux/Unix.
Co to jest Lynis?
Lynis to narzędzie typu audyt lokalny – działa bez potrzeby instalacji agentów, loguje się do systemu i analizuje:
- konfigurację systemu operacyjnego,
- ustawienia SSH, PAM, sudo,
- dostępność firewalli i mechanizmów hardeningu,
- błędy konfiguracji, niezałatane pakiety, ryzykowne ustawienia.
Instalacja Lynis
Szybko na Debian/Ubuntu
sudo apt update
sudo apt install lynis
Najnowsza wersja z GitHub
cd /opt
sudo git clone https://github.com/CISOfy/lynis
cd lynis
sudo ./lynis audit system
Audyt bezpieczeństwa – lokalnie i zdalnie
Audyt lokalny
sudo lynis audit system
Wynik pojawia się od razu na ekranie, ale logi trafiają też do:
/var/log/lynis.log
/var/log/lynis-report.dat
– plik podsumowujący do analizy
Audyt systemu zdalnego (przez SSH z kluczem)
ssh user@host 'sudo lynis audit system' | tee lynis_remote_output.txt
Interpretacja wyników
Głównym plikiem do analizy jest:
/var/log/lynis-report.dat
Przykładowe dane:
hardening_index=64
warning_01=iptables module(s) loaded, but no rules active
suggestion_01=Install pam_cracklib
Co warto śledzić:
- Hardening index – liczba punktowa (0–100), im wyżej, tym lepiej
- Warnings – krytyczne błędy
- Suggestions – dobre praktyki do wdrożenia
Testy – sedno działania Lynis
Każdy test posiada unikalne ID i kategorię. Możesz:
- wyświetlić wszystkie testy:
lynis show tests
- zobaczyć szczegóły:
lynis show details SSH-7408
Możesz też uruchamiać tylko wybrane testy lub całe grupy:
sudo lynis audit system --tests-from-group ssh
Automatyzacja i powiadomienia
Aby audyt był regularny, dodaj go do cron
:
0 3 * * 1 /usr/bin/lynis audit system --quiet > /var/log/lynis-weekly.log
Powiadomienia możesz zintegrować przez:
mail
,sendmail
,msmtp
- Slack, Telegram, webhook
Na co zwrócić uwagę?
Po skanowaniu skup się przede wszystkim na:
- otwartych portach i zaporach sieciowych (czy są aktywne?),
- konfiguracji SSH (
PermitRootLogin
,Port
,X11Forwarding
), - dostępnych aktualizacjach pakietów,
- podziale dysku na osobne partycje (
/tmp
,/var
,/home
), - parametrach
sysctl
.
Testy w Lynis
Czym są testy?
Każdy test ma:
- ID (np.
SSH-7408
) - Kategorię (np.
AUTH
,SSH
,KRNL
) - Opis
- Oczekiwany wynik (np. OK, WARNING, SUGGESTION)
Jak przeglądać testy
Lista wszystkich testów:
lynis show tests
Szczegóły testu:
lynis show details SSH-7408
Skan tylko konkretnej grupy:
sudo lynis audit system --tests-from-group ssh
Skan pojedynczego testu:
sudo lynis audit system --tests SSH-7408
Kategorie testów (przykłady)
Kategoria | Opis |
---|---|
AUTH | Uwierzytelnianie, hasła, PAM, sudo |
BOOT | GRUB, rozruch systemu, UEFI |
FILE | Uprawnienia i partycje |
KRNL | Parametry jądra (sysctl ) |
NETW | Konfiguracja sieci |
SSH | Konfiguracja serwera SSH |
LOGG | Systemy logowania |
ACCT | Audyty i accounting |
FIRE | Firewall |
HRDN | Hardening systemu |
Lynis to potężne narzędzie do audytu bezpieczeństwa systemów Linux. Umożliwia:
Szybką instalację i lokalny audyt
Skanowanie zdalnych hostów przez SSH
Szczegółową analizę wyników z ostrzeżeniami i sugestiami
Przegląd testów bezpieczeństwa wg kategorii (SSH, kernel, sieć, itp.)
Automatyzację przez crona oraz integrację z systemami powiadomień
W kilka minut zidentyfikujesz potencjalne luki, zoptymalizujesz konfigurację i zadbasz o bezpieczeństwo swoich serwerów.