ssh туннель — это половина магии. Вторая половина — сделать этот туннель невидимым.
Я решал такую задачу: на работе есть сервер, например, cvs.office.com, нужен доступ, допустим, к CVS (порт 2401). Сервер, естественно, снаружи не виден, на него можно попасть только через gate.office.com, к которому есть ssh доступ. Необходимо обеспечить доступ к cvs.office.com:2401 с ноутбука, который может подключаться из офиса и из дома без необходимости что-либо перенастраивать на ноутбуке. Дома есть роутер (192.168.0.1) с линукс.
Во-первых, делаем туннель с роутера с авторизацией по ключу:
Туннель поддерживается не через cron, а с помощью autossh, который уже упоминался в предыдущих комментариях. На мой взгляд, использование autossh более явно выражает намерения :)
А теперь самое интересное — ноутбук, подключенный из дома, должен как и из офиса идти на cvs.office.com:2401
Его запрос перехватит роутер и направит его в туннель:
Теперь Вы знаете, что настоящие проблемы не технические, а человеческие :)
Всё-таки интересно, какие-такие в договоре специальные условия заставляют вас так прогибаться.
Лучше бы Яндекс дал возможность смотреть список штрафов. Вот такого сервиса для Москвы точно ни у кого нет. Вроде, есть в Татарстане. Этого я уже почт год хочу: www.all-x.net/2008/07/03/gibdd/
А я вот путаюсь при проходе торговых рядов в супермаркете или на рынке (раньше особенно на Митинском) — в конце одного ряда надо повернуть направо, а в следующий раз — налево. Скажите, чего бы заштриховать в этом случае? :)
Я аналогичную штуку попросил админов сделать в офисе для удобства доступа к интранет-сервисам. В качестве бонуса — поскольку домен тот же, на любой сервис можно зайти просто по имени в адресной строке браузера. Пример: если в адресной строке написать blog, попадаем в блог, если wiki — на wiki. Удобнее, чем закладки :)
У меня WD 320GB пару лет так висит, компьютер не выключается. Подвес должен обеспечивать маленькую амплитуду колебаний, то есть быть достаточно жестким. Тогда и колебания будут гаситься, и винчестер не умрет. Уж не помню, где этот вопрос обсуждался…
Под win даже два варианта есть — либо на компьютере за NAT запускается VNC сервер и ручками вводится ip адрес, с которого надо подключить клиента, либо с помощью UltraVNC Single Click создается exe ~170k, который сам запускает сервер и подключается к заранее заданному адресу. Во втором случае VNC заранее устанавливать не надо. Теоретически, оба решения возможны под Linux, практически — не сталкивался :(
Я решал такую задачу: на работе есть сервер, например, cvs.office.com, нужен доступ, допустим, к CVS (порт 2401). Сервер, естественно, снаружи не виден, на него можно попасть только через gate.office.com, к которому есть ssh доступ. Необходимо обеспечить доступ к cvs.office.com:2401 с ноутбука, который может подключаться из офиса и из дома без необходимости что-либо перенастраивать на ноутбуке. Дома есть роутер (192.168.0.1) с линукс.
Во-первых, делаем туннель с роутера с авторизацией по ключу:
autossh -M 0 -f username@gate.office.com \
-i /gate.ppk -N \
-L 192.168.0.1:12401:cvs.office.com:2401
Туннель поддерживается не через cron, а с помощью autossh, который уже упоминался в предыдущих комментариях. На мой взгляд, использование autossh более явно выражает намерения :)
А теперь самое интересное — ноутбук, подключенный из дома, должен как и из офиса идти на cvs.office.com:2401
Его запрос перехватит роутер и направит его в туннель:
iptables -t nat -A PREROUTING -p tcp -d cvs.office.com --dport 2401 -j DNAT --to-destination 192.168.0.1:12401
Такая прозрачность удобна, а в программах, которые не позволяют переназначить порт, бывает просто необходима. Надеюсь, идея кому-нибудь пригодится.
Всё-таки интересно, какие-такие в договоре специальные условия заставляют вас так прогибаться.