Mbinu ndogo za SSH

Makala haya yana mbinu zetu bora za kutumia SSH kwa ufanisi zaidi. Ndani yake utajifunza jinsi ya:

  • Ongeza kipengele cha pili kwa kuingia kwa SSH
  • Tumia usambazaji wa wakala kwa usalama
  • Ondoka kwenye kipindi cha SSH kilichokatizwa
  • Weka terminal inayoendelea wazi
  • Shiriki kipindi cha terminal cha mbali na rafiki (hakuna Kuza!)

Kuongeza sababu ya pili kwa SSH yako

Unaweza kuongeza sababu ya pili ya uthibitishaji kwa miunganisho yako ya SSH kwa njia tano tofauti:

  1. Sasisha OpenSSH yako na utumie ufunguo wa usimbaji fiche. Mnamo Februari 2020, OpenSSH iliongeza usaidizi kwa funguo za usimbaji za FIDO U2F (Universal Second Factor). Hiki ni kipengele kipya kizuri, lakini kuna tahadhari: wale tu wateja na seva ambazo zimesasishwa hadi OpenSSH 8.2 na matoleo mapya zaidi zitaweza kutumia vitufe vya usimbaji fiche, kwa kuwa sasisho la Februari linawaletea aina mpya muhimu. Timu ssh –V unaweza kuangalia toleo la mteja la SSH na toleo la seva kwa amri nc [servername] 22

    Aina mbili mpya za funguo ziliongezwa kwa toleo la Februari - ecdsa-sk na ed25519-sk (pamoja na vyeti vinavyolingana). Ili kutoa faili muhimu, ingiza tu ufunguo wako wa usimbuaji na utekeleze amri:
    $ ssh-keygen -t ecdsa-sk -f ~/.ssh/id_ecdsa_sk

    Itazalisha funguo za umma na za faragha na kuzihusisha na kifaa chako cha U2F. Kazi ya ufunguo wa siri kwenye kifaa cha U2F ni kusimbua kielezi cha ufunguo wa siri kwenye diski wakati ufunguo wa usimbuaji umeanzishwa.

    Zaidi ya hayo, kama kipengele cha pili, unaweza kutoa neno la siri kwa funguo zako.

    Ufunguo wa Mkazi ni aina nyingine ya -sk key generation inayoungwa mkono na OpenSSH. Kwa mbinu hii, mpini huhifadhiwa kwenye kifaa cha U2F na hukuruhusu kuwa nacho kwa ufunguo wa usimbuaji inapohitajika. Unaweza kuunda ufunguo wa mkazi na amri:

    $ ssh-keygen -t ecdsa-sk -O resident -f ~/.ssh/id_ecdsa_sk

    Kisha, ili kurudisha kipini kwenye kumbukumbu kwenye kifaa kipya, bandika ufunguo wa usimbuaji na utekeleze amri:

    $ ssh-add -K

    Wakati wa kuunganisha kwa seva pangishi, bado utahitaji kuwezesha ufunguo wa usimbaji fiche.

  2. Tumia PIV+PKCS11 na Yubikey. Kuunganisha kwenye vifaa vilivyo na matoleo ya awali ya SSHD kwa kutumia ufunguo wa usimbaji fiche kutahitaji mbinu tofauti. Yubico ina mwongozo wa kutumia U2F+SSH na PIV/PKCS11. Hii si sawa na FIDO U2F, na ingawa njia hiyo inafanya kazi, inachukua kazi nyingi kujua ni uchawi gani unaiendesha.
  3. Tumia wakala maalum wa yubikey-agent ssh. Filippo Valsorda aliandika wakala wa SSH wa Yubikeys. Ni mpya kabisa na ina vipengele vidogo.
  4. Tumia Touch ID na sekey. Sekey ni wakala wa programu huria wa SSH ambaye huhifadhi funguo za faragha kwenye enclave salama kwenye Mac na kuruhusu Touch ID kutumika kwa utendakazi wa ufikiaji.
  5. Tumia Ishara Moja Kwenye SSH. Niliandika mafunzo ili kukusaidia kuanzisha njia hii. Mojawapo ya faida za ishara moja kwenye SSH ni uwezo wa kutumia sera za usalama za mtoa huduma wako wa kitambulisho - ikiwa ni pamoja na usaidizi wa uthibitishaji wa vipengele vingi (MFA).

Matumizi salama ya usambazaji wa wakala

Usambazaji wa wakala wa SHH huruhusu seva pangishi ya mbali kufikia wakala wa SSH wa kifaa chako. Unapotumia SSH na usambazaji wa wakala umewezeshwa (kawaida kupitia ssh -A), kutakuwa na chaneli mbili kwenye muunganisho: kipindi chako shirikishi na chaneli ya usambazaji wa wakala. Kupitia kituo hiki, soketi ya Unix iliyoundwa na wakala wako wa karibu wa SSH inaunganishwa na seva pangishi ya mbali. Hii ni njia hatari kwa sababu mtumiaji aliye na ufikiaji wa mizizi kwenye kifaa cha mbali anaweza kufikia wakala wako wa karibu wa SSH na uwezekano wa kukuiga mtandaoni. Kwa kutumia wakala wa kawaida wa SSH kutoka kwa Open SSH kit, hutajua hata kuwa hili lilifanyika. Kuwa na kitufe cha U2F (au Sekey) kutakusaidia kuzuia majaribio yoyote ya kutumia wakala wako wa SSH kutoka nje.

Hata kwa tahadhari hii, ni wazo nzuri kutumia usambazaji wa wakala kidogo iwezekanavyo. Haupaswi kuitumia kwa kila kipindi - tumia usambazaji wa wakala tu wakati una uhakika kuwa inahitajika kwa kipindi cha sasa.

Inatoka kwenye kikao cha kuning'inia

Kukatizwa kwa mtandao, programu zinazofanya kazi nje ya udhibiti, au mfuatano wa kuepuka unaozuia uingizaji wa kibodi ni sababu zinazowezekana za kipindi cha SSH kusitishwa.

Kuna njia kadhaa za kumaliza kikao cha hung:

  1. Ondoka kiotomatiki wakati mtandao umekatizwa. Unahitaji kuongeza yafuatayo kwenye .ssh/config:
    ServerAliveInterval 5
    ServerAliveCountMax 1

    ssh itatuma mwangwi kwa mwenyeji wa mbali kila sekunde za ServerAliveInterval ili kuangalia muunganisho. Ikiwa zaidi ya mwangwi wa ServerAliveCountMax haupokei jibu, ssh itamaliza muunganisho na kuondoka kwenye kipindi.

  2. Vunja nje ya kikao. ssh kwa chaguo-msingi hutumia ~ (tilde) herufi kama tabia yake ya kudhibiti. Timu ~. hufunga muunganisho wazi na kukurudisha kwenye terminal. (Mfuatano wa Escape unaweza tu kuingizwa kwenye mstari mpya.) The ~? itaonyesha orodha kamili ya amri zinazopatikana katika kipindi hiki. Tafadhali kumbuka kuwa kuandika ~ character kwenye kibodi za kimataifa, huenda ukahitaji kubonyeza kitufe cha ~ mara mbili.

Kwa nini vikao vya waliohifadhiwa hutokea wakati wote? Wakati mtandao ulipoundwa, kompyuta hazikusonga mara chache kutoka sehemu moja hadi nyingine. Unapotumia kompyuta za mkononi na kubadilisha kati ya mitandao mingi ya IPv4 WiFi, anwani yako ya IP inabadilika. Kwa kuwa SSH inategemea miunganisho ya TCP, ambayo nayo inategemea sehemu ya mwisho iliyo na anwani ya IP thabiti, wakati wowote unapobadilisha kati ya mitandao, miunganisho yako ya SSH hukosa mpini wa soketi na hupotea yenyewe. Anwani yako ya IP inapobadilika, inachukua muda kwa rafu ya mtandao wako kutambua upotevu wa mpini. Matatizo ya mtandao yanapotokea, hatutaki mojawapo ya nodi kwenye muunganisho wa TCP kuizima mapema sana. Kwa hivyo, itifaki itajaribu kutuma tena data mara kadhaa zaidi kabla ya kukata tamaa. Wakati huo huo, katika terminal yako kipindi kitaonekana kikiwa kimegandishwa. IPv6 huongeza vipengele kadhaa vinavyohusiana na uhamaji ambavyo huruhusu kifaa kudumisha anwani yake ya nyumbani wakati wa kubadilisha mitandao. Labda siku moja hii haitakuwa shida kama hiyo.

Jinsi ya kuweka terminal inayoendelea wazi kwenye seva pangishi ya mbali

Kuna mbinu mbili tofauti za jinsi ya kudumisha muunganisho wako wakati wa kusonga kati ya mitandao tofauti au kutaka kukata muunganisho kwa muda.

1. Tumia faida Mosh au Terminal ya Milele

Ikiwa unahitaji muunganisho ambao haukatiki hata unapobadilisha kati ya mitandao, tumia ganda la simu la Mosh. Hili ni ganda salama ambalo kwanza hutumia kupeana mkono kwa SSH na kisha kubadili hadi kituo chake chenye usimbaji fiche kwa muda wa kipindi. Hivi ndivyo Mosh huunda chaneli tofauti, ya kudumu sana na salama ambayo inaweza kustahimili usumbufu wa Mtandao, mabadiliko ya anwani ya IP ya kompyuta yako ndogo, kukatika kwa mtandao, na mengi zaidi, na yote haya shukrani kwa uchawi wa miunganisho ya UDP, vile vile. kama itifaki ya Mosh ya ulandanishi.

Ili kutumia Mosh utahitaji kuisakinisha kwenye kiteja na seva, na ufungue milango 60000-61000 kwa trafiki ya UPD isiyounganishwa kwa seva pangishi yako ya mbali. Katika siku zijazo, kuunganisha itakuwa ya kutosha kutumia mosh user@server.

Mosh hufanya kazi katika kiwango cha skrini na mibofyo ya vitufe, ambayo huipa idadi ya manufaa zaidi ya kutuma mkondo wa binary wa ingizo na pato la kawaida kati ya mteja na seva ya SSH. Ikiwa tunahitaji tu kusawazisha skrini na vibonye, ​​kisha kurejesha muunganisho uliovunjika baadaye inakuwa rahisi zaidi. Ingawa SSH itaakibisha na kutuma kila kitu kilichotokea, Mosh inahitaji tu kuakibisha vibonye vya vitufe na kusawazisha fremu ya mwisho ya dirisha la kifaa na mteja.

2. Tumia tmux

Ikiwa unataka "kuja na kwenda upendavyo" na kudumisha kipindi cha mwisho kwenye seva pangishi ya mbali, tumia terminal multiplexer tmux. Ninapenda tmux na ninaitumia wakati wote. Ikiwa muunganisho wako wa SSH umetatizwa, basi ili kurudi kwenye kikao chako cha tmux unahitaji tu kuunganisha tena na kuingia. tmux attach. Kwa kuongeza, ina sifa nzuri kama vile vichupo na paneli za intra-terminal, sawa na vichupo kwenye terminal ya iOS, na uwezo wa kushiriki vituo na wengine.

Baadhi ya watu hupenda kuboresha tmux yao kwa kutumia Byobu, kifurushi kinachoboresha kwa kiasi kikubwa utumiaji wa tmux na kuongeza njia nyingi za mkato za kibodi. Byobu huja na Ubuntu, na ni rahisi kusakinisha kwenye Mac kupitia Homebrew.

Kushiriki kipindi cha terminal cha mbali na rafiki

Wakati mwingine, unapotatua matatizo changamano kwenye seva zako, unaweza kutaka kushiriki kikao cha SSH na mtu ambaye hayuko katika chumba kimoja na wewe. tmux ni sawa kwa kazi hii! Inachukua hatua chache tu:

  1. Hakikisha kuwa tmux imesakinishwa kwenye nodi yako ya bastion, au kwenye seva yoyote utakayofanya kazi nayo.
  2. Nyote wawili mtahitaji SSH kwenye kifaa kwa kutumia akaunti sawa.
  3. Mmoja wenu lazima awe anaendesha tmux ili kuanza kipindi cha tmux.
  4. Nyingine inapaswa kukimbia tmux attach
  5. Voila! Una terminal iliyoshirikiwa.

Ikiwa unataka vipindi vya kisasa zaidi vya watumiaji wengi vya tmux, jaribu tmate, uma wa tmux ambao hurahisisha vipindi vya wastaafu vilivyoshirikiwa.

Chanzo: mapenzi.com

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS πŸ”₯ Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster