Fórum Root.cz
Hlavní témata => Server => Téma založeno: dezo2 11. 11. 2022, 12:34:26
-
Ahoj,
asi jsem slepej a v dokumentaci to nevidim, ale jak odpojim neaktivni ssh session od serveru? Nechci klientovi nic posilat (ClientAliveInterval), chci ho proste odpojit. Pokud chce zustat pripojenej, at se keepalivama snazi sam.
Diky.
-
ClientAliveCountMax
Můžeš nastavit na 0, pak se nic nepošle.
-
Nevím o tom, že by sshd takovou featuru nabízelo a ani bych v tom neviděl moc smysl. Ostatně ani zmíněné konfigurační direktivy ClientAliveInterval a ClientAliveCountMax neslouží k ukončení neaktivní session, ale k ukončení spojení, které už je mrtvé (klient neodpovídá na ty ClientAlive výzvy); takže v praxi se to používá spíš opačně: k udržení neaktivního spojení, které by jinak udusil connection tracking po cestě s příliš krátkými timeouty.
-
Myslel jsem session i s tcp, spatne jsem se vyjadril.
Kazdopadne toto
ClientAliveInterval 60
ClientAliveCountMax 0
nefunuguje. Klient zustava pripojenej a server ho neodpoji (openwrt 22.03.2, sshd 8.9)
-
Dodal bych, že tam ještě je tuším volba ~TCPKeepalive, je to nějak propletené, volby jsou na serveru i klientu a různě se ovlivňují.
-
Kdyz nastavim
ClientAliveInterval 15
ClientAliveCountMax 3
tak po prihlaseni me to okamzite odpoji
Fri Nov 11 16:44:25 2022 auth.info sshd[13563]: Accepted password for user from x.x.x.x port 13524 ssh2
Fri Nov 11 16:44:25 2022 auth.info sshd[13565]: Timeout, client not responding from user x.x.x.x port 13524
Pokud nastavim
ClientAliveInterval 60
ClientAliveCountMax 0
tak klient tam vydrzi naveky a navic sshd zere 100 % jednoho cpu jadra, dokud je user prihlasenej
debug3: receive packet: type 98
debug1: client_input_channel_req: channel 0 rtype keepalive@openssh.com reply 1
debug3: send packet: type 100
-
Viz manual: Setting a zero ClientAliveCountMax disables connection termination.