SSH je široko používaný protokol používaný na bezpečný prístup k serverom Linux. Väčšina používateľov používa pripojenia SSH s predvolenými nastaveniami na pripojenie k vzdialenému serveru. Nezabezpečené predvolené konfigurácie však predstavujú aj rôzne bezpečnostné riziká.

Koreňový účet servera s otvoreným prístupom SSH môže byť ohrozený. A najmä ak používate verejnú IP adresu, je oveľa jednoduchšie hacknúť root heslo. Preto je potrebné mať znalosti o bezpečnosti SSH.

Tu je návod, ako môžete zabezpečiť pripojenia k serveru SSH v systéme Linux.

1. Zakázať prihlásenie používateľa root

Najprv zakážte používateľovi root prístup SSH a vytvoriť nového používateľa s oprávneniami root. Vypnutie prístupu na server pre užívateľa typu root je obranná stratégia, ktorá útočníkom bráni dosiahnuť ich cieľ vniknúť do systému. Môžete napríklad vytvoriť používateľa s názvom ukážkový koreň nasledovne:

useradd -m exampleroot
passwd exampleroot
usermod -aG sudo exampleroot

Tu je stručné vysvetlenie vyššie uvedených príkazov:

instagram viewer
  • useradd vytvorí nového používateľa a -m Parameter vytvorí priečinok pod Domov adresár pre používateľa, ktorého ste vytvorili.
  • The passwd príkaz slúži na priradenie hesla novému používateľovi. Pamätajte, že heslá, ktoré prideľujete používateľom, by mali byť zložité a ťažko uhádnuteľné.
  • usermod -aG sudo pridá novovytvoreného používateľa do skupiny správcov.

Po procese vytvorenia používateľa je potrebné vykonať nejaké zmeny sshd_config súbor. Tento súbor nájdete na /etc/ssh/sshd_config. Otvorte súbor pomocou ľubovoľného textového editora a vykonajte v ňom nasledujúce zmeny:

# Overenie: 
#LoginGraceTime 2 m
PermitRootLogin č
AllowUsers exampleroot

PermitRootLogin linka zabráni užívateľovi root získať vzdialený prístup pomocou SSH. Počítajúc do toho ukážkový koreň v AllowUsers zoznam udeľuje používateľovi potrebné povolenia.

Nakoniec reštartujte službu SSH pomocou nasledujúceho príkazu:

sudo systemctl reštart ssh

Ak to zlyhá a zobrazí sa chybové hlásenie, skúste príkaz nižšie. To sa môže líšiť v závislosti od distribúcie Linuxu, ktorú používate.

sudo systemctl reštart sshd

2. Zmena predvoleného portu

Predvolený port pripojenia SSH je 22. Všetci útočníci to samozrejme vedia a preto je potrebné zmeniť predvolené číslo portu, aby bola zaistená bezpečnosť SSH. Hoci útočník môže ľahko nájsť nové číslo portu pri skenovaní Nmap, cieľom je tu sťažiť prácu útočníka.

Ak chcete zmeniť číslo portu, otvorte /etc/ssh/sshd_config a vykonajte v súbore nasledujúce zmeny:

Zahrnúť /etc/ssh/sshd_config.d/*.conf
Port 5922

Po tomto kroku znova reštartujte službu SSH pomocou sudo systemctl reštart ssh. Teraz môžete pristupovať k svojmu serveru pomocou portu, ktorý ste práve definovali. Ak používate bránu firewall, musíte vykonať potrebné zmeny pravidiel aj tam. Pri spustení netstat -tlpn môžete vidieť, že číslo vášho portu pre SSH sa zmenilo.

3. Blokovať prístup pre používateľov s prázdnymi heslami

Vo vašom systéme môžu byť používatelia bez hesla, ktoré ste mohli vytvoriť omylom. Ak chcete takýmto používateľom zabrániť v prístupe k serverom, môžete nastaviť PermitEmptyPasswords riadková hodnota v sshd_config súbor do č.

PovolenieEmptyHeslá č

4. Obmedziť pokusy o prihlásenie/prístup

V predvolenom nastavení môžete pristupovať na server vykonaním ľubovoľného počtu pokusov o zadanie hesla. Útočníci však môžu použiť túto zraniteľnosť na hrubú silu servera. Môžete automaticky ukončiť pripojenie SSH po určitom počte pokusov zadaním počtu povolených pokusov o zadanie hesla.

Za týmto účelom zmeňte MaxAuthTries hodnota v sshd_config súbor.

MaxAuthTries 3

5. Používanie SSH verzie 2

Druhá verzia SSH bola vydaná kvôli mnohým zraniteľnostiam v prvej verzii. V predvolenom nastavení môžete serveru povoliť používanie druhej verzie pridaním Protokol parameter k vášmu sshd_config súbor. Týmto spôsobom budú všetky vaše budúce pripojenia používať druhú verziu SSH.

Zahrnúť /etc/ssh/sshd_config.d/*.conf 
Protokol 2

6. Vypnutie presmerovania TCP portu a presmerovania X11

Útočníci sa môžu pokúsiť získať prístup k vašim ďalším systémom presmerovaním portov cez pripojenia SSH. Aby ste tomu zabránili, môžete vypnúť Povoliť preposielanie Tcp a X11 Preposielanie funkcie v sshd_config súbor.

X11Preposielanie č 
AllowTcpForwarding č

7. Pripojenie pomocou kľúča SSH

Jedným z najbezpečnejších spôsobov pripojenia k serveru je použitie kľúča SSH. Keď používate kľúč SSH, môžete pristupovať na server bez hesla. Okrem toho môžete úplne vypnúť prístup k serveru pomocou hesla zmenou parametrov súvisiacich s heslom v sshd_config súbor.

Keď vytvoríte kľúč SSH, existujú dva kľúče: Verejné a Súkromné. Verejný kľúč sa nahrá na server, ku ktorému sa chcete pripojiť, a súkromný kľúč sa uloží do počítača, pomocou ktorého vytvoríte spojenie.

Vytvorte kľúč SSH pomocou ssh-keygen príkaz na vašom počítači. Nenechávajte Prístupová fráza pole prázdne a zapamätajte si heslo, ktoré ste tu zadali. Ak ho necháte prázdne, budete k nemu môcť pristupovať iba pomocou súboru kľúča SSH. Ak však nastavíte heslo, môžete útočníkovi so súborom kľúčov zabrániť v prístupe k nemu. Ako príklad môžete vytvoriť kľúč SSH pomocou nasledujúceho príkazu:

ssh-keygen

8. Obmedzenia IP pre pripojenia SSH

Firewall väčšinou blokuje prístup pomocou rámcov vlastných štandardov a jeho cieľom je chrániť server. Nie vždy to však stačí a musíte tento bezpečnostný potenciál zvýšiť.

Ak to chcete urobiť, otvorte /etc/hosts.allow súbor. Pomocou doplnkov, ktoré urobíte v tomto súbore, môžete obmedziť povolenie SSH, povoliť blokovanie konkrétnej adresy IP alebo zadať jednu adresu IP a zablokovať všetky zostávajúce adresy IP pomocou príkazu zamietnuť.

Nižšie uvidíte niekoľko vzorových nastavení. Po vykonaní týchto krokov reštartujte službu SSH ako zvyčajne, aby ste uložili zmeny.

Význam zabezpečenia servera Linux

Otázky zabezpečenia údajov a údajov sú pomerne podrobné a mali by ich zvážiť všetci správcovia serverov. Bezpečnosť servera je veľmi citlivá záležitosť, keďže hlavným cieľom útokov sú webové servery, ktoré obsahujú takmer všetky informácie o systéme. Keďže väčšina serverov beží na infraštruktúre Linuxu, je veľmi dôležité poznať systém Linux a administráciu serverov.

Zabezpečenie SSH je len jedným zo spôsobov ochrany serverov. Je možné minimalizovať poškodenie, ktoré utrpíte, zastavením, zablokovaním alebo spomalením útoku. Okrem zabezpečenia SSH existuje mnoho rôznych metód, ktoré môžete implementovať na zabezpečenie svojich serverov Linux.