Algengustu SSH stjórnunarnotkun og stillingar í Linux


Stutt: Í þessari handbók munum við fjalla um algeng notkunartilvik SSH. Við munum einnig ræða algengar SSH stillingar sem hægt er að nota í daglegu lífi til að auka framleiðni þína.

Secure Shell (SSH) er útbreidd netsamskiptareglur, sem gerir okkur kleift að hafa samskipti við ytri gestgjafa á öruggan hátt. Það veitir öryggi með því að dulkóða öll samskipti þeirra á milli.

Hvernig á að nota SSH stjórn í Linux

Í þessum hluta munum við ræða nokkur af vinsælustu notkunartilvikum SSH samskiptareglunnar.

Það eru ýmsar leiðir til að hafa samskipti við ytri Linux vélar með því að nota samskiptareglur eins og telnet, netcat, osfrv. Hins vegar eru þær ekki öruggar vegna skorts á dulkóðun. Við getum notað SSH samskiptareglur til að leyfa örugg samskipti milli gestgjafanna.

Við verðum að nota SSH viðskiptavin til að hafa samskipti við ytri gestgjafann. Það eru fullt af GUI og CLI byggðum viðskiptavinum í boði fyrir Linux. Hins vegar, í gegnum þessa handbók, munum við nota skipanalínuforrit sem kallast ssh. Sjálfgefið er að ssh tólið er fáanlegt í flestum Linux dreifingum.

Setningafræði SSH skipunarinnar er sem hér segir:

$ ssh [OPTIONS]  [COMMANDS] [ARGS]

Hér tákna hornklofa ([]) valfrjálsu rökin á meðan hornsvigar (<>) tákna lögboðin rök.

Tengjumst við ytri gestgjafann með því að nota ssh biðlarann:

$ ssh -l root 192.168.19.130

Í þessu dæmi tilgreindum við innskráningarnafnið með -l valkostinum og áfangastaðurinn er 192.168.19.130. SSH tengingin kemst á eftir að rétt lykilorð er slegið inn. Núna og áfram getum við framkvæmt skipanirnar á ytri hýsilinn alveg eins og staðbundið kerfi.

# hostname

Til að slíta lotunni getum við notað exit skipunina eða ctrl+D lyklasamsetningu.

Það er mikilvægt að hafa í huga að við verðum að auðkenna með ytri gestgjafanum fyrir hverja nýja lotu. Til að forðast að slá inn lykilorð í hvert skipti getum við sett upp SSH lykilorðslausa innskráningu.

Í fyrri hlutanum sáum við hvernig á að koma á tengingu við ytri hýsil, sem hentar aðeins þegar við ætlum að nota ytri hýsilinn í lengri tíma. Stundum þurfum við bara að framkvæma eina eða tvær skipanir á ytri gestgjafanum. Í slíkum tilvikum getum við framkvæmt þessar skipanir án þess að búa til langtímalotu.

Við skulum framkvæma hostname skipunina á ytri gestgjafanum:

$ ssh -l root 192.168.19.130 hostname

Á svipaðan hátt getum við framkvæmt margar skipanir á ytri Linux vél:

$ ssh -l root 192.168.19.130 'hostname; pwd'

Það er mikilvægt að hafa í huga að skipanirnar verða að vera innan gæsalappa og aðskildar með semíkommu (;). Ef þú vilt keyra skipanir á mörgum ytri Linux gestgjöfum, lestu greinina okkar - Pssh - Keyrðu skipanir á mörgum fjarlægum Linux gestgjöfum.

Svipað og skipanirnar getum við einnig framkvæmt staðbundið skriftu á ytri hýsilinn. Við skulum skilja þetta með dæmi.

Fyrst skaltu búa til einfalt skeljaforskrift á staðbundinni vél með keyrsluheimildum á því:

$ cat script.sh 

hostname
pwd

Nú skulum við framkvæma það á ytri gestgjafanum:

$ ssh [email  'bash -s' < ./script.sh 

Í þessu dæmi höfum við notað -s valmöguleikann í bash til að lesa handritið frá venjulegu inntakinu.

Við vinnum mjög oft með skrárnar og möppurnar. Ein algeng aðgerð sem notendur framkvæma er að afrita möppur og skrár. Rétt eins og staðbundnar vélar getum við afritað skrár og möppur á milli ytri gestgjafa með scp skipuninni, sem afritar skrárnar á öruggan hátt með því að nota SSH samskiptareglur.

Við skulum afrita script.sh skrána í /tmp möppuna á ytri hýsilinn:

$ scp script.sh [email :/tmp

Staðfestu nú að skráin hafi verið afrituð:

$ ssh [email  'ls /tmp/script.sh'

Á svipaðan hátt getum við notað scp skipunina til að afrita möppurnar. Hins vegar verðum við að nota -r valkostinn með skipuninni.

SSH styður gagnaþjöppun með því að nota gzip þjöppunaralgrímið, sem þjappar öllum mögulegum gagnastraumum eins og stdin, stdout, stderr og svo framvegis. Þessi valkostur kemur sér mjög vel þegar þú notar hægar nettengingar.

Við getum virkjað þjöppun á SSH með -C valkostinum:

$ ssh -C -l root 192.168.19.130 'hostname' 

Linux notendur þurfa oft að kemba SSH lotur til að kanna ýmis SSH tengingar og stillingartengd vandamál. Í slíkum tilfellum getum við virkjað margorða stillingu sem prentar villuleitarskrár núverandi lotu.

Við skulum virkja hina orðræðu stillingu með því að nota -v valkostinn:

$ ssh -v -l root 192.168.19.130 hostname

Til viðbótar við þetta getum við aukið orðræðustigið með því að nota marga -v valkostina.

  • -v – stillir orðræðustigið á 1 og veitir upplýsingar um starfsemi viðskiptavinarhliðar.
  • -vv – stillir orðræðustigið á 2 og veitir upplýsingar um virkni biðlarans og miðlara.
  • -vvv – stillir orðræðustigið á 3 og veitir ítarlegri upplýsingar um virkni biðlarans og miðlara.

Hámarks orðræðni sem SSH styður er 3. Við skulum sjá þetta í aðgerð:

$ ssh -vvv -l root 192.168.19.130 hostname

Í dæminu hér að ofan táknar debug1 kembiskilaboðin sem virkjað eru af orðræðustigi 1. Á sama hátt tákna debug2 og debug3 kembiskilaboðin sem eru virkjuð með orðræðustigum 2 og 3 í sömu röð.

Við getum notað flóttaraðir með SSH til að stjórna lokalotum viðskiptavinarins. Við skulum ræða algengar flóttaraðir með viðeigandi notkunartilvikum.

Stundum verðum við að framkvæma nokkrar aðgerðir á staðbundinni vél án þess að slíta núverandi SSH lotu. Í slíkri atburðarás getum við stöðvað núverandi lotu með því að nota ~ + ctrl+z lyklaröðina.

Fyrst skaltu skrá þig inn á ytri gestgjafann og framkvæma skipunina fyrir hostname:

$ ssh -l root 192.168.19.130
# hostname

Næst, til að fresta núverandi lotu skaltu fyrst slá inn tilde (~) staf og ýta síðan á ctrl+z takkana. Það er mikilvægt að hafa í huga að tilde (~) stafurinn mun ekki birtast á stdout fyrr en við ýtum á ctrl+z.

Nú skulum við ganga úr skugga um að fundinum hafi verið lokað:

$ jobs

Hér getum við séð að núverandi SSH lota er í gangi í bakgrunni.

Við skulum halda fundinum aftur með því að nota fg skipunina og framkvæma skipunina hostname:

$ fg %1

Ég er viss um að þú hlýtur að hafa séð frystu SSH fundina, sem gerast þegar lotan verður truflun af óstöðugu neti. Hér getum við ekki stöðvað lotuna með því að nota exit skipunina. Hins vegar getum við hætt því með \~ + .\ lyklaröðinni.

Fyrst skaltu skrá þig inn á ytri gestgjafann:

$ ssh -l root 192.168.19.130

Notaðu nú \~ + .\ lyklasamsetninguna til að slíta núverandi lotu.

Í þessu dæmi getum við séð að SSH sýnir skilaboðin - Tenging við 192.168.19.130 lokað.

Eitt áhugavert er að það er flóttaröð til að skrá allar studdar flóttaraðir. Við getum notað \~ + ? flóttaröðina til að skrá studdar flóttaröðina:

Hér verðum við að ýta á enter takkann til að koma út úr hjálparvalmyndinni.

Hvernig á að stilla SSH í Linux

Í þessum hluta munum við ræða stillingar miðlarahliðar til að herða SSH netþjóninn. SSH þjónn geymir allar stillingar sínar í /etc/ssh/sshd_config skránni. Það er mikilvægt að hafa í huga að rót notendaaðgangur er nauðsynlegur til að uppfæra SSH stillingar.

Sem besta starfsvenjan ættum við alltaf að birta borðann áður en SSH tenging er komið á. Í sumum tilfellum dregur það úr óviðkomandi notendum að fá aðgang að ytri gestgjöfum. Við skulum sjá hvernig á að virkja þessa stillingu skref fyrir skref.

Fyrst skaltu búa til textaskrá á ytri netþjóni með viðvörunarskilaboðum:

# vi /etc/banner.txt 

Næst skaltu bæta við eftirfarandi borðaskilaboðum:

*********************************************************************
Warning !!! You are trying to log in to techmint.com's server.
All the activities on this server are monitored.
Terminate the session immediately if you are not an authorized user.
*********************************************************************

Næst skaltu opna /etc/ssh/sshd_config skrána og tilgreina skrána með Banner tilskipuninni:

Banner /etc/banner.txt

Nú skaltu endurræsa sshd þjónustuna og slíta lotunni með því að nota exit skipunina:

# systemctl restart sshd
# exit

Að lokum, staðfestu borðann með því að skrá þig inn á ytri gestgjafann:

$ ssh -l root 192.168.19.130

Hér getum við að þjónninn birti SSH borðann rétt.

Hingað til notuðum við rótarnotandann til að fá aðgang að ytri hýsilnum. Hins vegar stríðir þetta gegn meginreglunni um minnstu forréttindi. Í framleiðsluumhverfi er aðgangur rótnotenda alltaf takmarkaður til að bæta öryggi.

Við getum notað PermitRootLogin tilskipunina til að slökkva á innskráningu rótnotanda.

Fyrst skaltu opna /etc/ssh/sshd_config skrána og nota valkostinn nei með PermitRootLogin tilskipuninni:

PermitRootLogin no

Nú skaltu endurræsa sshd þjónustuna og slíta lotunni með því að nota exit skipunina:

# systemctl restart sshd
# exit

Að lokum, staðfestu þetta með því að búa til nýja SSH lotu:

$ ssh -l root 192.168.19.130

Hér getum við séð að við getum ekki skráð okkur inn á ytri gestgjafann með rótnotandanum. Til að leyfa innskráningu rótnotanda getum við notað valkostinn með sömu tilskipun.

Sjálfgefið er að SSH notar TCP tengi 22. Hins vegar getum við stillt SSH til að keyra á annarri höfn, þ.e. 8088.

Fyrst skaltu opna /etc/ssh/sshd_config skrána og nota 8088 gildið með Port tilskipuninni:

Port 8088

Næst skaltu endurræsa sshd þjónustuna og slíta lotunni:

# systemctl restart sshd
# exit

Nú skulum við skrá okkur inn á ytri gestgjafann:

$ ssh -p 8088 -l root 192.168.19.130

Í þessu dæmi höfum við notað -p valkostinn til að tilgreina gáttarnúmerið.

Í sumum tilfellum verðum við að framkvæma nokkur önnur skref til að leyfa samskipti á tengi sem ekki er sjálfgefið. Svo sem eins og að bera kennsl á tiltæk höfn, uppfæra eldveggsreglur, SELinux stillingar osfrv.

Í þessari grein ræddum við SSH siðareglur og algeng notkunartilvik hennar. Næst ræddum við nokkra algenga valkosti. Að lokum ræddum við nokkrar stillingar til að tryggja SSH netþjóninn.

Veistu um einhverja aðra bestu SSH skipananotkun í Linux? Láttu okkur vita af skoðunum þínum í athugasemdunum hér að neðan.