Добавить в корзинуПозвонить
Найти в Дзене
Павлин Шарит

SSH tunnel: как попасть на базу через jump server

SSH tunnel: как попасть на базу через jump server Часто база данных или другие сервисы доступны только из внутренней сети - SSH туннели решают эту проблему Простой туннель до базы: # Пробрасываем порт 5432 с удаленного сервера на локальный 5433 ssh -L 5433:localhost:5432 user@jump-server.com # Теперь можем подключиться к базе локально psql -h localhost -p 5433 -U dbuser mydb Туннель через jump server: # База доступна только с app-server, но мы можем попасть на jump-server ssh -L 5433:app-server:5432 user@jump-server.com # Или более сложная цепочка ssh -J user@jump-server.com user@app-server -L 5433:db-server:5432 Автоматизация через SSH config: # ~/.ssh/config Host db-tunnel HostName jump-server.com User deploy LocalForward 5433 app-server:5432 # Теперь просто: ssh db-tunnel Reverse tunnel — доступ к локальному сервису с удаленного: # Пробрасываем локальный порт 8000 на удаленный сервер ssh -R 8080:localhost:8000 user@remote-server.com # Теперь на remote-server.com:8080 доступ

SSH tunnel: как попасть на базу через jump server

Часто база данных или другие сервисы доступны только из внутренней сети - SSH туннели решают эту проблему

Простой туннель до базы:

# Пробрасываем порт 5432 с удаленного сервера на локальный 5433

ssh -L 5433:localhost:5432 user@jump-server.com

# Теперь можем подключиться к базе локально

psql -h localhost -p 5433 -U dbuser mydb

Туннель через jump server:

# База доступна только с app-server, но мы можем попасть на jump-server

ssh -L 5433:app-server:5432 user@jump-server.com

# Или более сложная цепочка

ssh -J user@jump-server.com user@app-server -L 5433:db-server:5432

Автоматизация через SSH config:

# ~/.ssh/config

Host db-tunnel

HostName jump-server.com

User deploy

LocalForward 5433 app-server:5432

# Теперь просто: ssh db-tunnel

Reverse tunnel — доступ к локальному сервису с удаленного:

# Пробрасываем локальный порт 8000 на удаленный сервер

ssh -R 8080:localhost:8000 user@remote-server.com

# Теперь на remote-server.com:8080 доступен ваш локальный сервис

Особенно удобно для разработки - можете работать с дев базой локально, не открывая её в интернет

Туннель работает пока активна SSH сессия, для постоянного доступа добавьте -f (фоновый режим)

Поддержать на Boosty

Посмотреть на Youtube