Kuidas OpenSSH-i serverit turvata ja karastada


Kui soovite juurde pääseda kaugseadmetele, näiteks serveritele, ruuteritele ja lülititele, on SSH-protokoll väga soovitatav, arvestades selle võimet krüpteerida liiklust ja tõrjuda kõiki, kes võivad proovida teie ühendusi pealt kuulata.

Olgu see nii, et SSH vaikeseaded pole eksimatud ja protokolli turvalisemaks muutmiseks on vaja täiendavaid muudatusi. Selles juhendis uurime erinevaid viise, mida saate kasutada OpenSSH-i serveris installimise kindlustamiseks ja tugevdamiseks.

1. Seadistage SSH paroolita autentimine

Vaikimisi nõuab SSH, et kasutajad esitaksid sisselogimisel oma paroolid. Kuid siin on nii: häkkerid saavad spetsiaalsete häkkimistööriistade abil paroole ära arvata või isegi toore rünnaku sooritada ja pääseda teie süsteemile juurde. Kindluse tagamiseks on SSH paroolita autentimise kasutamine väga soovitatav.

Esimene samm on luua SSH-võtmepaar, mis koosneb avalikust ja privaatvõtmest. Privaatvõti asub teie hostisüsteemis, samal ajal kui avalik võti kopeeritakse kaugserverisse.

Kui avalik võti on edukalt kopeeritud, saate nüüd SSH-i sujuvalt kaugserverisse sisse parooli sisestamata.

Järgmine samm on parooli autentimise keelamine. Selle saavutamiseks peate muutma SSH-i konfiguratsioonifaili.

$ sudo vim /etc/ssh/sshd_config

Konfiguratsioonifailis kerige ja leidke järgmine direktiiv. Märkige kommentaar ja muutke suvand yes väärtuseks no

PasswordAuthentication no

Seejärel taaskäivitage SSH deemon.

# sudo systemctl restart sshd

Sel hetkel on teil juurdepääs kaugserverile ainult SSH-võtme autentimise abil.

2. Keelake kasutaja SSH-i paroolita ühenduse taotlused

Teine soovitatav viis oma serveri turvalisuse tugevdamiseks on SSH-i sisselogimiste keelamine paroolita kasutajatelt. See kõlab natuke kummaliselt, kuid mõnikord saavad süsteemiadministraatorid luua kasutajakontosid ja unustada paroolid määramata - see on väga halb mõte.

Paroolita kasutajate taotluste tagasilükkamiseks minge uuesti konfiguratsioonifaili aadressil /etc/ssh/sshd_config ja veenduge, et teil oleks allpool toodud käsk:

PermitEmptyPasswords no

Seejärel taaskäivitage SSH-teenus muudatuse teostamiseks.

$ sudo systemctl restart sshd

3. Keela SSH juur-sisselogimised

Ei saa mõelda, mis võib juhtuda, kui häkker suudab teie juurparooli jõuliselt jõustada. Kaugjuure sisselogimise lubamine on alati halb mõte, mis võib ohustada teie süsteemi turvalisust.

Sel põhjusel on alati soovitatav keelata SSH-i juurjuure sisselogimine ja jääda selle asemel tavalisele mitte-juurkasutajale. Veelkord minge konfiguratsioonifaili ja muutke seda rida nagu näidatud.

PermitRootLogin no

Kui olete lõpetanud, taaskäivitage SSH-teenus muudatuse teostamiseks.

$ sudo systemctl restart sshd

Nüüdsest deaktiveeritakse juurjuure sisselogimine.

4. Kasutage SSH-protokolli 2

SSH-l on kaks versiooni: SSH-protokoll 1 ja protokoll 2. SSH-protokoll 2 võeti kasutusele 2006. aastal ja on tänu tugevale krüptograafilisele kontrollile, hulgikrüptimisele ja tugevatele algoritmidele turvalisem kui protokoll 1.

Vaikimisi kasutab SSH protokolli 1. Selle muutmiseks turvalisemaks protokolliks 2 lisage konfiguratsioonifaili allolev rida:

Protocol 2

Nagu alati, taaskäivitage SSH muudatuste jõustumiseks.

$ sudo systemctl restart sshd

Edaspidi kasutab SSH vaikimisi protokolli 2.

SSH 1. protokolli enam toetamise kontrollimiseks käivitage käsk:

$ ssh -1 [email protected]

Saate tõrke, mis ütleb: „SSH-protokolli v.1 ei toetata enam”.

Sel juhul oli käsk:

$ ssh -1 [email protected]

Lisaks võite lihtsalt määrata sildi -2 , et olla kindel, et protokoll 2 on vaikeprotokoll.

$ ssh -2 [email protected]

5. Määra SSH-ühenduse aegumise tühikäigu väärtus

Kui jätate arvuti pikemaks ajaks järelevalveta tühikäigu SSH-ühenduse abil, võib see põhjustada turvariski. Keegi võib lihtsalt mööda minna ja teie SSH-seansi üle võtta ning teha mida iganes. Probleemi lahendamiseks on seetõttu mõistlik seada tühikäigu piirang, mille ületamisel SSH-seanss suletakse.

Veelkord avage oma SSH konfiguratsioonifail ja leidke direktiiv „ClientAliveInterval“. Määrake mõistlik väärtus, näiteks olen määranud piiriks 180 sekundit.

ClientAliveInterval 180

See tähendab, et SSH seanss katkestatakse, kui tegevust ei registreerita 3 minuti pärast, mis on võrdne 180 sekundiga.

Seejärel taaskäivitage SSH deemon tehtud muudatuste rakendamiseks.

$ sudo systemctl restart sshd

6. Piirake SSH-i juurdepääsu teatud kasutajatele

Lisatud turbekihi jaoks saate määratleda kasutajad, kes vajavad SSH-protokolli sisselogimiseks ja süsteemi kaugülesannete täitmiseks. See hoiab ära kõik teised kasutajad, kes võivad proovida teie süsteemi siseneda ilma teie nõusolekuta.

Nagu alati, avage konfiguratsioonifail ja lisage direktiiv „AllowUsers“, millele järgnevad nende kasutajate nimed, kellele soovite anda. Allpool toodud näites olen lubanud kasutajatel 'tecmint' ja 'james' SSH kaudu süsteemile kaugjuurdepääsu. Kõik teised kaugjuurdepääsu proovivad kasutajad blokeeritakse.

AllowUsers tecmint james

Seejärel taaskäivitage SSH, et muudatused püsiksid.

$ sudo systemctl restart sshd

7. Konfigureerige paroolikatsete piirang

Veel üks viis turvakihi lisamiseks on SSH sisselogimiskatsete arvu piiramine nii, et pärast mitut ebaõnnestunud katset ühendus katkeb. Nii et minge veelkord konfiguratsioonifaili ja leidke direktiiv „MaxAuthTries” ning määrake väärtus maksimaalsele katsete arvule.

Selles näites on piiriks seatud 3 katset, nagu näidatud.

MaxAuthTries 3

Ja lõpuks taaskäivitage SSH-teenus nagu eelmistes stsenaariumides.

Need järgmised SSH-ga seotud artiklid võivad teile samuti kasulikud olla:

  • Kuidas installida OpenSSH 8.0 server Linuxist lähtekoodist
  • Kuidas installida Fail2Ban SSH kaitsmiseks saidil CentOS/RHEL 8
  • Kuidas muuta SSH-porti Linuxis
  • Kuidas luua Linuxis SSH-tunnelite loomist või pordi edastamist
  • 4 viisi SSH-ühenduste kiirendamiseks Linuxis
  • Kuidas leida kõik ebaõnnestunud SSH-i sisselogimiskatsed Linuxis
  • Kuidas lahutada mitteaktiivsed või tühikäigul olevad SSH-ühendused Linuxis

See oli kokkuvõte mõnedest meetmetest, mida saate SSH kaugühenduste kindlustamiseks võtta. Oluline on lisada, et kasutajatele, kellel on kaugjuurdepääs toorjõurünnakute nurjumiseks, peaksite alati määrama tugevad paroolid. Loodame, et leidsite selle juhendi mõistvalt. Teie tagasiside on teretulnud.