Odpojení klienta sshd při neaktivitě

dezo2

Odpojení klienta sshd při neaktivitě
« kdy: 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.
« Poslední změna: 11. 11. 2022, 22:46:03 od Petr Krčmář »


Re:sshd - odpojeni klienta pri neaktivite
« Odpověď #1 kdy: 11. 11. 2022, 13:19:27 »
ClientAliveCountMax

Můžeš nastavit na 0, pak se nic nepošle.

Re:sshd - odpojeni klienta pri neaktivite
« Odpověď #2 kdy: 11. 11. 2022, 13:21:44 »
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.

dezo2

Re:sshd - odpojeni klienta pri neaktivite
« Odpověď #3 kdy: 11. 11. 2022, 15:00:33 »
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)

Re:sshd - odpojeni klienta pri neaktivite
« Odpověď #4 kdy: 11. 11. 2022, 16:32:35 »
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í.


dezo2

Re:sshd - odpojeni klienta pri neaktivite
« Odpověď #5 kdy: 11. 11. 2022, 16:54:56 »
Kdyz nastavim
Kód: [Vybrat]
ClientAliveInterval 15
ClientAliveCountMax 3             
tak po prihlaseni me to okamzite odpoji
Kód: [Vybrat]
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
Kód: [Vybrat]
ClientAliveInterval 60
ClientAliveCountMax 0
tak klient tam vydrzi naveky a navic sshd zere 100 % jednoho cpu jadra, dokud je user prihlasenej
Kód: [Vybrat]
debug3: receive packet: type 98
debug1: client_input_channel_req: channel 0 rtype keepalive@openssh.com reply 1
debug3: send packet: type 100

Re:Odpojení klienta sshd při neaktivitě
« Odpověď #6 kdy: 12. 11. 2022, 13:08:13 »
Viz manual: Setting a zero ClientAliveCountMax disables connection termination.