4 módszer az SSH-kapcsolatok felgyorsítására Linux alatt
Az SSH a legnépszerűbb és legbiztonságosabb módszer a Linux-kiszolgálók távoli kezelésére. A távoli kiszolgálókezelés egyik kihívása a kapcsolati sebesség, különösen, ha a távoli és a helyi gépek közötti munkamenet-létrehozásról van szó.
Ennek a folyamatnak számos szűk keresztmetszete van, az egyik forgatókönyv az, amikor először csatlakozik távoli kiszolgálóhoz; általában néhány másodpercet vesz igénybe a munkamenet létrehozása. Ha azonban több kapcsolatot próbál létrehozni egymás után, ez többletköltséget okoz (többlet vagy közvetett számítási idő, memória, sávszélesség vagy más kapcsolódó erőforrások kombinációja a művelet végrehajtásához).
Ebben a cikkben négy hasznos tippet osztunk meg a távoli SSH-kapcsolatok felgyorsítására Linux alatt.
1. SSH-kapcsolat kényszerítése IPV4-en keresztül
Az OpenSSH mindkét IPv4/IP6-ot támogatja, de időnként az IPv6 kapcsolatok általában lassabbak. Tehát megfontolhatja az ssh-kapcsolatok kényszerítését csak IPv4-en keresztül, az alábbi szintaxis használatával:
ssh -4 [email
Alternatív megoldásként használja az AddressFamily (meghatározza a csatlakozáskor használandó címcsaládot) direktívát az ssh konfigurációs fájlban /etc/ssh/ssh_config (globális konfiguráció) vagy a ~ /.ssh/config (felhasználóspecifikus fájl).
Az elfogadott értékek a következők: „any ”, „inet ” csak IPv4 esetén vagy „inet6 ”.
vi ~.ssh/config
Íme egy hasznos kezdő útmutató a felhasználóspecifikus ssh konfigurációs fájl konfigurálásához:
- Egyéni SSH-kapcsolatok konfigurálása a távoli hozzáférés egyszerűsítésére
Ezenkívül a távoli gépen utasíthatja az sshd démont, hogy fontolja meg az IPv4-en keresztüli kapcsolatokat az /etc/ssh/sshd_config fájlban található fenti direktíva használatával.
2. Tiltsa le a DNS-keresést a távoli gépen
Alapértelmezés szerint az sshd démon megkeresi a távoli gazdagép nevét, és azt is ellenőrzi, hogy a távoli IP-cím feloldott gazdagépneve ugyanarra az IP-címre vonatkozik-e. Ez késedelmet okozhat a kapcsolat létrehozásában vagy a munkamenet létrehozásában.
A UseDNS direktíva szabályozza a fenti funkciókat; letiltásához keressen rá, és törölje a megjegyzéseket az /etc/ssh/sshd_config fájlban. Ha nincs beállítva, adja hozzá a no
értékkel.
UseDNS no
3. Használja újra az SSH-kapcsolatot
Az ssh-kliens program segítségével kapcsolatot létesítenek egy távoli kapcsolatokat elfogadó sshd-démonnal. Új ssh-munkamenet létrehozásakor újra felhasználhatja a már létrehozott kapcsolatot, és ez jelentősen felgyorsíthatja a további munkameneteket.
Ezt a ~/.ssh/config fájlban engedélyezheti.
Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 600
A fenti konfiguráció (Host *) lehetővé teszi a kapcsolat újrafelhasználását minden távoli kiszolgálónál, amelyhez az alábbi direktívák használatával csatlakozik:
- ControlMaster – lehetővé teszi több munkamenet megosztását egyetlen hálózati kapcsolaton keresztül.
- ControlPath – a kapcsolat megosztásához használt vezérlőaljzat elérési útját határozza meg.
- ControlPersist – ha a ControlMaster-rel együtt használjuk, utasítja az ssh-t, hogy tartsa nyitva a fő kapcsolatot a háttérben (várva a jövőbeli klienskapcsolatokat), miután a kezdeti ügyfélkapcsolatot lezárták.
Engedélyezheti ezt egy adott távoli kiszolgálóval való kapcsolatokhoz, például:
Host server1
HostName www.example.com
IdentityFile ~/.ssh/webserver.pem
User username_here
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 600
Így csak az első csatlakozásnál kell elszenvedni a csatlakozási költségeket, és minden további kapcsolat sokkal gyorsabb lesz.
4. Használjon speciális SSH-hitelesítési módszert
Az ssh-kapcsolatok felgyorsításának egy másik módja egy adott hitelesítési módszer használata minden ssh-kapcsolathoz, és itt azt javasoljuk, hogy 5 egyszerű lépésben állítsa be az ssh jelszó nélküli bejelentkezést az ssh keygen használatával.
Ha ez megtörtént, használja a PreferredAuthentications direktívát a fenti ssh_config fájlokban (globális vagy felhasználóspecifikus). Ez a direktíva meghatározza, hogy az ügyfél milyen sorrendben próbálja ki a hitelesítési módszereket (megadhat egy parancsokkal elválasztott listát, ha egynél több módszert szeretne használni).
PreferredAuthentications=publickey
Opcionálisan használja az alábbi szintaxist a parancssorból.
ssh -o "PreferredAuthentications=publickey" [email
Ha a nem biztonságosnak ítélt jelszavas hitelesítést részesíti előnyben, használja ezt.
ssh -o "PreferredAuthentications=password" [email
Végül a fenti módosítások elvégzése után újra kell indítania az sshd démont.
systemctl restart sshd #Systemd
service sshd restart #SysVInit
Az itt használt direktívákkal kapcsolatos további információkért tekintse meg az ssh_config és az sshd_config kézikönyvoldalakat.
man ssh_config
man sshd_config
Tekintse meg ezeket a hasznos útmutatókat is az ssh Linux rendszereken való biztosításához:
- 5 bevált módszer az SSH-kiszolgáló biztonságossá tételéhez és védelméhez
- Az inaktív vagy tétlen SSH-kapcsolatok leválasztása Linux rendszerben
Ez minden most! Van valami tippje/trükkje az SSH-kapcsolatok felgyorsítására? Szeretnénk hallani ennek más módjairól. Az alábbi megjegyzés űrlap segítségével ossza meg velünk.