Вопрос про SSH тунель
kirx 8 июня, 2008 - 22:25
Я туплю, никак не могу найти решение такой задачи...
Есть комп с гентой и поднятым на нём sshd в локальной сети с адресом 192.168.1.2
Есть комп во внешнем мире тоже с гентой и с белым ИП.
Хочется прокинуть с компа в локальной сети 22й порт на какой-либо порт компа во внешней сети, чтобы можно было приэсэсашиться к компу в локалке из внешнего мира.
Как это сделать? Плиз, хэлп! man ssh читал, не помогло :(
»
- Для комментирования войдите или зарегистрируйтесь
Как Вы себе это
Как Вы себе это представляете?
нормально
нормально =)
курим ман по настройке iptables в сторону DNAT =)
___________________________________________
Gentoo GNU/Linux 2.6.25 GCC 4.2.3 && GCC 4.3.0
Working on Gentoo for iPAQ hx4700 :-)
Если у вас компьютер с Windows, есть два выхода: выбросить компьютер в форточку или выбросить форточки с компьютера
с "внешнего"
с "внешнего" компа
ssh [-Y[C]] юзер@внешний_ip_сети -p порт_на_ip_сети -L локальный_порт_на_"внешнем"_компе:ip-компа_внутри_сети_на_который_надо_попасть:порт_на_компе_на_который_надо_попасть
пример:
ssh -YC
-p 1022 -L 8888:192.168.0.222:3389
означает:
пробросить локальный порт 8888 на порт 192.168.0.222:3389, который нахоится внутри сети за компом, имеющийм внешний интерфейс contora.ru от имени vasja
для подглючения к порту 3389 компа 192.168.0.222, расположенного ЗА contora.ru, используется локальный порт 8888
и никаких нат-ов не надо
P.S.: google "Что такое NAT и почему он вам не нужен" - прям так статья называется. т.е. ssh умеет много :) и не нужен ни NAT, ни маршрутизатор. только внешний ip сети и ip компа внутри сети
P.P.S.: да! вникнуть в содержимое /etc/sshd_config. именно sshD_config. там есть еще ssh_config
P.P.P.S.: /etc/hosts.allow - для защиты. на contora.ru. формат прост:
sshd: external_ip/external_mask
all: local_ip/local_mask
указывает, что сервис sshd можно вызывать с внешнего_ip (или группы ip) с маской такой-то, а локальные ip могут вызывать любую службу. позволяет защититься от брутфоса. все запросы, кроме разрешенных ip, будут отклоняться.
соответственно. /etc/hosts.deny. фомат тот же
Всем спасибо за
Всем спасибо за ответы! Задачка решена, правда я воспользовался вот таким способом:
С домашнего компа
Потом захожу по ssh на машину moi.komp.vinete.ru и оттуда просто
В описаном примере на всех компах было одинаковое имя пользователя - user
Почему у меня не получается из внешнего мира сделать ssh moi.komp.vinete.ru -p 2224 я пока не осознал...
nmap moi.komp.vinete.ru - и
ssh localhost -p 2224 - на этот момент ssh-канал уже есть :) т.е. ты уже там :) а там НЕТ порта 2224 (скорее вссего). все-таки, попробуй, как я описал :). если грокк (человек с марса, Хайнлайн :) ), то тебе понравицо! :)
ЗЫ. в твоем случае правильно будет не -R, а -L.
-L - локал, -R ремоуте. в твоем случае -L надо :). я так через adsl-роутер к себе домой хожу. и могу юзать некоторые порты. например 3128 :)
ЗЫЫ: -Y - проброс иксов, -C - сжатие канала.