Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!

DataGrip通过跳板机连接数据库


分享到:
时间:2021-08-24 11:27来源:http://www.java1234.com 作者:小锋  侵权举报
DataGrip通过跳板机连接数据库
失效链接处理
DataGrip通过跳板机连接数据库

环境:连接公司MySQL Server需要通过两层跳板机。第一层跳板机通过私钥验证,第二台跳板机和MySQL Server均使用用户名、密码验证。使用DataGrip + OpenSSH config可以实现双层跳板机登陆MySQL Server。
 
1、查看系统是否安装OpenSSH for Windows,以管理员权限运行Powershell
执行Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'


Installed表示已安装,如果没有安装则执行一下命令:
# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
 
# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
 
如果不需要作为SSH 服务器则只需要安装Client即可。
 
2、启动并配置 OpenSSH 服务(如果系统本身已经安装则跳过)
# Start the sshd service
Start-Service sshd
 
# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'
 
3、在C:\User\UserName文件夹下新增.ssh文件夹,并且新建 config 文件,如果有私钥则把私钥复制到该文件夹下

 
4、启动ssh-agent(建议改为自动启动,如果服务不是在运行状态是无法连接的)
Get-Service ssh-agent | Set-Service -StartupType 'Automatic'
 
Start-Service ssh-agent
# This should return a status of Running
Get-Service ssh-agent
 
# 把私钥添加到ssh-agent
ssh-add ~\.ssh\id_ed25519(文件名替换成自己的)
 
5、配置config
Host 第二层跳板机IP
    HostName 第二层跳板机IP
Port 第二层跳板机端口
    User 第二层跳板机登陆用户
ProxyCommand ssh -W %h:%p 第一层跳板机别名

Host 第一层跳板机别名
    HostName 第一层跳板机IP
Port 第一层跳板机端口
    User 第一层跳板机登陆用户
IdentityFile C:\Users\UserName\.ssh\私钥文件名
 
注意:第二层跳板机Host必须使用IP,不能取别名!
 
6、配置DataGrip




 
7、点Test Connection测试是否联通
提示输入密码则表示连接上第二层跳板机

 
连接成功


 
8、配置MySQL连接

 
最后Test Connection。
 
坑点1、DataGrip登陆跳板机使用的是ProxyCommand,暂时不支持ProxyJump命令
坑点2、在连接上第二层跳板机后,发现还是连不上MySQL,返回“Communications link failure.”,之后方通防火墙策略解决。
坑点3、SSH Configuration中的Host IP和config文件中的Host(注意不是HostName)必须对应,而且只能填IP,否则在输入密码后一直在等待服务器返回响应,只能强制结束程序。
 
Openssh for Windows使用文档:
https://docs.microsoft.com/zh-cn/windows-server/administration/openssh/openssh_overview

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐