So much to learn, if only people would read man pages.<p><a href="https://linux.die.net/man/1/ssh" rel="nofollow">https://linux.die.net/man/1/ssh</a><p>See the "Escape Characters" section.<p>(Linux historically has terrible man pages compared to say the old SunOS man pages of yore, but the ssh man page is complete.)<p>(When I was first introduced to Unix, it was on SunOS. One day, I typed "man intro" [1]and about 8 hours of man page reading later, decided to call it a day.)<p>1. <a href="https://docs.oracle.com/cd/E19683-01/816-0210/6m6nb7m45/index.html" rel="nofollow">https://docs.oracle.com/cd/E19683-01/816-0210/6m6nb7m45/inde...</a><p>(Here's another thing you can do. Look at the list of commands in your PATH. I'll bet you're not familiar with all of them. Some will have curious names. Why not see what they do?)
Also, the ~ needs to be the first on the line, so the key sequence is often <return>~. to kill a hung session.<p>And good idea to ctrl-c ctrl-U before hitting return, just in case there was a command in the buffer and the session wasn’t actually hung up.
The most comfortably I ever saw a person wield the telnet/rsh/ssh escape sequences was when I was an intern, visiting a Cray division, to port some software. He was juggling multiple hops, to get to a machine across the room, with the panels off.<p>I'm guessing that juggling multiple hops might've been ordinary in Internet-based supercomputing center practice at the time. Including through terminal servers?<p>Though it would've been aesthetically cooler to sit at the console of a front-end processor of a Cray or Connection Machine.
<a href="https://en.wikipedia.org/wiki/Maxell#/media/File:Blown_Away_Guy_-_Maxell_ad.jpg" rel="nofollow">https://en.wikipedia.org/wiki/Maxell#/media/File:Blown_Away_...</a><p>(I ended up creating some multi-hop-to-go-10-feet situations myself at that company, such as for crudely gatewaying from our main Sun-dominated engineering LAN, to some porting systems, such as VAXstations that were only on DECnet. Half of the engineers had been developing things like LAN-accessed in-circuit emulators, borrowing other workstations' tape drives through rsh as part of a local Unix command pipeline, etc., so they were also unusually comfortable with the hops.)
Is this an openSSH thing and therefore an OpenBSD "thing"? I only ask because openBSD's `cu` uses the same ~. escape to exit out of a serial/tty connection.<p>I honestly had no idea ssh implemented the same escape until I read this.
Am I missing something here ? Surely all the author of the blog post needs to do is put :
ServerAliveInterval X
ServerAliveCountMax Y
In their client ssh config file ?
(Where X & Y are values that meet their needs)