Я щойно дізнався про функцію ControlMaster / ControlPath OpenSSH, яка дозволяє використовувати одне SSH-з'єднання для запуску декількох терміналів.
Оскільки я часто використовую SSH для переадресації портів для шифрування та аутентифікації сеансів VNC, я одразу визнав, що ви не можете додавати переадресацію портів на віддалений сервер, до якого у вас вже встановлено з'єднання. Це смокче.
Інколи пізніше я дізнався, що ви можете обійти це обмеження, ввівши ~ C під час запущеного сеансу SSH-терміналу. Це відкриває командний рядок, який дозволяє додавати або видаляти переадресацію портів.
Моє запитання зараз: Як я можу додати переадресацію портів на існуючий сеанс SSH, який використовує функцію ControlMaster / ControlPath, без необхідності мати доступ до термінального сеансу всередині цього сеансу SSH. Мені потрібно це, щоб увімкнути мій сценарій, який запускає захищене тунельоване з'єднання VNC для мене, щоб додати та пізніше видалити його переадресацію портів.
(Я знаю, що міг би використовувати термінальний мультиплексор, такий як GNU Screen або tmux. Насправді це вже роблю. Але мені подобається ідея використовувати лише один сеанс SSH з серральних причин.)