У меня есть две машины под управлением CentOS linux, одна из них общедоступная с реальным IP-адресом (foo). Другой находится на сайте клиента за очень ограниченным брандмауэром и без реального IP-адреса и без возможности настроить или открыть для него порт (бар).
Я могу ssh из бара в foo, но, очевидно, не наоборот.
В идеале я хотел бы иметь возможность ssh от foo до bar, чтобы я мог отправлять файл, работать удаленно и т. Д. Был бы очень признателен за любую помощь или совет о том, как лучше всего заставить это работать, видел различные учебники в Интернете, которые предлагают должно быть возможно настроить VPN-соединение через ssh, но я не могу этого понять.
Йона
Это должно сделать это за вас (из бара):
ssh -R2222:localhost:22 foo
Затем на foo:
ssh localhost -p 2222
Первое соединение открывает удаленный порт переадресации, в результате чего порт 2222 на foo перенаправляется на порт 22 на bar. Итак, если вы используете ssh на порт 2222 на foo, вы действительно подключаетесь к bar. Затем вы можете добавить любые пересылки, которые вам нужны через это соединение ssh, для пересылки любых других портов.
Под Centos ответ выглядит следующим образом:
на панели (машина с ограничениями) выполните следующую команду:
ssh -N -R 1234:localhost:22 foo.theinternet.com
затем на foo (открытая машина) запустите:
ssh -p 1234 localhost
Я подозреваю, что в это нужно внести улучшения, но, надеюсь, этого будет достаточно, чтобы начать работу с гуглерами.
Спасибо pkaeding за то, что направил меня на правильный путь.
Вы можете создать tun-устройство, то есть полный туннель. Требования: возможно, root-доступ как на клиенте, так и на сервере, а также последние версии SSH.
# server /etc/ssh/sshd_config
PermitRootLogin yes
PermitTunnel yes
# client /etc/ssh/ssh_config
Tunnel yes
Connect with:
ssh -w any:any ...
Это создаст устройство tun0 как на клиенте, так и на сервере. Вы должны настроить IP:
# server
ifconfig tun0 192.168.55.1 pointopoint 192.168.55.2
# client
ifconfig tun0 192.168.55.2 pointopoint 192.168.55.1
Теперь маршруты, NAT, что угодно ...
В любом случае я бы не рекомендовал этот метод для автоматического подключения от bar к foo, т.е. в неинтерактивном режиме. Если сеанс TCP умирает, он не возрождается автоматически.
Ну, может ты сможешь это сделать respawn: http://www.deer-run.com/~hal/sysadmin/SSH-SyslogNG.html
Должен быть способ создать VPN между двумя хостами, не обязательно на основе SSH.
Похоже, вы ищете что-то, что работает как Wippien или Ремобо, вдохновленные дорогостоящим клиентом Hamachi.
Есть несколько вариантов, и при поиске на этом сайте можно найти множество ответов. Ты можешь переадресация портов. Вы можете использовать ssh как socks прокси. Или вы действительно можете туннель ip через ssh, используя что-то вроде ppp.