SSH端口转发

摘要

对于运维人员,很多情况都是不能直接连接生产服务器的,生产服务器只让特定的机器连接(称之为跳板机),如果仅是命令行操作,那问题不大,如果是需要使用可视化工具,就不行了。这种情况下,需要使用可视化工具连接服务器时,一般都是远程连接到一个和服务器网络相通的Windows机器,在Windows机器上使用可视化工具,但是在一个团队中,人多的情况下,这样操作效果不理想。有没有可以借助跳板机,让工作机的可视化工具直接连接服务器的服务呢(如Mysql),答案是有的,下面就来介绍下:

SSH端口转发

假设:
工作机为Host1,IP:192.168.233.1
跳板机为Host2,IP:192.168.233.129
服务器为Host3,IP:192.168.233.132

说明: 这里的跳板机Host2和服务器Host3,是我在工作机Host1上使用虚拟机软件创建的,看IP知道是在同一个局域网,三个之间的网络是相通的,实际中,跳板机会有多个网卡,一个网卡和工作机网络相通,另一个网卡和服务器网络相通。

1. 建立跳板机和服务器之间的信任关系

1)在跳板机上使用ssh-keygen命令生产秘钥对
2)使用ssh-copy-id命令将跳板机的公钥传给服务器
如:

$ ssh-copy-id root@192.168.233.132

执行完后,跳板机就可以不使用密码,直接ssh连接到服务器了

我改完后,发现使用ssh直接登录很慢,然后使用ssh -v查看下卡在什么地方了,发现有下面这样的循环等待信息:
debug1: Unspecified GSS failure. Minor code may provide more information
No Kerberos credentials available

查了下,解决办法是修改服务器Host3的/etc/ssh/sshd_config配置,把GSSAPIAuthentication改为no,重启服务器Host3的sshd服务器后,再在跳板机Host2上使用ssh连接服务器,发现连接就很快了。

2. 使用SSH隧道建立端口映射

在工作机Host1上执行下面的命令(以MySQL的服务端口3306为例),就能将Host3的3306端口映射到Host1的3306端口,在Host1上访问本地3306端口实际访问的是Host3的3306端口。

$ ssh -L Host1Port:Host3IP:Host3Port Host2

如下我是在Win10上的cmd控制台执行的

D:\>ssh -L 3306:192.168.233.132:3306 192.168.233.129
root@192.168.233.129's password:
Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.13.0-38-generic x86_64)
Last login: Sun Sep 23 16:32:52 2018 from 192.168.233.1
root@ubuntu:~$

如果工作机是Windows,且没有ssh命令,使用Xshell或其他的终端工具也是可以的,下面介绍下Xshell如何配置端口转发:
1)新建一个登录跳板机的连接
在这里插入图片描述

2)配置登录跳板机的用户名和密码
在这里插入图片描述
3)配置隧道信息
在这里插入图片描述

3)使用这个连接登录跳板机后,端口转发就启用了

本地连接服务器

在工作机Host1上使用可视化工具连接本地3306端口,就能连接到服务器上的MySQL服务了(以MySQL Workbench为例)
在这里插入图片描述

在这里插入图片描述

参考文章

http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值