Имеется такая ситуация:
комп №1 - "терминал". Имеет динамический IP, настроен no-ip.org, через который без проблем можно подключиться с компа №2 (что я при необходимости и делаю).
комп №2 - "сервер". Сидит за NAT-ом, имеется возможность подключиться к "терминалу" через ssh.
Как я понимаю: нужно подключиться через ssh с "сервера" к "терминалу". После чего перенаправить ввод/вывод. Так?
Как это сделать? Может быть есть какая-нибудь не сложная дока?
Необходимо для того, чтобы зайти на "сервер" с которого уже зайти через rdesktop на терминальный виндовый сервер.
Спасибо.
Как зайти через ssh на комп за NAT-ом? ("терминал" имеет реальный IP-адрес.)
Модератор: SLEDopit
Re: Как зайти через ssh на комп за NAT-ом?
Почитайте про перенаправление ("проброс") портов. Тогда, возможно, не придется выстраивать многоступенчатую цепочку подключений. Либо man ssh на предмет опции -X.
Re: Как зайти через ssh на комп за NAT-ом?
РЕШЕНО:
на main (это который за НАТом и к которому нужно получить доступ) запускаем что-то вроде (без пробела после собаки):
ssh -R 1234:localhost:2222 -p 2222 remote@ 192.168.3.1
192.168.3.1 - это адрес "терминала".
-R 1234:localhost:2222 - значит, что перенаправляем обращение с localhost:1234 на порт 2222 (у меня ssh в обоих случаях слушает данный порт).
remote - имя юзера на "терминале"
-p 2222 - порт, на котором sshd ждет-с.
Вводим пароль и устанавливается ssh-туннель.
Теперь на "терминале" запускаем что-то вроде:
ssh -p 1234 user@localhost
Т.е. стучимся через порт 1234 с localhost на удаленный комп, с которого выше устанавливали соединение.
user - имя пользователя на "main".
на main (это который за НАТом и к которому нужно получить доступ) запускаем что-то вроде (без пробела после собаки):
ssh -R 1234:localhost:2222 -p 2222 remote@ 192.168.3.1
192.168.3.1 - это адрес "терминала".
-R 1234:localhost:2222 - значит, что перенаправляем обращение с localhost:1234 на порт 2222 (у меня ssh в обоих случаях слушает данный порт).
remote - имя юзера на "терминале"
-p 2222 - порт, на котором sshd ждет-с.
Вводим пароль и устанавливается ssh-туннель.
Теперь на "терминале" запускаем что-то вроде:
ssh -p 1234 user@localhost
Т.е. стучимся через порт 1234 с localhost на удаленный комп, с которого выше устанавливали соединение.
user - имя пользователя на "main".
Re: Как зайти через ssh на комп за NAT-ом?
Ну что же, хороший вариант. Я тоже предпочитаю использовать проброс портов. :)
Re: Как зайти через ssh на комп за NAT-ом?
Код: Выделить всё
Простите, я не понял. Т.е. когда ты сидишь за компьютером "терминал", коннектишься на себя же по порту 1234, то система перебрасывает тебя на внешний ip, являющийся шлюзом для "сервера", а тот в свою очередь тебя отбросит, т.к. ничего не знает. Или тут получается постоянное соединение двух машин, на одной из которых висит проброс портов на другую? Т.е. если дома не внешний ip, а хочется подконнектиться по ссш, то коннектишься с неё на сервер (например на работе), делаешь эту хрень (туннель), они получаются соединены, а дальше соединяешься из любой точки мира на сервер по порту 1234 и он перебрасывает тебя на дом. машину, так?