Az SSH (Secure Shell) a végpontok közötti titkosított hálózati rendszer, amely lehetővé teszi a felhasználók számára, hogy távolról hozzáférjenek kliensről szerverre vagy rendszerre. Az aszimmetrikus kriptográfiai biztonsági rendszer miatt nagyjából biztonságos és biztonságos is a kiszolgálóhoz való hozzáférés, még egy nem biztonságos kliens hálózatról is. De néha inaktivitás vagy rossz hálózati jel miatt az SSH távoli hozzáférés megszakadhat. Bármi is az oka, Linux rendszergazdaként létfontosságú feladat, hogy az SSH munkameneteket és folyamatokat a bontás után is futtassák.
Az SSH munkamenetek lekapcsolásának okai
Dióhéjban: az SSH alagút proxy hibája, a hálózati időtúllépés, a rossz hálózati port használata, vagy akár a rendszerbe root felhasználóként nem bejelentkezve is leválaszthatja az SSH távoli adminisztrációjáról. Ebben a bejegyzésben az SSH-val kapcsolatos leggyakrabban feltett kérdéseket fogjuk megvitatni; hogyan lehet az SSH munkameneteket és folyamatokat futtatni a szétkapcsolás után.
1. Futtassa tovább az SSH munkameneteket a képernyő
Parancs
A képernyő
parancs a leggyakrabban használt és hasznos parancs az SSH adminisztrációhoz. A képernyő
parancs megoldhatja az IPv4 és az IPv6 címek hosztnévvel kapcsolatos problémáit. Gyökérfunkciókkal a képernyő
A parancs kijelentkezhet vagy elutasíthat egy munkamenetet az ügyfél végéről a kiszolgáló végére. Ha Ön még nagyon kezdő a Linux SSH-nál, íme néhány CLI, amely segíthet Önnek telepíteni és megtalálni a képernyő
parancs.
Ubuntu esetén:
$ sudo apt telepítő képernyő
OpenSUSE esetén:
$ sudo zypper telepítő képernyő
Arch Linux esetén:
$ sudo pacman -S képernyő
Red Hat Enterprise Linux esetén:
$ sudo yum telepítő képernyő
A telepítés befejezése után kezdje figyelemmel kísérni a rendszer kezdőképernyőjét.
$ screen $ screen --help
Miután megkapta a hozzáférést, SSH-t a szerverre, távolról szeretné elérni. Ha hosszú éjszakai munkát tervez állomásától, de nem szeretné lebuktatni SSH kliensét, használhatja a képernyő
parancs. Ez leválaszthatja a képernyős munkamenetet, de semmi gond, az Ön által kezdeményezett feladatok végrehajtásra kerülnek.
A képernyő leválasztásához nyomja meg a gombot Ctrl-A
és akkor Ctrl-D
a billentyűzetről. Bármikor bejelentkezhet, hogy figyelje a munka előrehaladását a terminálról. A munkamenet újracsatlakozásához vagy a meglévőhöz való csatlakozáshoz használja a következő parancssori felületet.
$ képernyő -r képernyő -D -r
2. Futtassa tovább az SSH munkameneteket a tmux
Eszköz
A tmux vagy terminál multiplexer nagyon népszerű és hasznos eszköz a programozók és a rendszergazdák számára, amely lehetővé teszi a felhasználók számára, hogy ugyanazon a terminálon váltsanak a programok között a programok között. Az SSH-munkamenetek háttérben történő futtatása érdekében, tmux
nagyon gyors megoldás lehet. Leválaszthatja és újracsatolhatja az alkalmazásokat, ahol a folyamatok a háttérben futnak. Itt található a tmux
Linux disztribúciókhoz.
Arch Linux esetén:
$ sudo pacman -S tmux
Red Hat Enterprise Linux esetén:
$ sudo yum install tmux
Ubuntu esetén:
$ sudo apt-get install tmux
OpenSUSE esetén:
$ sudo zypper install tmux
Telepítés után tmux
, indítsa el a tmux munkamenet
terminálparancsok segítségével. A telepítéshez nem kell sok idő. Miután befejezte a telepítést, most elkezdheti tmux
. Kezdeni tmux
, csak írja be a tmux-ot a terminálba.
$ tmux
Ha egynél több terminál multiplexert kell futtatnia, hogy az összes SSH munkamenet a háttérben futhasson, abban az esetben nehézségekbe ütközhet a váltás tmux
nak nek tmux
. Itt vannak a parancssorok az egyik formáról a másikra váltáshoz.
$ tmux detach $ tmux attach $ tmux attach -t 2
Az összes ellenőrzéséhez tmux
képernyőn használja a tmux-ot lista
parancs.
$ tmux ls
3. Futtassa tovább az SSH munkameneteket a byobu
Eszköz
A byobu eszközt leginkább az SSH távoli adminisztrációjához és a képernyőn történő monitorozáshoz használják Linuxon. Ez egy nyílt forráskódú szoftver, és a tmux
vagy a képernyő
eszköz. Az aktuális állapotot, értesítéseket és üzeneteket a byobu
eszköz. Bár a byobu
alapértelmezés szerint telepítve van az Ubuntuval. De ha nem, akkor telepítheti a Linux gépére. Annak ellenőrzésére, hogy byobu
telepítve van-e a rendszeredbe a byobu többi verziójának ellenőrzésével.
$ byobu --verzió
Ezután engedélyezze a byobu funkciót, ami segít az SSH-munkamenetek háttérben való futtatásában, még a bontás után is.
$ byobu-enable
Itt a telepítési folyamatokat a CLI magyarázza.
Ubuntu esetén:
$ sudo apt install byobu
OpenSUSE esetén:
$ sudo zypper addrepo https: // letöltés.opensuse.org / repositories / segédprogramok / openSUSE_Leap_42.3 / segédprogramok.repo
A $ sudo zypper frissítse a $ sudo zypper telepítő byobut
Arch Linux esetén:
$ yaourt -S byobu $ packer -S byobu
Red Hat Enterprise Linux esetén:
$ sudo yum install byobu
Fedora esetében:
$ sudo dnf install byobu
Kezdeni byobu
, írja be a byobu parancsot a terminálba, és nyomja meg az Enter billentyűt.
$ byobu
Most, ha a tmux
vagy a képernyő
, bármelyik közül választhat és kiválaszthatja a háttér-együttműködést.
$ byobu-select-backend
Mostantól kezelheti és fenntarthatja az SSH-munkameneteket a háttérben a bontás után, használja a rendszer billentyűzetének funkciógombjait. Az SSH használatának megkezdéséhez byobu mellett nyomja meg a gombot CTRL + SHIFT + F2
billentyűzetről az SSH környezet engedélyezéséhez. Az SSH-munkamenetek előre és hátra mozgatásához használhatja ALT + FEL
és ALT + LE
.
Az SSH-munkamenetek leválasztásához nyomja meg a gombot F6
a billentyűzetről. Ha most a leválasztást keresi, de nem kapcsolja le a munkamenetet, tessék. Az SSH-munkamenetek leválasztásához és a kapcsolódáshoz nyomja meg a gombot SHIFT + F6
. Itt van még egy extra billentyűparancs az Ön számára. Ha csak a képernyõ munkamenetét akarja aktívan tartani, és az összes többi ablakot bezárja, nyomja meg a gombot ALT + F6
.
4. Futtassa tovább az SSH munkameneteket a nohup
Parancs
A nohup
vagy a 'no hangup' parancs nagyon hasznos alternatív eszköz a képernyő vagy a tmux számára. Ez lehetővé teszi a felhasználók számára, hogy az SSH-munkameneteket a bontás után is futtassák. A nohup
parancs utasítja a rendszert, hogy az összes folyamatot futtassa a háttérben, elkerülve a jel felakasztását (SIGHUP).
A nohup
kézikönyvek és opciók alkotják a Linux terminált, írja be a következő parancsot a terminálba, és nyomja meg az Enter billentyűt.
$ nohup opciók
Az aktuálisan aktív munkalisták ellenőrzéséhez használja a -l
parancsot a terminálról.
$ munkahely -l
Az SSH-kapcsolathoz, a kapcsolat elvesztésének elkerülése és a munkamenetek futtatása érdekében a bontás után használja a munkája által követett nohup parancssort. A munkák kimeneti listáját szövegfájlban is megkaphatja, ha a cat parancsot használja a nohup parancs mellett.
$ nohup ./Helló.sh $ cat nohup.ki
Egy folyamat futtatásához a háttérben használhatja a &
szimbólum közvetlenül a nohup
parancs. Például, ha tesztelni akarom a pinget a wordpress-408970-1286763 fájlhoz.cloudwaysapps.com a háttérben, a parancssor pontosan olyan lesz, mint az alábbi sor. És amikor úgy gondolja, hogy a munkája kész, az eredmény megtekintéséhez használja a pgrep
parancs.
$ nohup ping ubuntupit.com & $ pgrep -a ping
5. Futtassa tovább az SSH munkameneteket a megtagad
Parancs
Ha nem rendelkezik a rendszer root jogosultságaival, akkor talán ez megoldja a problémát. A megtagad
paranccsal bármely feladatot nem listázhat a futó rendszer naplójában. Így elrejthet egy folyamatban lévő folyamatot, hogy elkerülje az összes automatikus kijelentkezési hibát vagy a jel lefagyását (SIGHUP). A diswon folyamatkezelési paranccsal valójában az SSH-munkameneteket a feladat elrejtésével futtathatja.
A feladat eltávolításához vagy elrejtéséhez a feladatkezelőben használja a terminál diswon parancsát.
$ letagadni
A feladat aktuális állapotának ellenőrzéséhez használja az aktuális shell parancsot.
$ jelenlegi shell
A feladatok listáját egy soros terminálparancsnál is beállíthatja.
$ disown job1 $ disown job1 job2 ... jobn
A feladatlista ellenőrzéséhez használja a -l
parancs.
$ munkahely -l
Az összes aktuális feladat eltávolításához az ablakból írja be a -a
szintaxist követi a disown parancs.
$ disown -a
Csak egy vagy a futó feladat eltávolításához az ablakból használja a -r
szintaxist követi a diswon parancs.
$ disown -r
Az SSH esetében a munka futtatásához a háttérben a munkamenet csatlakoztatása után használja a -h
szintaxis. Ez a folyamat az SSH-munkameneteket a bontás után is képes futtatni.
$ disown -h jobID $ disown -h% 2
A időtúllépés
Az SSH hibája az RHEL-ben
Amikor csatlakozik az SSH-hez a Red Hat Enterprise Linuxon (RHEL), gyakran előfordulhat, hogy időtúllépési problémát okoz, és elveszíti a kapcsolatot. Ez a probléma az érvénytelen válaszidő-űrlap miatt jelentkezik, akár az ügyfél, akár a gazdagép végén. A Red Hat gyökérkönyvtárában meg kell találnia és szerkesztenie kell a sshd_config.txt
fájlt az időtúllépés problémájának megoldására. Ha végzett, akkor a kapcsolat bontása után is visszakaphatja SSH-kapcsolatát.
Ott a sshd_config.txt
, fájlban két opciót fogsz megnevezni ClientAliveInterval
és ClientAliveCountMax
, ezeket a naplófájlokat szerkesztenie kell, hogy maximalizálja a kiszolgáló és az ügyfél válaszidejét. Az időkorlát intervallum kiszámításakor meg kell szorozni a ClientAliveInterval és a ClientAliveCountMax értékeket.
Csak annyit kell tennie, hogy ennek a két értéknek az időtartamát a rendszer és a hálózat válaszidejének megfelelően módosítsa. Hagyja, hogy maximalizálja az ügyfél-intervallum végének 10 percét és az ügyfélszámlálás ötszörösét, majd a szöveges nyilvántartást a sshd_config.txt
fájl olyan lesz, mint az alábbiakban. Ezután indítsa újra az SSH-t.
ClientAliveInterval 10m ClientAliveCountMax 5
Végső gondolatok
A rendszergazda számára az SSH munkamenetek és folyamatok folyamatos működtetése kulcsfontosságú feladat az ügyfél kielégítésére és a feladat teljesítésére. A bontott és gyakori foglalkozások elvesztése nagyon idegesítő és zavaró. Tehát ebben a bejegyzésben megpróbáltuk megvitatni és illusztrálni az SSH-munkamenetek lekapcsolásának okait, és ismertettük az összes lehetséges módszert arra, hogyan lehet az SSH-munkameneteket futtatni a bontás után.
Ha valaha is átesett az SSH munkamenet-bontás problémáján, és tudja, mennyire idegesítő lehet, kérjük, ossza meg velünk tapasztalatait. És akkor is tegye meg észrevételeit, ha bármi hozzáfűzhető, vagy kérdezne bármit, ami a bejegyzéshez kapcsolódik a megjegyzés részben. Ne felejtsd el megosztani ezt a bejegyzést barátaiddal a közösségi médiában.