7 авг. 2008 г.

Всемогущий ssh

Думаю, сложно найти веб-разработичка, который бы не использовал ssh в своей работе. Но далеко не каждый знает о его возможностях. Когда-то очень давно я испытал ребяческий восторг впервые установив прямой канал между двумя компьютерами в несвязанных друг с другом private network. Сейчас уже стало привычным попросить человека в заNATченной сетке запустить на пару минут команду вида
ssh -R publicport:privatehost:22 user@publichost
и уже самому с privatehost запустить аналогичную команду, но уже через autossh. А тут вчера мой коллега из дальнего зарубежья вдруг просит дать ему попробовать кое-какие действия по HTTP с российских IP. Поднимать локальный прокси-сервер мне не хотелось, поэтому первая же моя мысль была, а не поможет ли мне здесь ssh? Но одно дело перенаправить соединение на определенный порт определенной машины, а другое дело дать возможность устанавливать соединение куда угодно. Надо отдать должное, и в этот раз нашлась нужная опция. Всего две команды
ssh -R remotesshport:localhost:22 me@remotehost
и уже оттуда
ssh -D '*:proxyport' -p remotesshport me@localhost
и SOCKS прокси настроен.