4 būdai, kaip pagreitinti SSH ryšius sistemoje „Linux“


SSH yra populiariausias ir saugiausias būdas valdyti „Linux“ serverius nuotoliniu būdu. Vienas iš nuotolinio serverio valdymo iššūkių yra ryšio sparta, ypač kai reikia kurti sesijas tarp nuotolinių ir vietinių mašinų.

Šiame procese yra keletas kliūčių, vienas scenarijus yra tada, kai pirmą kartą prisijungiate prie nuotolinio serverio; užmegzti sesiją paprastai užtrunka kelias sekundes. Tačiau bandant užmegzti kelis ryšius iš eilės, tai sukelia pridėtines išlaidas (perteklinio ar netiesioginio skaičiavimo laiko, atminties, pralaidumo ar kitų susijusių išteklių derinys operacijai atlikti).

Šiame straipsnyje pasidalinsime keturiais naudingais patarimais, kaip paspartinti nuotolinius SSH ryšius sistemoje „Linux“.

1. Priverskite SSH ryšį per IPV4

„OpenSSH“ palaiko tiek „IPv4“, tiek „IP6“, tačiau kartais IPv6 ryšiai būna lėtesni. Taigi galite apsvarstyti galimybę priversti ssh ryšius tik per IPv4, naudodami toliau pateiktą sintaksę:

# ssh -4 [email 

Arba naudokite „AddressFamily“ (nurodo adresų šeimą, kurią reikia naudoti prisijungiant) direktyvą savo ssh konfigūracijos faile/etc/ssh/ssh_config (visuotinė konfigūracija) arba ~/.ssh/config (konkretaus vartotojo failas).

Priimamos reikšmės yra „bet koks“, „inet“ tik „IPv4“ arba „inet6“.

$ vi ~.ssh/config 

Čia yra naudingas pradedančiųjų vadovas, skirtas konfigūruoti konkrečiam vartotojui skirtą ssh konfigūracijos failą:

  1. Kaip konfigūruoti pasirinktinius SSH ryšius, kad supaprastintumėte nuotolinę prieigą

Be to, nuotoliniame kompiuteryje taip pat galite nurodyti sshd deemonui apsvarstyti ryšius per IPv4, naudodami aukščiau nurodytą direktyvą faile/etc/ssh/sshd_config.

2. Išjunkite DNS paiešką nuotoliniame kompiuteryje

Pagal numatytuosius nustatymus „sshd“ deimonas ieško nuotolinio kompiuterio pavadinimo ir taip pat patikrina, ar išspręstas nuotolinio IP adreso pagrindinio kompiuterio vardas atitiks tą patį IP adresą. Tai gali užtrukti užmegzti ryšį ar sukurti sesiją.

„UseDNS“ direktyva kontroliuoja aukščiau nurodytą funkcionalumą; Norėdami jį išjungti, ieškokite failo/etc/ssh/sshd_config ir panaikinkite jo komentarą. Jei jis nenustatytas, pridėkite jį su reikšme no .

UseDNS  no

3. Pakartotinai naudokite SSH ryšį

„SSH“ kliento programa naudojama norint užmegzti ryšius su „sshd“ demonu, priimančiu nuotolinius ryšius. Kurdami naują ssh seansą galite pakartotinai naudoti jau užmegztą ryšį ir tai gali žymiai pagreitinti tolesnius seansus.

Tai galite įgalinti savo ~/.ssh/config faile.

Host *
	ControlMaster auto
	ControlPath  ~/.ssh/sockets/%[email %h-%p
	ControlPersist 600

Aukščiau nurodyta konfigūracija (pagrindinė *) leis pakartotinai naudoti ryšį visuose nuotoliniuose serveriuose, prie kurių prisijungiate naudodamiesi šiomis direktyvomis:

  • „ControlMaster“ - leidžia dalytis keliais seansais per vieną tinklo ryšį.
  • „ControlPath“ - apibrėžia kelią į valdymo lizdą, naudojamą bendrinant ryšį.
  • „ControlPersist“ - jei naudojamas kartu su „ControlMaster“, liepia „ssh“ atidaryti pagrindinį ryšį fone (laukiant būsimų klientų ryšių), kai bus uždarytas pradinis kliento ryšys.

Tai galite įjungti prisijungdami prie konkretaus nuotolinio serverio, pavyzdžiui:

Host server1
	HostName   www.example.com
	IdentityFile  ~/.ssh/webserver.pem
      	User username_here
	ControlMaster auto
	ControlPath  ~/.ssh/sockets/%[email %h-%p
	ControlPersist  600

Tokiu būdu jūs patiriate tik pirmojo prisijungimo pridėtines išlaidas, o visos paskesnės jungtys bus daug greitesnės.

4. Naudokite specifinį SSH autentifikavimo metodą

Kitas būdas pagreitinti ssh ryšius yra naudoti nurodytą autentifikavimo metodą visoms ssh jungtims, ir čia mes rekomenduojame sukonfigūruoti ssh prisijungimą be slaptažodžių naudojant ssh keygen 5 paprastais žingsniais.

Kai tai bus padaryta, naudokite „PreferredAuthentications“ direktyvą aukščiau esančiuose „ssh_config“ failuose (visuotiniuose arba konkretiems vartotojams). Ši direktyva nustato tvarką, kuria klientas turėtų išbandyti autentifikavimo metodus (galite nurodyti komandų atskirtą sąrašą, kad galėtumėte naudoti daugiau nei vieną metodą).

PreferredAuthentications=publickey 

Pasirinktinai naudokite šią sintaksę žemiau iš komandinės eilutės.

# ssh -o "PreferredAuthentications=publickey" [email 

Jei pageidaujate slaptažodžio autentifikavimo, kuris laikomas nesaugiu, naudokite tai.

# ssh -o "PreferredAuthentications=password" [email 

Galiausiai, atlikę visus aukščiau nurodytus pakeitimus, turite iš naujo paleisti „sshd“ demoną.

# systemctl restart sshd	#Systemd
# service sshd restart 		#SysVInit

Norėdami gauti daugiau informacijos apie čia naudojamas direktyvas, žr. Ssh_config ir sshd_config žmogaus puslapius.

# man ssh_config
# man sshd_config 

Taip pat peržiūrėkite šiuos naudingus vadovus, kaip apsaugoti ssh „Linux“ sistemose:

  1. 5 geriausios SSH serverio apsaugos ir apsaugos praktikos
  2. Kaip atjungti neaktyvius arba tuščiosios eigos SSH ryšius sistemoje „Linux“

Tai kol kas viskas! Ar turite patarimų/gudrybių, kaip pagreitinti SSH ryšius. Norėtume išgirsti kitų būdų tai padaryti. Norėdami pasidalinti su mumis, naudokite toliau pateiktą komentaro formą.