Tulisan ieu ngandung prakték pangsaéna pikeun ngagunakeun SSH sacara langkung efektif. Dina eta anjeun bakal diajar kumaha carana:
- Tambahkeun faktor kadua ka login SSH
- Aman nganggo agén diteruskeun
- Kaluar tina sési SSH anu kaganggu
- Tetep hiji terminal pengkuh muka
- Bagikeun sési terminal jauh sareng réréncangan (henteu Zoom!)
Nambahkeun faktor kadua pikeun SSH Anjeun
Anjeun tiasa nambihan faktor kadua auténtikasi kana sambungan SSH anjeun ku lima cara:
- Apdet OpenSSH anjeun sareng nganggo konci énkripsi. Dina Pébruari 2020, OpenSSH nambihan dukungan pikeun konci énkripsi FIDO U2F (Universal Second Factor). Ieu mangrupikeun fitur énggal anu saé, tapi aya guha: ngan ukur klien sareng server anu parantos diropéa kana OpenSSH 8.2 sareng anu langkung luhur bakal tiasa nganggo konci enkripsi, sabab pembaruan Pébruari ngenalkeun jinis konci anyar pikeun aranjeunna. Tim
ssh –Vanjeun tiasa pariksa versi klien tina SSH sareng versi server nganggo paréntahnc [servername] 22
Dua tipe anyar konci ditambahkeun kana versi Pébruari - ecdsa-sk na ed25519-sk (sareng jeung sertipikat pakait). Pikeun ngahasilkeun file konci, selapkeun konci enkripsi anjeun sareng jalankeun paréntah:$ ssh-keygen -t ecdsa-sk -f ~/.ssh/id_ecdsa_skBakal ngahasilkeun konci umum sareng swasta sareng ngahubungkeun sareng alat U2F anjeun. Tugas konci rusiah dina alat U2F nyaéta ngadekrip deskriptor konci rusiah dina disk nalika konci enkripsi diaktipkeun.
Salaku tambahan, salaku faktor sekundér, anjeun tiasa nyayogikeun frasa sandi pikeun konci anjeun.
Konci penduduk mangrupikeun jinis konci generasi -sk anu dirojong ku OpenSSH. Kalayan pendekatan ieu, cecekelan disimpen dina alat U2F tur ngidinan Anjeun pikeun mibanda eta kalawan konci enkripsi lamun diperlukeun. Anjeun tiasa nyiptakeun konci penduduk kalayan paréntah:
$ ssh-keygen -t ecdsa-sk -O resident -f ~/.ssh/id_ecdsa_skTeras, pikeun nempatkeun gagang kana mémori dina alat énggal, témpélkeun konci énkripsi sareng jalankeun paréntah:
$ ssh-add -KNalika nyambungkeun ka host, anjeun masih kedah ngaktipkeun konci enkripsi.
- Paké PIV + PKCS11 na Yubikey. Nyambungkeun ka alat-alat anu nganggo SSHD vérsi samemehna nganggo konci énkripsi ngabutuhkeun pendekatan anu béda. Yubico boga pituduh dina ngagunakeun U2F + SSH kalawan PIV / PKCS11. Ieu teu sarua jeung FIDO U2F, sarta sanajan metoda jalan, waktu nu diperlukeun loba karya pikeun inohong kaluar naon magic nyetir eta.
- Larapkeun custom yubikey-agén ssh agén. Filippo Valsorda nyerat agén SSH pikeun Yubikeys. Ieu sagemblengna anyar jeung ngandung fitur minimal.
- Anggo Touch ID sareng sekey. Sekey mangrupikeun agén SSH open source anu nyimpen konci pribadi dina enclave anu aman dina Mac sareng ngamungkinkeun Touch ID dianggo pikeun fungsionalitas aksés.
- Paké Single Sign Dina SSH. Kuring nulis tutorial pikeun mantuan Anjeun nyetél metoda ieu. Salah sahiji kauntungan tina tanda tunggal dina SSH nyaéta kamampuan pikeun ngungkit kawijakan kaamanan panyadia identitas anjeun - kalebet dukungan pikeun auténtikasi multi-faktor (MFA).
Aman ngagunakeun agén diteruskeun
Neruskeun agén SHH ngamungkinkeun host jauh pikeun ngaksés agén SSH alat lokal anjeun. Nalika anjeun nganggo SSH kalayan diteruskeun agén diaktipkeun (biasana via ssh -A), bakal aya dua saluran dina sambungan éta: sési interaktif anjeun sareng saluran pikeun diteruskeun agén. Ngaliwatan saluran ieu, stop kontak Unix dijieun ku agén SSH lokal Anjeun nyambung ka host jauh. Ieu métode picilakaeun sabab pamaké kalawan aksés root dina alat jauh bisa meunang aksés ka agén SSH lokal Anjeun tur berpotensi impersonate anjeun online. Nganggo agén SSH standar tina kit Open SSH, anjeun moal terang yén ieu kajantenan. Gaduh konci U2F (atanapi Sekey) bakal ngabantosan anjeun sacara efektif meungpeuk sagala usaha pikeun ngagunakeun agén SSH anjeun ti luar.
Malah ku pancegahan ieu, éta mangrupakeun ide nu sae pikeun ngagunakeun agén diteruskeun sakumaha saeutik-gancang. Anjeun teu kedah nganggo éta pikeun unggal sési - anggo agén diteruskeun ngan nalika anjeun yakin yén éta diperyogikeun pikeun sési ayeuna.
Kaluar tina sési gantung
Gangguan jaringan, program anu teu tiasa dikontrol, atanapi sekuen ngewa anu ngahalangan input keyboard mangrupikeun kamungkinan panyabab sési SSH dihentikan.
Aya sababaraha cara pikeun ngeureunkeun sési gantung:
- Kaluar sacara otomatis nalika jaringan diganggu. Anjeun kedah nambihan ieu kana .ssh/config anjeun:
ServerAliveInterval 5 ServerAliveCountMax 1ssh bakal ngirim kamandang ka host jauh unggal detik ServerAliveInterval pikeun mariksa sambunganna. Upami langkung ti ServerAliveCountMax echoes henteu nampi réspon, ssh bakal waktos kaluar sambungan sareng kaluar tina sési.
- Kaluar tina sési. ssh sacara standar ngagunakeun karakter ~ (tilde) salaku karakter kontrolna. Pasukan~. nutup sambungan kabuka sarta mulih deui ka terminal. (Urutan kabur ngan bisa diasupkeun dina garis anyar.) The ~? bakal mintonkeun daptar lengkep paréntah sadia dina sési ieu. Punten dicatet yén pikeun ngetik karakter ~ dina kibor internasional, anjeun kedah mencét tombol ~ dua kali.
Naha sesi beku lumangsung pisan? Nalika Internet dijieun, komputer jarang dipindahkeun ti hiji tempat ka tempat. Lamun anjeun make laptop tur pindah antara sababaraha jaringan IPv4 WiFi, alamat IP anjeun robah. Kusabab SSH ngandelkeun sambungan TCP, anu gilirannana ngandelkeun titik tungtung kalayan alamat IP anu stabil, iraha waé anjeun ngalih antara jaringan, sambungan SSH anjeun sono kana cecekelan stop kontak sareng sacara efektif leungit sorangan. Nalika alamat IP anjeun robih, peryogi waktos tumpukan jaringan anjeun pikeun ngadeteksi kaleungitan cecekelan. Nalika masalah jaringan lumangsung, urang teu hayang salah sahiji titik dina sambungan TCP mun nungtungan eta teuing mimiti. Ku alatan éta, protokol bakal nyoba ngirim deui data sababaraha kali saméméh tungtungna nyerah. Samentara éta, dina terminal anjeun sési bakal muncul beku. IPv6 nambihan sababaraha fitur anu aya hubunganana sareng mobilitas anu ngamungkinkeun alat pikeun ngajaga alamat asal na nalika ngarobih jaringan. Panginten hiji dinten ieu moal janten masalah sapertos kitu.
Kumaha ngajaga terminal pengkuh kabuka dina host jauh
Aya dua pendekatan anu béda pikeun ngajaga sambungan anjeun nalika pindah antara jaringan anu béda-béda atanapi hoyong pegatkeun sakedap.
1. Mangpaatkeun atawa
Upami anjeun leres-leres peryogi sambungan anu henteu putus sanajan anjeun pindah antara jaringan, paké cangkang sélulér Mosh. Ieu cangkang aman anu mimiti nganggo sasalaman SSH teras ngalih ka saluran énkripsi sorangan salami sési. Ieu kumaha Mosh nyiptakeun saluran anu misah, awét sareng aman anu tiasa nahan gangguan Internét, parobihan alamat IP laptop anjeun, gangguan jaringan anu serius, sareng seueur deui, sareng sadaya ieu berkat sihir sambungan UDP, ogé. salaku Mosh protokol sinkronisasi.
Pikeun ngagunakeun Mosh anjeun kedah pasang dina klien sareng server, sareng buka palabuhan 60000-61000 pikeun lalu lintas UPD anu henteu nyambung ka host jauh anjeun. Dina mangsa nu bakal datang, pikeun nyambungkeun eta bakal cukup ngagunakeun mosh user@server.
Mosh beroperasi dina tingkat layar sareng keystrokes, anu masihan sababaraha kaunggulan pikeun ngirim aliran binér input sareng kaluaran standar antara klien sareng server SSH. Upami urang ngan ukur kedah nyingkronkeun layar sareng ketukan kenop, teras mulangkeun sambungan anu rusak engké janten langkung gampang. Bari SSH bakal panyangga sarta ngirimkeun sagalana yén kajadian, Mosh ngan perlu panyangga keystrokes tur nyingkronkeun pigura panungtungan tina jandela terminal jeung klien nu.
2. Paké tmux
Upami anjeun hoyong "datang sareng angkat sakumaha anu anjeun pikahoyong" sareng ngajaga sési terminal dina host jauh, paké tmux. Abdi bogoh tmux sarta ngagunakeun eta sadaya waktu. Upami sambungan SSH anjeun kaganggu, teras uih deui ka sési tmux anjeun ngan ukur kedah sambungkeun deui sareng lebetkeun tmux attach. Salaku tambahan, éta gaduh fitur anu saé sapertos tab sareng panel intra-terminal, sami sareng tab dina terminal ios, sareng kamampuan ngabagi terminal ka batur.
Aya jalma anu resep ngahias tmux-na nganggo Byobu, hiji pakét anu sacara signifikan ningkatkeun kagunaan tmux sareng nambihan seueur jalan pintas kibor. Byobu hadir sareng Ubuntu, sareng gampang dipasang dina Mac via Homebrew.
Ngabagikeun sési terminal jauh sareng réréncangan
Sakapeung, nalika debugging masalah kompléks dina server Anjeun, Anjeun meureun hoyong bagikeun sési SSH jeung batur anu teu di kamar nu sami sareng anjeun. tmux sampurna pikeun tugas ieu! Éta ngan ukur butuh sababaraha léngkah:
- Pastikeun tmux dipasang dina titik bastion anjeun, atanapi dina server mana waé anu anjeun badé damel.
- Anjeun duanana kedah SSH kana alat nganggo akun anu sami.
- Salah sahiji anjeun kedah ngajalankeun tmux pikeun ngamimitian sési tmux.
- Anu sanésna kedah ngajalankeun tmux attach
- Voila! Anjeun gaduh terminal dibagikeun.
Upami anjeun hoyong sesi tmux multi-pamaké anu langkung canggih, cobian tmate, garpu tmux anu ngagampangkeun sési terminal anu dibagikeun.
sumber: www.habr.com
