Вы когда-нибудь хотели установить ssh на свой Linux, который сидит за NAT?
Теперь вы можете использовать обратное SSH-туннелирование.
Эта мини статья покажет вам шаг за шагом, как настроить обратное SSH-туннелирование.
Обратное SSH-туннелирование должно отлично работать на Unix-подобных системах.
Предположим, что IP-адрес назначения – 192.168.20.55 (компьютер на Linux, к которому вы хотите получить доступ).
Вы хотите получить доступ с клиента Linux с IP 138.47.99.99.
Схема
Назначение (192.168.20.55) <- | NAT | <- Источник (138.47.99.99)
1. Подключаемся по SSH от адресата до источника (с открытым IP-адресом), используя следующую команду:
ssh -R 19999:localhost:22 sourceuser@138.47.99.99
* Порт 19999 может быть любым неиспользуемым портом.
2. Теперь вы можете использовать SSH из источника в пункт назначения через туннелирование SSH:
ssh localhost -p 19999
3. Сторонние серверы также могут обращаться к 192.168.20.55 через пункт назначения (138.47.99.99).
Схема
Назначение (192.168.20.55) <- | NAT | <- Источник (138.47.99.99) <- сервер Царева
3.1. С сервера Царева:
ssh sourceuser@138.47.99.99
3.2 После успешного входа :
ssh localhost -p 19999
* соединение между пунктом назначения и источником должно быть поднятым все время.
Совет: вы можете запустить команду (например, watch, top) на dst, чтобы поддерживать соединение.