SSH je široko korišten protokol koji se koristi za siguran pristup Linux poslužiteljima. Većina korisnika koristi SSH veze sa zadanim postavkama za povezivanje s udaljenim poslužiteljem. Međutim, nezaštićene zadane konfiguracije također predstavljaju različite sigurnosne rizike.

Root račun poslužitelja s otvorenim SSH pristupom može biti ugrožen. A pogotovo ako koristite javnu IP adresu, puno je lakše hakirati root lozinku. Stoga je potrebno imati znanje o SSH sigurnosti.

Evo kako možete osigurati svoje veze SSH poslužitelja na Linuxu.

1. Onemogućite prijave root korisnika

Za ovo prvo onemogućite SSH pristup root korisniku i stvoriti novog korisnika s root privilegijama. Isključivanje pristupa poslužitelju za root korisnika obrambena je strategija koja sprječava napadače da postignu svoj cilj upada u sustav. Na primjer, možete stvoriti korisnika pod imenom primjerkorijen kako slijedi:

useradd -m korijen primjera
passwd primjer korijena
usermod -aG sudo exampleroot

Evo kratkog objašnjenja gore navedenih naredbi:

instagram viewer
  • useradd stvara novog korisnika i -m parametar stvara mapu ispod Dom imenik za korisnika kojeg ste stvorili.
  • The passwd naredba služi za dodjeljivanje lozinke novom korisniku. Ne zaboravite da lozinke koje dodjeljujete korisnicima trebaju biti složene i teške za pogoditi.
  • korisnički mod -aG sudo dodaje novostvorenog korisnika u grupu administratora.

Nakon procesa kreiranja korisnika, potrebno je napraviti neke izmjene u sshd_config datoteka. Ovu datoteku možete pronaći na /etc/ssh/sshd_config. Otvorite datoteku bilo kojim uređivačem teksta i unesite sljedeće promjene:

# Ovjera: 
#LoginGraceTime 2m
DozvolaRootLogin br
AllowUsers exampleroot

Dozvoli korijensku prijavu linija će spriječiti root korisnika da dobije daljinski pristup koristeći SSH. Uključujući primjerkorijen u AllowUsers popis daje potrebna dopuštenja korisniku.

Na kraju ponovno pokrenite SSH uslugu pomoću sljedeće naredbe:

sudo systemctl ponovno pokrenite ssh

Ako to ne uspije i primite poruku o pogrešci, pokušajte s naredbom u nastavku. To se može razlikovati ovisno o distribuciji Linuxa koju koristite.

sudo systemctl ponovno pokrenite sshd

2. Promjena zadanog priključka

Zadani port za SSH vezu je 22. Naravno, svi napadači to znaju i stoga je potrebno promijeniti zadani broj porta kako bi se osigurala SSH sigurnost. Iako napadač može lako pronaći novi broj porta s Nmap skeniranjem, ovdje je cilj otežati posao napadaču.

Za promjenu broja priključka otvorite /etc/ssh/sshd_config i napravite sljedeće promjene u datoteci:

Uključiti /etc/ssh/sshd_config.d/*.conf
Priključak 5922

Nakon ovog koraka ponovno pokrenite SSH uslugu pomoću sudo systemctl ponovno pokrenite ssh. Sada možete pristupiti svom poslužitelju koristeći port koji ste upravo definirali. Ako koristite vatrozid, morate i tamo napraviti potrebne izmjene pravila. Prilikom pokretanja netstat -tlpn možete vidjeti da se vaš broj porta za SSH promijenio.

3. Blokirajte pristup korisnicima s praznim lozinkama

Na vašem sustavu mogu postojati korisnici bez lozinki koje ste možda slučajno stvorili. Kako biste spriječili takve korisnike da pristupe poslužiteljima, možete postaviti PermitEmptyPasswords vrijednost linije u sshd_config datoteka u Ne.

PermitEmptyPasswords br

4. Ograničite pokušaje prijave/pristupa

Prema zadanim postavkama, možete pristupiti poslužitelju tako da unesete lozinku koliko god želite. Međutim, napadači mogu iskoristiti ovu ranjivost za brutalni napad na poslužitelj. Možete automatski prekinuti SSH vezu nakon određenog broja pokušaja određivanjem broja dopuštenih pokušaja zaporke.

U tu svrhu promijenite MaxAuthTries vrijednost u sshd_config datoteka.

MaxAuthTries 3

5. Korištenje SSH verzije 2

Druga verzija SSH-a objavljena je zbog mnogih ranjivosti u prvoj verziji. Prema zadanim postavkama možete omogućiti poslužitelju da koristi drugu verziju dodavanjem Protokol parametar za vaš sshd_config datoteka. Na taj će način sve vaše buduće veze koristiti drugu verziju SSH-a.

Uključiti /etc/ssh/sshd_config.d/*.conf 
Protokol 2

6. Isključivanje prosljeđivanja TCP priključka i prosljeđivanja X11

Napadači mogu pokušati dobiti pristup vašim drugim sustavima prosljeđivanjem portova putem SSH veza. Kako biste to spriječili, možete isključiti AllowTcpForwarding i X11 Prosljeđivanje značajke u sshd_config datoteka.

X11Prosljeđivanje br 
AllowTcpForwarding br

7. Povezivanje pomoću SSH ključa

Jedan od najsigurnijih načina povezivanja s vašim poslužiteljem je korištenje SSH ključa. Kada koristite SSH ključ, možete pristupiti poslužitelju bez lozinke. Osim toga, možete potpuno isključiti pristup poslužitelju lozinkom promjenom parametara koji se odnose na lozinku u sshd_config datoteka.

Kada kreirate SSH ključ, postoje dva ključa: Javnost i Privatni. Javni ključ se učitava na poslužitelj na koji se želite spojiti, a privatni ključ se pohranjuje na računalu pomoću kojeg ćete uspostaviti vezu.

Stvorite SSH ključ s ssh-ključ naredba na vašem računalu. Ne napuštajte Lozinka polje prazno i ​​zapamtite lozinku koju ste ovdje unijeli. Ako ga ostavite praznim, moći ćete mu pristupiti samo pomoću datoteke SSH ključa. Međutim, ako postavite lozinku, možete spriječiti napadača s ključnom datotekom da joj pristupi. Kao primjer, možete stvoriti SSH ključ sa sljedećom naredbom:

ssh-ključ

8. IP ograničenja za SSH veze

Većinu vremena vatrozid blokira pristup koristeći okvire vlastitih standarda i ima za cilj zaštititi poslužitelj. Međutim, to nije uvijek dovoljno i morate povećati taj sigurnosni potencijal.

Da biste to učinili, otvorite /etc/hosts.allow datoteka. Uz dodatke koje unesete u ovu datoteku, možete ograničiti SSH dopuštenje, dopustiti određeni IP blok ili unijeti jednu IP adresu i blokirati sve preostale IP adrese s deny naredbom.

Ispod ćete vidjeti neke ogledne postavke. Nakon što to učinite, ponovno pokrenite SSH uslugu kao i obično da biste spremili promjene.

Važnost sigurnosti Linux poslužitelja

Podaci i pitanja sigurnosti podataka prilično su detaljna i svi bi ih administratori poslužitelja trebali razmotriti. Sigurnost poslužitelja vrlo je osjetljivo pitanje budući da su glavni fokus napada web poslužitelji, a oni sadrže gotovo sve informacije o sustavu. Budući da većina poslužitelja radi na Linux infrastrukturi, vrlo je važno poznavati Linux sustav i administraciju poslužitelja.

SSH sigurnost samo je jedan od načina zaštite poslužitelja. Moguće je smanjiti štetu koju pretrpite zaustavljanjem, blokiranjem ili usporavanjem napada. Osim pružanja SSH sigurnosti, postoji mnogo različitih metoda koje možete primijeniti da zaštitite svoje Linux poslužitelje.