Introduction to Linux Server Security Hardening

zabezpieczanie serwerów Linuksowych jest trudnym i czasochłonnym zadaniem dla administratorów systemów, ale konieczne jest utwardzenie bezpieczeństwa serwera, aby chronić go przed atakami i hakerami. Możesz zabezpieczyć swój serwer, odpowiednio konfigurując system i instalując jak najmniej oprogramowania. Istnieje kilka wskazówek, które mogą pomóc zabezpieczyć serwer przed atakami sieciowymi i eskalacją uprawnień.

Uaktualnij swoje jądro

przestarzałe jądro jest zawsze podatne na kilka ataków eskalacji sieci i uprawnień. Możesz więc zaktualizować jądro używając apt w Debianie lub yum w Fedorze.

$ sudo apt-get update
$ sudo apt-get dist-upgrade

wyłączanie Zadań Cron roota

Zadania Cron uruchamiane przez roota lub konto high privilege mogą być użyte jako sposób na uzyskanie wysokich uprawnień przez atakujących. Możesz zobaczyć uruchamianie zadań cron przez

$ ls / etc / cron*

surowe reguły zapory

należy zablokować wszelkie niepotrzebne połączenia przychodzące lub wychodzące na nietypowych portach. Możesz aktualizować reguły zapór sieciowych za pomocą iptables. Iptables jest bardzo elastycznym i łatwym w użyciu narzędziem służącym do blokowania lub zezwalania na ruch przychodzący lub wychodzący. Aby zainstalować, napisz

$ sudo apt-get install iptables

oto przykład blokowania przychodzących na porcie FTP przy użyciu iptables

$ iptables-A INPUT-p tcp –dport ftp-j DROP

Wyłącz niepotrzebne usługi

Zatrzymaj wszelkie niechciane usługi i demony uruchomione w systemie. Możesz wyświetlić listę uruchomionych usług za pomocą następujących poleceń.

:~$ service –status-Wszystkie
acpid
alsa-utils
anacron
apache-htcacheclean
apache2
apparmor
apport
avahi-daemon
binfmt-wsparcie
bluetooth
cgroupfs-mount
…ciach…

lub za pomocą następującego polecenia

$ chkconfig — list / grep '3:on’

aby zatrzymać usługę, wpisz

$ przystanek serwisowy sudo

lub

$ sudo systemctl stop

Sprawdź backdoory i rootkity

narzędzia takie jak rkhunter i chkrootkit mogą być używane do wykrywania znanych i nieznanych backdoorów i rootkitów. Weryfikują zainstalowane pakiety i konfiguracje, aby zweryfikować bezpieczeństwo systemu. Aby zainstalować napisz,

:~$ sudo apt-get install rkhunter-y

aby zeskanować system, wpisz

:~$ sudo rkhunter — check

sprawdzanie poleceń systemowych…
sprawdzanie poleceń 'strings’
sprawdzanie poleceń 'strings’
sprawdzanie bibliotek współdzielonych
sprawdzanie wstępnie załadowanych zmiennych
sprawdzanie wstępnie załadowanych bibliotek
sprawdzanie zmiennej LD_LIBRARY_PATH
sprawdzanie właściwości plików
sprawdzanie wymagań wstępnych
/usr/sbin/adduser
/usr/sbin/chroot
..ciach…

Sprawdź porty nasłuchowe

powinieneś sprawdzić, czy nie są używane porty nasłuchowe i je wyłączyć. Aby sprawdzić otwarte porty, napisz.

:~$ sudo netstat-ulpnt
aktywne połączenia internetowe (tylko serwery)
Proto Recv-Q Send-Q adres lokalny adres zagraniczny Stan PID/Nazwa programu
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 2136/redis-server 1
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1273/rpcbind
TCP 0 0 127.0.0.1:5939 0.0.0.0:* słuchaj 2989/teamviewerd
TCP 0 0 127.0.0.53:53 0.0.0.0:* słuchaj 1287/systemd-resolv
TCP 0 0 0.0.0.0:22 0.0.0.0:* słuchaj 1939/SSHD
TCP 0 0 127.0.0.1:631 0.0.0.0:* listen 20042/Cupsd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1887/Postgres
TCP 0 0 0.0.0.0:25 0.0.0.0:~ LISTEN 31259 / master
..ciach…

użyj IDS (system testowania włamań)

użyj IDS do sprawdzania dzienników sieci i zapobiegania złośliwym działaniom. Dostępny jest open source IDS Snort dla Linuksa. Możesz go zainstalować przez,

$ wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz
$ wget https://www.snort.org/downloads/snort/snort-2.9.12.tar.gz
$ tar xvzf daq-2.0.6.smoła.gz
$ cd daq-2.0.6
$./ configure & & make & & sudo make install
$ tar xvzf snort-2.9.12.smoła.gz
$ cd snort-2.9.12
$./ configure –enable-sourcefire & & make & & sudo make install

aby monitorować ruch sieciowy, wpisz

:~$ sudo snort
uruchomiony w trybie zrzutu pakietów
— ==Inicjalizacja Snort = = —
Inicjalizacja wtyczek wyjściowych!
PCAP DAQ skonfigurowany do pasywnego.
pozyskiwanie ruchu sieciowego z „tun0”.
dekodowanie surowego IP4
— = = Inicjalizacja zakończona = = —
…ciach…

Wyłącz Logowanie jako Root

root działa jako użytkownik z pełnymi uprawnieniami, ma moc robić wszystko z systemem. Zamiast tego powinieneś wymusić użycie sudo do uruchamiania poleceń administracyjnych.

Usuń Brak plików właściciela

pliki należące do żadnego użytkownika lub grupy mogą stanowić zagrożenie bezpieczeństwa. Należy wyszukać te pliki i usunąć je lub przypisać im właściwego użytkownika grupę. Aby wyszukać te pliki, wpisz

$ find / dir-XDEV \( -nouser-o-nogroup \) -print

użyj SSH i sFTP

do przesyłania plików i zdalnej administracji użyj SSH i sFTP zamiast telnet i innych niezabezpieczonych, otwartych i niezaszyfrowanych protokołów. Aby zainstalować, wpisz

$ sudo apt-get install vsftpd-y
$ sudo apt-get install openssh-server-y

Monitor Logs

Zainstaluj i skonfiguruj narzędzie log analyzer, aby regularnie sprawdzać logi systemowe i dane zdarzeń, aby zapobiec podejrzanym działaniom. Typ

$ sudo apt-get install-y loganalyzer

Odinstaluj nieużywane oprogramowanie

Zainstaluj oprogramowanie jak najmniej, aby utrzymać małą powierzchnię ataku. Im więcej masz oprogramowania, tym większe szanse na ataki masz. Usuń więc niepotrzebne oprogramowanie z systemu. Aby zobaczyć zainstalowane pakiety, napisz

$ dpkg — list
$ dpkg — info
$ apt-get list

aby usunąć pakiet

$ sudo apt-get remove-y
$ sudo apt-get clean

Conlusion

bezpieczeństwo serwera Linux hartowanie jest bardzo ważne dla przedsiębiorstw i przedsiębiorstw. Jest to trudne i męczące zadanie dla administratorów systemu. Niektóre procesy mogą być zautomatyzowane przez niektóre zautomatyzowane narzędzia, takie jak SELinux i inne podobne oprogramowanie. Ponadto utrzymanie oprogramowania minimus i wyłączenie nieużywanych usług i portów zmniejsza powierzchnię ataku.



+