ssh本地端口转发实现登陆远程数据库,以及实现跳转复制

/ 运维 / 没有评论 / 143浏览

一.本地转发:

1.现在一种情况是,有一个可以远程连接得服务器123.0.0.1,端口号为2222.然后在内网机器192.168.1.110上部署了数据库,端口号为5434.此时如果我想从本地运行代码,需要连接数据库;这是就需要将远程服务器当跳板机连接内网数据库;

输入得命令如下:

ssh  -L  5434:192.168.1.110:5434 -N zclogin@123.0.0.1 -p 2222 -f

-L :本地端口转发机制;

-N: 不打开shell,处于等待状态

 -f:后台运行

-g 启用网关功能(没用到)

命令一次是:

ssh -L 本地端口:远程服务器内网地址:远程服务器内网端口 -N (ssh能够连接上的远程服务器) -p (ssh远程服务器端口号) -f

2.此时配置数据库连接信息为:

url: jdbc:postgresql://127.0.0.1:5434/hepp?charSet=utf-8

二.远程转发

-R:远程端口转发

ssh -R 8080:localhost:80 user@host

ssh -R (ssh远程服务器的端口) : (ssh远程服务器能访问的主机host):(ssh远程服务器能访问的主机port)  ((ssh远程服务器)

三.通过跳板机复制:

拷贝数据:
scp -o proxycommand="ssh 10.34.11.11 nc %h %p" ./testfile.txt 10.34.12.12:/root/
登录服务器:
ssh -o proxycommand="ssh 10.34.11.11 nc %h %p" 10.34.12.12