现在有2台服务器,1个Redis,1个MySQL,1个网站。
访问目标服务器需要代理服务器作为跳板机,不能直接访问。访问Redis和MySQL需要目标服务器代理去访问,访问网站也是需要目标服务器代理去访问。
Temius连接目标服务器
建立代理转发端口
建立端口转发规则,通过代理服务器连接到远程服务器,并将本地端口9999映射到远程服务器的22端口。
ssh -g -N -f -o ServerAliveInterval=60 -L 127.0.0.1:9999:{remote_ip}:22 root@{proxy_ip}
输入代理服务器密码,建立连接
ssh
: 表示使用SSH协议进行连接。-g
: 表示启用全局请求转发功能,即允许在本地机器上执行远程命令时,将命令的输出发送到本地端口。-N
: 表示不执行远程命令,只建立连接并保持连接状态。-f
: 表示在后台运行SSH会话,即使SSH客户端退出也不会关闭连接。-o ServerAliveInterval=60
: 设置服务器保持连接的时间间隔为60秒。如果在这个时间间隔内没有收到任何数据包,SSH客户端将认为连接已断开,并尝试重新连接。-L 127.0.0.1:9999:{remote_ip}:22
: 将本地端口9999映射到远程服务器的IP地址和端口号。这样,你可以通过访问本地的9999端口来访问远程服务器的22端口。root@{proxy_ip}
: 指定要连接的代理服务器的用户名和IP地址。这里使用的是root用户,你可以根据实际情况修改为其他用户名。
termius建立连接
配置地址为 127.0.0.1 ,端口为 9999 ,输入目标服务器的用户名和密码。建立连接。
DataGrip连接MySQL
在属性页面正常输入数据库地址、端口、访问用户名和密码。
勾选SSH隧道,建立一条SSH隧道选项。
SSH隧道信息:
- 主机:127.0.0.1
- 端口:9999
- 用户名:目标服务器用户名
- 本地端口:不冲突未使用的任意端口
- 身份验证:密码,输入密码
勾选配置上的SSH隧道,就能连接到数据库MySQL了。
redis-pro连接Redis
选中SSH连接方式
正常配置redis连接信息
SSH部分:
- Host:127.0.0.1
- Port:9999
- User:目标服务器用户名
- Pass:目标服务器用户密码
Chrome访问网页
在代理服务器输入以下命令:
ssh -g -N -f -o ServerAliveInterval=60 -L 127.0.0.1:8288:{web_ip}:80 root@{remote_ip}
在本地浏览器访问 {proxy_ip}:8288 ,等同于访问 {web_ip}:80 。