Bezpieczeństwo Linux
Linux posiada kilka stopni zabezpieczeń, które pomagają wykrywać oraz eliminować zagrożenia pochodzące z sieci zewnętrznej oraz lokalnej.
Przykadowe zabezpieczenia to firewall (iptables)
Analizator logów
Selinux
Szybkim i prostym sposobem uszczelnienia jest dodanie odpowiednich wpisów w pliku hosts.* który znajduje się w katalogu /etc/hosts.*
Zasada łączenia się ze zdalnego wygląda następująco
Maszyna próbująca podłączyć się do naszego serwera pokazuje swój IP oraz rodzaj usługi kolejnym krokiem jest odczytanie zawartości pliku hosts.allow (dozwolone) czyli sprawdzenie czy adres IP ma zezwolenie na dostęp zdalny. Jeżeli dany IP znajduje się na liście połączenie zostanie nawiązane w przeciwnym wypadku przszukuje plik /etc/hosts.deny (blokowane)
Dla zmaksymalizowania bezpieczeństwa w pliku hosts.deny dostęp blokowany jest dla wszystkich
wpisem
ALL : ALL
składnia wpisu jest następująca
service : host/network : option [: option]
gdzie
service - jest to nazwa usługi np. ftp, sshd, smtp, pop nie wpisujemy tu numeru portu
host/network - można używać poniższych konstrukcji
* wpis ALL oraz LOCAL
* adres IP np. 192.168.100.5
* Adres IPv6 [2f3f::]/10 lub [4c20:fe37:1:1::]/64
* IP Class A/B/C Subnet: 10.5 lub 172.6.5
* nazwa domeny np. mikro.wtoruniu.eu
* część adresu IP np. 192.168.
* część nazwy domeny np. .wtoruniu.eu
* składnia sieć/maska np. 192.168.1.0/255.255.255.0
* wykorzystać słowo EXCEPT
* ciąg adresów oddzielamy przecinkiem i spacją np. 192.168.100.5, 80.51.216.1
* Wild Cards: może być używana w następujący sposób:
- ALL: wszystkie adresy lub połączenia z danej domeny
- PARANOID: Klient o danej nazwie hosta w przypadku gdy nazwa nie pasuje. Nie dotyczy to hostów bez nazw
- LOCAL: Klienci przychodzący z tej samej maszyny lub domeny jak host
- UKNOWN: Klient którego nazwy nie może być powiązany z adresem
- KNOWN: Klient którego nazwę można powiązać z adresem IP
Poprawna skłądnia blokowania
sshd : bad.host : deny
sshd : 86.216.2. : deny
sshd : ALL : allow
SSHD w tym przypadku jest zablokowane dla wszystkich hostow z bad.host lub IP adres 86.216.2 pozostałe adresy mogą logować się przy pomocy SSH.
Inne przykłady wykorzystania wpisów w pliku hosts.allow
Blokowanie spamerów robimy wpis
sendmail : 192.168. : denny
Blokowanie przychodzących maili ze wszystkich adresów z zezwoleniem dla adresów 192.168.100
sendmail : 192.168.100. : allow
sendmail : ALL : deny
Blokowanie serwisu sendmail i przesyłanie komunikatu do wysyłającego
sendmail : ALL : twist /bin/echo "450 account busy, please try later."
sendmail : ALL : twist /bin/echo "550 Connection refused --too much spam from your IP"