zoukankan      html  css  js  c++  java
  • [svc]通过ssh tunnel连接内网ECS和RDS

    问题背景:

    一些ECS没有访问公网的需求,或是RDS出于安全考虑只允许内网访问。但是希望远程连接这些ECS或RDS进行管理时就会比较麻烦,一般可以通过选一台有公网的ECS搭建VPN的方法来解决这个问题。但是搭建VPN有一定的技术门槛,需要有一定的网络基础,在配置的过程中会遇到很多问题。

    这种情况下,可以通过SSH Tunnel的方式来简单的实现对内网ECS和RDS的访问。使用此方案不需要安装额外的软件,不需要配置路由转发,可以大大降低配置和使用的技术门槛。

    解决方案:

    通过putty和 有公网IP的ECS之间建立ssh隧道,然后通过本地端口转发,实现在客户PC终端上对内网ECS和RDS的直接访问,为客户的远程管理提供了巨大的方便

    配置方法:

    1.前置条件:

    a)客户PC终端可以ssh登录有公网的ECS服务器。
    b)有公网的ECS服务器可以通过内网访问其他内网ECS服务器。
    c)有公网的ECS服务器可以通过内网访问RDS(ECS的内网IP在RDS的白名单中)

    2,客户端配置

    a)客户端使用putty,填写有公网ECS的IP及ssh端口

    b)设置ssh tunnel,Source Port是PC本地监听的端口。Destination填写内网ECS服务器的内网地址及端口。然后点击“Add”,就会生成一个端口转发记录,然后点击“Open”会打开SSH连接。

    c)在弹出的窗口中输入正常SSH登录有公网IP的ECS服务器

    d)这时在客户PC终端上使用netstat -an命令应该可以看到一个127.0.0.1的22端口的本地监听。

    e)通过连接这个本地端口就可以连接到内网的ECS服务器上了。

    f)这个方法同样适用于windows系统(为了不与客户PC终端的端口冲突,这里使用了33389端口作为本地监听端口)

    g)内网的RDS也没有问题

    h)可以在客户PC终端直接使用数据库客户端程序来连接RDS中的数据库,非常方便。

    在SecureCRT中这个功能叫做“端口转发”,进行类似的配置后也可以实现同样的功能。

    参考

  • 相关阅读:
    pl/sql 编程!
    oracle中的常用函数、字符串函数、数值类型函数、日期函数,聚合函数。
    oracle 相关查询和非相关查询,oracle 去除重复数据,以及oracle的分页查询!
    初识 oracle!
    分页查询。
    利用ajax技术 实现用户注册。
    quartz CronExpression
    SQL 面试题
    什么是HTTP协议?常用的状态码有哪些?
    聚集索引与非聚集索引
  • 原文地址:https://www.cnblogs.com/iiiiher/p/8533876.html
Copyright © 2011-2022 走看看