Мені впевнено здається, що ви все неправильно трактуєте ServerAliveCountMax. Як я розумію, документи, кількість повідомлень на сервері, що живуть, може залишатися без відповіді без припинення з'єднання. Тож у таких випадках, як ми тут обговорюємо, встановлення високого значення просто гарантуватиме, що висяче з'єднання не буде виявлено та припинено!
Просте встановлення ServerAliveInterval повинно бути достатнім, щоб вирішити проблему, коли брандмауер забув про з'єднання, а залишення ServerAliveCountMax низьким дозволить початковому кінці помітити помилку і припинити, якщо з'єднання все-таки не вдасться.
1) для того, щоб з'єднання постійно залишалося відкритим при звичайних обставинах; 2) для виявлення відмови з'єднання та вихідної сторони для виходу з ладу; 3) для повторної видачі команди ssh щоразу виходи (як це робиться від платформи, сценарій "в той час як справжній", запропонований Jawa, є одним із способів, на OS XI фактично налаштований запущений елемент).
watch
команду типу:watch -n1 60 echo "wiiiii"
. Тунель не загине, якщо мережа не зламана або ви не використовуєте її.