Hvernig á að tryggja og herða OpenSSH Server


Þegar kemur að því að fá aðgang að ytri tækjum eins og netþjónum, beinum og rofum, þá er mjög mælt með SSH samskiptareglum í ljósi þess að hún getur dulkóðað umferð og bægt alla sem gætu reynt að hlera tengingar þínar.

Hvað sem því líður, þá eru sjálfgefnar stillingar SSH ekki óskeikular og frekari lagfæringar eru nauðsynlegar til að gera samskiptareglurnar öruggari. Í þessari handbók kannum við mismunandi leiðir sem þú getur notað til að tryggja og herða OpenSSH uppsetningu á þjóninum.

1. Settu upp SSH lykilorðslausa auðkenningu

Sjálfgefið er að SSH krefst þess að notendur gefi upp lykilorð sín þegar þeir skrá sig inn. En hér er málið: tölvuþrjótar geta giskað á lykilorð eða jafnvel framkvæmt brute force árás með því að nota sérstök tölvuþrjótverkfæri og fengið aðgang að kerfinu þínu. Til öryggis er mjög hvatt til notkunar á SSH lykilorðslausri auðkenningu.

Fyrsta skrefið er að búa til SSH lyklapar sem samanstendur af almennum lykli og einkalykli. Einkalykillinn er á hýsingarkerfinu þínu á meðan opinberi lykillinn er síðan afritaður á ytri netþjóninn.

Þegar opinberi lykillinn hefur tekist að afrita, geturðu nú SSH inn á ytri netþjóninn óaðfinnanlega án þess að þurfa að gefa upp lykilorð.

Næsta skref er að slökkva á auðkenningu lykilorðs, til að ná þessu þarftu að breyta SSH stillingarskránni.

$ sudo vim /etc/ssh/sshd_config

Inni í stillingarskránni skaltu skruna og finna eftirfarandi tilskipun. Taktu úr athugasemdum og breyttu valkostinum í nei

PasswordAuthentication no

Endurræstu síðan SSH púkann.

# sudo systemctl restart sshd

Á þessum tímapunkti muntu aðeins hafa aðgang að ytri netþjóninum með því að nota SSH lykla auðkenninguna.

2. Slökktu á notanda SSH lykilorðslausum tengingarbeiðnum

Önnur leið sem mælt er með til að styrkja öryggi netþjónsins þíns er að slökkva á SSH innskráningu frá notendum án lykilorða. Þetta hljómar svolítið undarlega en stundum geta kerfisstjórar búið til notendareikninga og gleymt að úthluta lykilorðum - sem er mjög slæm hugmynd.

Til að hafna beiðnum frá notendum án lykilorðs skaltu aftur fara yfir í stillingarskrána á /etc/ssh/sshd_config og tryggja að þú hafir tilskipunina hér að neðan:

PermitEmptyPasswords no

Endurræstu síðan SSH þjónustuna til að breytingin komi til framkvæmda.

$ sudo systemctl restart sshd

3. Slökktu á SSH Root Logins

Það er ekkert mál hvað getur gerst ef tölvusnápur tekst að þvinga rótarlykilorðið þitt. Að leyfa ytri rótarinnskráningu er undantekningarlaust slæm hugmynd sem gæti stofnað öryggi kerfisins þíns í hættu.

Af þessum sökum er alltaf mælt með því að slökkva á SSH fjarlægri rótarinnskráningu og halda þér í staðinn við venjulegan notanda sem er ekki rót. Enn og aftur, farðu yfir í stillingarskrána og breyttu þessari línu eins og sýnt er.

PermitRootLogin no

Þegar þú ert búinn skaltu endurræsa SSH þjónustuna til að breytingin komi til framkvæmda.

$ sudo systemctl restart sshd

Héðan í frá verður ytri rótinnskráning óvirk.

4. Notaðu SSH bókun 2

SSH kemur í tveimur útgáfum: SSH samskiptareglur 1 og samskiptareglur 2. SSH samskiptareglur 2 voru kynntar árið 2006 og eru öruggari en samskiptareglur 1 þökk sé öflugum dulritunarathugunum, magndulkóðun og öflugum reikniritum.

Sjálfgefið er að SSH notar samskiptareglur 1. Til að breyta þessu í öruggari bókun 2, bætið línunni hér að neðan við stillingarskrána:

Protocol 2

Eins og alltaf skaltu endurræsa SSH til að breytingarnar taki gildi.

$ sudo systemctl restart sshd

Framvegis mun SSH sjálfgefið nota bókun 2.

Til að prófa hvort SSH samskiptareglur 1 sé lengur studd skaltu keyra skipunina:

$ ssh -1 [email 

Þú munt fá villu sem segir „SSH samskiptareglur v.1 er ekki lengur studd“.

Í þessu tilviki var skipunin:

$ ssh -1 [email 

Að auki geturðu einfaldlega tilgreint -2 merkið bara til að vera viss um að bókun 2 sé sjálfgefna samskiptareglan í notkun.

$ ssh -2 [email 

5. Stilltu SSH Connection Timeout Idle Value

Að skilja tölvuna eftir eftirlitslausa í langan tíma með aðgerðalausa SSH tengingu getur valdið öryggisáhættu. Einhver getur einfaldlega farið framhjá og tekið við SSH-lotunni þinni og gert hvað sem honum þóknast. Til að takast á við málið er því skynsamlegt að setja aðgerðalaus tímamörk sem þegar farið er yfir það verður SSH lotunni lokað.

Enn og aftur, opnaðu SSH stillingarskrána þína og finndu tilskipunina „ClientAliveInterval“. Gefðu hæfilegu gildi, til dæmis hef ég sett mörkin á 180 sekúndur.

ClientAliveInterval 180

Þetta þýðir að SSH lotan fellur niður ef engin virkni er skráð eftir 3 mínútur sem jafngildir 180 sekúndum.

Endurræstu síðan SSH púkann til að framkvæma breytingarnar sem gerðar eru.

$ sudo systemctl restart sshd

6. Takmarka SSH aðgang við ákveðna notendur

Fyrir aukið öryggislag geturðu skilgreint þá notendur sem þurfa SSH samskiptareglur til að skrá sig inn og framkvæma ytri verkefni á kerfinu. Þetta kemur í veg fyrir alla aðra notendur sem gætu reynt að komast inn á kerfið þitt án þíns samþykkis.

Eins og alltaf, opnaðu stillingarskrána og bættu við tilskipuninni „AllowUsers“ á eftir nöfnum notenda sem þú vilt veita. Í dæminu hér að neðan hef ég leyft notendum „tecmint“ og „james“ að hafa fjaraðgang að kerfinu í gegnum SSH. Allir aðrir notendur sem reyna að fá fjaraðgang verða lokaðir.

AllowUsers tecmint james

Síðan endurræstu SSH til að breytingarnar haldist.

$ sudo systemctl restart sshd

7. Stilltu takmörk fyrir lykilorðstilraunir

Önnur leið sem þú getur bætt við öryggislagi er með því að takmarka fjölda SSH innskráningartilrauna þannig að eftir fjölda misheppnaðra tilrauna fellur tengingin niður. Svo farðu enn og aftur yfir í stillingarskrána og finndu \MaxAuthTries tilskipunina og skilgreindu gildi fyrir hámarksfjölda tilrauna.

Í þessu dæmi hefur mörkin verið stillt á 3 tilraunir eins og sýnt er.

MaxAuthTries 3

Og að lokum skaltu endurræsa SSH þjónustu eins og í fyrri atburðarás.

Þú gætir líka fundið þessar eftirfarandi SSH tengdar greinar gagnlegar:

  • Hvernig á að setja upp OpenSSH 8.0 Server frá uppruna í Linux
  • Hvernig á að setja upp Fail2Ban til að vernda SSH á CentOS/RHEL 8
  • Hvernig á að breyta SSH tengi í Linux
  • Hvernig á að búa til SSH göng eða höfn framsendingu í Linux
  • Fjórar leiðir til að flýta fyrir SSH-tengingum í Linux
  • Hvernig á að finna allar misheppnaðar SSH innskráningartilraunir í Linux
  • Hvernig á að aftengja óvirkar eða aðgerðalausar SSH-tengingar í Linux

Þetta var samantekt á sumum ráðstöfunum sem þú getur gert til að tryggja SSH fjartengingar þínar. Það er mikilvægt að bæta því við að þú ættir alltaf að úthluta sterkum lykilorðum til notenda sem hafa fjaraðgang til að koma í veg fyrir árásir með grimmdarkrafti. Það er von okkar að þér hafi fundist þessi handbók innsýn. Álit þitt er mjög vel þegið.