На моем рабочем месте блокировщик трафика/межсетевой экран постепенно ухудшался. Я не могу подключиться к своей домашней машине на порту 22, и отсутствие доступа к ssh меня огорчает. Ранее я мог использовать SSH, переместив его на порт 5050, но я думаю, что некоторые последние фильтры теперь рассматривают этот трафик как IM и, возможно, перенаправляют его через другой прокси. Это мое лучшее предположение; в любом случае, мои ssh-соединения теперь заканчиваются, прежде чем я войду в систему.
В наши дни я использую Ajaxterm через HTTPS, так как порт 443 по-прежнему без проблем, но это далеко не идеальный. (Эмуляция терминала Sucky, отсутствие переадресации портов, мой браузер теряет память с невероятной скоростью...) Я попытался настроить mod_proxy_connect
поверх mod_ssl
, с идеей, что я могу отправить запрос CONNECT localhost:22 HTTP/1.1
через HTTPS, и тогда все будет готово. К сожалению, это, похоже, не работает; соединение HTTPS работает, пока я не закончу отправку моего запроса; то SSL дерьмо. Похоже, что mod_proxy_connect
берет на себя все соединение вместо того, чтобы продолжать транслировать через mod_ssl
, сбивая с толку клиента HTTPS.
Есть ли способ заставить это работать? Я не хочу делать это по простому HTTP, по нескольким причинам:
- Оставив большой толстый открытый прокси, как будто просто воняет
- Большой толстый открытый прокси-сервер тоже не хорош по HTTPS, но с проверкой подлинности он чувствует себя хорошо для меня.
- HTTP проходит через прокси - я не слишком беспокоюсь о том, что мой трафик обнюхивается, так как это ssh, который будет проходить "открытый текст" через туннель, но он гораздо более правдоподобен, чем HTTPS, которые в принципе не могут быть проксимированы.
Требования:
- Должен работать над портом 443, не нарушая другого трафика HTTPS (т.е. я не могу просто поместить ssh-сервер на порт 443, потому что я больше не смогу обслуживать страницы через HTTPS)
- У меня есть или могу написать простой клиент пересылки портов, который работает под Windows (или Cygwin)
Изменить
DAG: туннелирование SSH через HTTP (S) было указано мне, но это не помогает: в конце статьи, они упоминают Ошибка 29744 - CONNECT не работает над существующим SSL-соединением, предотвращая туннелирование через HTTPS, в точности именно такую проблему, с которой я столкнулся. На данный момент я, вероятно, смотрю на CGI script, но я не хочу перечислять это как требование, если есть лучшие доступные решения.