Заштита SSH-а са Fail2Ban-ом на Rocky Linux 9

Zaštita SSH servera od ključnog je značaja za očuvanje sigurnosti vašeg sistema. Neautorizovan pristup putem SSH protokola može dovesti do kompromitacije sistema i krađe poverljivih podataka. Da biste osigurali svoj SSH server od ovakvih opasnosti, neophodno je sprovesti snažne sigurnosne mere.

Jedan od efikasnih načina zaštite SSH servera je korišćenje Fail2Ban softvera. Fail2Ban je popularan alat otvorenog koda koji neprekidno analizira sistemske datoteke sa logovima i automatski blokira IP adrese koje pokazuju sumnjivo ponašanje.

U ovom tekstu, detaljno ćemo vas provesti kroz postupak instalacije i konfiguracije Fail2Ban-a na Rocky Linux 9. Takođe ćemo objasniti kako da kreirate prilagođena pravila kako biste zaštitili vaš SSH server od specifičnih napada.

Instalacija Fail2Ban

1. Osvežite sistem:

sudo dnf update

2. Instalirajte Fail2Ban:

sudo dnf install fail2ban

3. Pokrenite Fail2Ban servis:

sudo systemctl start fail2ban

4. Omogućite da se Fail2Ban automatski pokreće prilikom podizanja sistema:

sudo systemctl enable fail2ban

Konfigurisanje Fail2Ban-a

1. Otvorite konfiguracionu datoteku Fail2Ban-a:

sudo nano /etc/fail2ban/jail.conf

2. U datoteci izvršite sledeće izmene:


[DEFAULT]
ignoreip = 127.0.0.1/8
bantime = 86400

Trajanje blokiranja IP adrese u sekundama.


findtime = 600

Vremenski period (u sekundama) u kom se prati broj neuspešnih pokušaja.


maxretry = 3

Maksimalan broj neuspešnih pokušaja pre blokiranja IP adrese.

3. Sačuvajte izmene i zatvorite datoteku.

Konfigurisanje SSH sekcije

1. Otvorite konfiguracionu datoteku za SSH sekciju:

sudo nano /etc/fail2ban/jail.d/sshd.conf

2. Unesite sledeće izmene u datoteku:


[sshd]
enabled = true
port = ssh

Port na kojem sluša SSH server.


filter = sshd
logpath = /var/log/secure
maxretry = 3

3. Sačuvajte izmene i zatvorite datoteku.

Kreiranje prilagođenih pravila

Pored ugrađenih pravila koja dolaze sa Fail2Ban-om, možete kreirati sopstvena pravila kako biste se zaštitili od određenih vrsta napada. Na primer, možete napraviti pravilo za blokiranje IP adresa koje prečesto pristupaju vašem veb sajtu u kratkom vremenskom periodu.

Da biste kreirali prilagođeno pravilo, uradite sledeće:

1. Otvorite datoteku za prilagođena pravila:

sudo nano /etc/fail2ban/jail.local

2. U datoteku dodajte sledeći blok koda:


[<naziv_sekcije>]
enabled = true
port = <broj_porta>
filter = <naziv_filtera>
logpath = <putanja_do_log_datoteke>
maxretry = <maksimalan_broj_neuspešnih_pokušaja>

3. Zamenite <naziv_sekcije>, <broj_porta>, <naziv_filtera>, <putanja_do_log_datoteke> i <maksimalan_broj_neuspešnih_pokušaja> odgovarajućim vrednostima za vaše specifično pravilo.

4. Sačuvajte izmene i zatvorite datoteku.

Provera Fail2Ban-a

Nakon konfigurisanja Fail2Ban-a, možete proveriti da li ispravno funkcioniše. To možete uraditi izvršavanjem sledeće komande:

sudo fail2ban-client status

Ova komanda će prikazati listu trenutno blokiranih IP adresa.

Zaključak

Primena Fail2Ban-a na Rocky Linux 9 predstavlja efikasan način zaštite SSH servera od neovlašćenog pristupa i različitih vrsta napada. Prateći ovaj detaljan vodič i pravilno konfigurišući Fail2Ban, možete značajno poboljšati sigurnost vašeg sistema.

Osim Fail2Ban-a, postoje i druge mere koje možete preduzeti za dodatnu zaštitu vašeg SSH servera, kao što su:

  • Korišćenje kompleksnih lozinki
  • Omogućavanje dvofaktorske autentifikacije
  • Ograničavanje SSH pristupa sa nepouzdanih izvora
  • Smanjenje broja dozvoljenih neuspešnih pokušaja prijave
  • Redovno ažuriranje softvera

Implementiranjem ovih mera, možete izgraditi sigurnu i robusnu SSH infrastrukturu koja će pouzdano zaštititi vaše sisteme od potencijalnih kompromitacija.

Često postavljana pitanja (FAQ)

1. Koje su prednosti korišćenja Fail2Ban-a?

Fail2Ban pruža brojne prednosti, uključujući:

  • Automatsko blokiranje IP adresa koje pokazuju sumnjivo ponašanje
  • Zaštitu od napada grubom silom
  • Smanjenje rizika od kompromitacije sistema
  • Jednostavnu konfiguraciju i upravljanje

2. Koja pravila su uključena u podrazumevanoj konfiguraciji Fail2Ban-a?

Podrazumevana konfiguracija Fail2Ban-a uključuje pravila za zaštitu sledećih servisa:

  • SSH
  • FTP
  • HTTP
  • SMTP

3. Kako mogu da kreiram prilagođena pravila u Fail2Ban-u?

Za kreiranje prilagođenih pravila u Fail2Ban-u, potrebno je napraviti novu datoteku u direktorijumu /etc/fail2ban/jail.d/. Sadržaj datoteke treba da prati isti format kao i podrazumevane konfiguracione datoteke.

4. Kako da proverim da li Fail2Ban ispravno funkcioniše?

Za proveru da li Fail2Ban ispravno funkcioniše, možete izvršiti sledeću komandu:

sudo fail2ban-client status

Ova komanda će prikazati listu trenutno blokiranih IP adresa.

5. Mogu li isključiti određene IP adrese iz blokiranja Fail2Ban-a?

Da, moguće je isključiti određene IP adrese iz blokiranja tako što ćete dodati sledeći red u konfiguracionu datoteku /etc/fail2ban/jail.conf:

ignoreip = <IP_adresa_koju_zelite_iskljuciti>

6. Kako mogu da promenim trajanje blokiranja u Fail2Ban-u?

Da biste promenili trajanje blokiranja u Fail2Ban-u, izmenite sledeću opciju u konfiguracionoj datoteci /etc/fail2ban/jail.conf:

bantime = <broj_sekundi>

7. Kako da podesim maksimalan broj neuspešnih pokušaja prijave u Fail2Ban-u?

Da biste podesili maksimalan broj neuspešnih pokušaja prijave u Fail2Ban-u, izmenite sledeću opciju u konfiguracionoj datoteci /etc/fail2ban/jail.conf:

maxretry = <broj_pokusaja>