IP over terminal
Материал из Xgu.ru
Как известно, для того чтобы организовать IP-туннель между двумя точками, необходимо чтобы между этими точками существовал какой-либо двусторонний канал для обмена информацией.
[править] Туннель поверх прямого соединения: PPP поверх SSH
Одним из таких каналов может быть псевдотерминал (pty), например такой, как выделяется SSH-серверу для работы с ним SSH-клиента.
Пример, каким образом можно поднять IP-туннель между двумя хостами, если существует возможность доступа с одного хоста на другой при помощи протокола SSH:
host1%# pppd pty 'ssh -x -t -e none user@host2 /usr/sbin/pppd passive noauth 9600' noauth 10.0.0.1:10.0.0.2
Здесь, находясь на хосте host1 выполняется команда по заходу на хост host2, под учётной записью пользователя user.
В результате создаётся соединение точка-точка (PPP), на одном конце которого установлен адрес 10.0.0.1, а на втором — адрес 10.0.0.2.
[править] Соединение через несколько брандмауэров
В приведённом выше примере существует прямая TCP-связь между хостами. Тем не менее, в общем случае это не обязательно! Если есть возможность получить терминальный доступ на какую-то машину, на эту машину можно проложить IP-туннель. Речь, прежде всего, идёт о хостах, находящихся внутри сети за несколькими брандмауэрами, на которые есть терминальный доступ. Вы заходите на один брандмауэр, с него на другой, с него на третий, а с третьего — на конечный хост. И на этот хост вы можете проложить IP-туннель.
[править] Дополнительная информация
- PPP over SSH (англ.) — старая, но хорошая статья, где рассказывается об идее поднятия PPP-туннеля поверх SSH-соединения
|
---|