Varför SSH väntar på vidarebefordrade anslutningar efter utloggning
Skilj på att fjärrskalet slutar och att vidarebefordrade kanaler slutförs när en SSH-session verkar inte avslutas.
Fjärrskalet och SOCKS-vidarebefordrade anslutningar är separata kanaler på en SSH-transport. Att avsluta skalet avslutar inte nödvändigtvis webbläsarens anslutningar som använder den dynamiska vidarebefordran. OpenSSH dokumenterar att man vid utloggning väntar på att vidarebefordrade anslutningar eller X11-sessioner avslutas.
För ett ordnat avslut stänger du åtgärderna som använder vidarebefordran och låter deras kanaler avslutas. Att stänga ett webbläsarfönster kan lämna bakgrundsprocesser och -anslutningar igång, så identifiera processen som fortfarande använder lyssnaren.
I en lämplig interaktiv session kan OpenSSH:s standard-escape-kommandon lista vidarebefordrade anslutningar eller koppla från explicit. Deras tillgänglighet beror på den sessionen och dess escape-konfiguration; att skicka interaktiv escape-text till en bakgrundsprocess ssh -N är inte ett allmänt avstängningsgränssnitt.
Innan du avbryter transporten, avgör om en anslutningsdelande master äger den. Andra sessioner kan vara beroende av samma anslutning.
ExitOnForwardFailure styr misslyckandet med att upprätta den begärda vidarebefordran. Den definierar inte ”avsluta efter den sista webbplatsförfrågan” eller ”avsluta varje kanal när skalet slutar”. Valet vid avstängning är om det återstående arbetet ska tömmas eller medvetet avbrytas.