SecureCRT 使用跳板机与第三个服务器连接和文件传输

背景与需求描述:

本机:本地Windows客户端,Windows 7操作系统;SecureCRT 7.2;具有Linux用户的公钥和私钥;IP地址为10.0.0*网段
跳板机 A机:新建mysql数据库服务器,CentOS 6.5操作系统;具有Linux用户的公钥;IP地址有两个,一个是10.0.0.*网段,一个是192.168.0.*网段IP;
目标机 B机:已有的mysql数据库服务器,CentOS 6.5操作系统;具有Linux用户的公钥;IP地址为192.168.0.*网段IP;

现在的需求是,要将B机上的MySQL数据库进行备份,将备份文件传输到A机上进行数据库恢复,在A即上运行MySQL数据库;
网络方面,本地Windows客户端,可以连接到A机,不能连接到B机;A机和B机之间可以相互访问;
此时需要面对的问题是:由于客户端不能直接连接B机,就无法进行操作,原数据库的备份和文件传输就无法进行。

解决思路:

使用 SecureCRT 7.2工具,从本地Windows服务器上先连接到A机上,然后以A机为跳板机,在A上发起ssh命令连接B机,公私钥校验使用本地Windows服务器上的公私钥;从A机ssh到B机上,先发起mysql备份任务,然后将备份打包;在回到A机上,发起scp命令,将压缩后的备份文件从B机传送会A机这样就解决了两个难题,可以在A机上进行MySQL数据库的恢复和启动了。

假设环境:

为了便于实验描述,将上述IP和用户文件具体化:
本地服务器:IP为 10.0.0.50,具有test01 用户的公钥文件 Identity.pub和私钥文件Identity(由SecureCRT生成格式生成);
跳板机 A机:IP为 10.0.0.100 和 192.168.0.100,创建有test01用户,并有公钥文件Identity.pub修改而成的  /home/test02/.ssh/authorized_keys;
跳板机 B机:IP为 192.168.0.200 ,创建有test01用户,并有公钥文件Identity.pub修改而成的 /home/test02/.ssh/authorized_keys;

测试过程 :

  1. 在本地Windows系统上,打开SecureCRT 7.2,配置到 A机10.0.0.100的连接,公私钥文件使用本地的test01用户的公私钥文件,配置完成后,连接到A机的CentOS操作系统上;
  2. 在A机上直接执行命令: ssh test@192.168.0.200
    结果返回 Permission denied(publickey,gssapi-keyex,gsspi-with-mic)错误,不能登录到B机;
  3. 在SecureCRT 7.2工具进行配置:
    Tools - Manage Agent Keys,在密钥向导管理窗口中确认加入本地的私钥文件Indentity;
    然后 Options - Global Options - SSH2 - 在Advanced里面将“Add keys to agent”、“Enable OpenSSH agent forwarding”、“Enable deprecated GSSAPI”、“Cache session password”等选项全面勾选,点击OK,然后重启一下SecureCRT工具;
  4. SecureCRT 7.2配置和重启后,再次以test02用户登录到A机,执行下面的命令登录到B机:
    $ ssh 192.168.0.200 可以看到已经能够正常登录到B机了,在B机执行mysql数据库备份,然后压缩到/tmp目录下;
  5. 再打开一个窗口,在A机上将B机的mysql备份拷贝到A机的tmp目录上:
    $ scp 192.168.0.200:/tmp/db_bak.tar.gz /tmp

    可以看到备份已经拷贝的A机的/tmp目录了。

如此就可以通过SecureCRT 7.2的配置实现跳板机功能,进行scp远程拷贝;

同样的,处理SecureCRT工具,Xshell工具,putty工具也具有类似的agent功能,实现跳板机的作用。

[post_card ids="2584"]
阅读剩余
THE END