SSH Тунели

Local port forwarding:

Пробросить туннель из сервера "remote.host:5901" к локальной машине 127.0.0.1:5901
Адрес "remote.host:5901" заменяется 127.0.0.1:5901 на локальном ПК, можно
запретить внешний вход на "remote.host:5901", но сервис на сервере
будет доступен по адресу 127.0.0.1:5901 после проброса порта.
И это будет локальный, не запрещённый доступ.

$ ssh -L 5901:127.0.0.1:5901 -N -f user@remote.host

Первый порт тот который вводиться на локальном пк для доступа к сервису на сервере (второй порт)

 
$ ssh -L localport:127.0.0.1:remoteportserver -N -f user@remote.host

Remote Port Forwarding:

Если надо показать свой ПК, (например сервер с сайтом на локальном компе разработки)
Ваш сайт (или сервис на клокальной машине) будет доступен через порт 3000
Внешний доступ будет remote.host:8080
(Сейчас это реализованно в VSCODE закладка ports - рядом с терминалом)
GatewayPorts = yes в /etc/ssh/sshd_conf (Сервер как шлюз портов)

$ ssh -R 8080:127.0.0.1:3000 -N -f user@remote.host

Dynamic Port Forwarding:

VPN без vpn. Проксировать трафик через порт сервера.
Если у вас VDS/VPS в другой стране, то ваш ip будет как у сервера (забугорный).

$ ssh -D 9090 -N -f user@remote.host

Бывает требуется освободить порт
$ fuser -vn tcp 9090
Выводит PID
Убиваем процесс: $ kill -9 PID

Далее требуется указать браузеру прокси:

Google:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="socks5://localhost:9090"

Firefox:

Комментарии

Популярные сообщения из этого блога

Fedora 39 WorkStation Toolbox

AI