起因:突然一夜之间电信扰拨号ip全变内网地址了,这样即使用了动态域名,绑定的也不是本机ip,外部无法访问了。虽然打电话找电信反映说是可以改回来,但必须先解决眼前的问题,访问内网服务器上的svn仓库。

办法:由于还有一台在公网上的云主机,想到可通过它中转,只要内网主机先与云主机建立连接,这正好可以用ssh的远程转发功能,命令如下:

ssh -gN -R 3690:0.0.0.0:3690 -o ServerAliveInterval=60 wellbye@ali

结果连接是建立了,但是此时访问云主机3690端口却连不上,上去查看端口状态:

[wellbye@AY130622174524343529Z:~]netstat -ln -A inet

输出如下:

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State

tcp        0      0 127.0.0.1:3690            0.0.0.0:*               LISTEN

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

……

显示3690虽然在监听,但只在127.0.0.1上有效,因此无法接受外部连接。

可之前已经加上了-g参数,在ssh手册上说过此选项将使端口绑定在外部ip上,以使其它机器可以连接,但为何这里无效呢?

google得知答案(https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=228064):

原来-g只是对本地转发有效,要使远程转发也使用外部ip,必须修改远程主机上的sshd_config,增加

GatewayPorts yes

然后重启ssh服务即可。

再次建立转发并查看连接,发现已经监听的是0.0.0.0:3690,打开svn客户端更新顺利执行!

ssh远程转发使远程主机在所有ip上监听的更多相关文章

  1. 详解 RAC 中各种IP和监听的意义

    一.SCAN 概念 SCAN(Single Client Access Name)是 Oracle从11g R2开始推出的,客户端可以通过 SCAN 特性负载均衡地连接到 RAC数据库 SCAN 最明 ...

  2. [转载]详解ssh端口转发(二)

    关于使用ssh portforwarding来进行FQ的操作,网络上已经有很多很好的文章,我在这里只是画两个图解释一下. 首先要记住一件事情就是: SSH 端口转发自然需要 SSH 连接,而 SSH ...

  3. SSH的端口转发:本地转发Local Forward和远程转发Remote Forward

    关于使用ssh portforwarding来进行FQ的操作,网络上已经有很多很好的文章,我在这里只是画两个图解释一下. 首先要记住一件事情就是: SSH 端口转发自然需要 SSH 连接,而 SSH ...

  4. SSH远程端口转发实战详解

    问题 前段时间在外地没有在实验室,随身携带了一个笔记本电脑.但是笔记本性能不够,想用SSH远程连接实验室的电脑.问如何连接?现有以下设备 设备 IP 备注 系统 实验室电脑C1 192.168.0.2 ...

  5. ssh远程端口转发

    当ssh的连接方向和应用连接的方向不一致时,这就称为ssh远程转发. 主机3是一台web server 应用请求是主机2到主机1 ssh请求是主机1到主机2 主机2开启ssh服务 service ss ...

  6. 利用SSH端口转发实现跨机器直接访问

    在实际项目测试中经常会遇到数据库操作,但是因为公司安全问题,访问数据库往往需要通过跳板机.但通过跳板机,测试效率大打折扣,因此通过使用SSH端口转发,从而达到跨机器直接访问数据库.实际项目中的应用会比 ...

  7. SSH25个命令 + 深入SSH端口转发细节

    OpenSSH是SSH连接工具的免费版本.telnet,rlogin和ftp用户可能还没意识到他们在互联网上传输的密码是未加密的,但SSH是加密的,OpenSSH加密所有通信(包括密码),有效消除了窃 ...

  8. [转帖]SSH远程登录配置文件sshd_config详解

    SSH远程登录配置文件sshd_config详解 2016年06月02日 17:42:25 Field_Yang 阅读数 61386   版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权 ...

  9. Linux下 SSH远程管理服务

    第1章 SSH基本概述 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定 在进 ...

随机推荐

  1. 【转】.net中快捷键的使用

    当前行行首:Home 当前行行尾:End 当前文档首行:ctrl+Home 当前文档尾行:ctrl+End 选中当前行: ① 按Home(定位到行首)然后按Shift+Dnd(行尾)   {从行首连选 ...

  2. flex DataGroup

    示例1: <?xml version="1.0" encoding="utf-8"?> <s:DataGroup xmlns:fx=" ...

  3. [原创]java WEB学习笔记01:javaWeb之tomcat的安装和配置

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  4. [原创]Scala学习:关于变量(val,var,类型推断)

    1.常量定义:  val val 类似于java中的final变量.一旦初始化了,val就不能再被赋值 val megs = "hello world" 2.变量的定义: var ...

  5. TP里的关联查询

    $res = $db->join('b on a.ex_id = b.pe_eid')->select(); 注意:这里的表a.表b需要带表前缀

  6. castle windsor学习-----Registering components by conventions

    注册多个组件 1.one-by-one注册组件可能是一项非常重复的工作,可以通过Classes或Types注册一组组件(你可以指定一些特定的特征) 三个步骤 注册多个类型通常采取以下结构 contai ...

  7. SQLServer 一些有用的语句

    SET STATISTICS TIME ON 记录查询的相关数据 生成随机Guid SELECT NewID() 按照某一列排序并生成序号 select Row_Number() OVER (ORDE ...

  8. JavaScript 的 async/await

    随着 Node 7 的发布,越来越多的人开始研究据说是异步编程终级解决方案的 async/await. 异步编程的最高境界,就是根本不用关心它是不是异步. async 函数就是隧道尽头的亮光,很多人认 ...

  9. delphi数据库的备份及还原

    实例应用1: //备份procedure TF_DataBaseBackUp.Btn_bfClick(Sender: TObject); var i:integer; begin if SaveDia ...

  10. POJ 1504,ZOJ 2001,UVA 713, Adding Reversed Numbers,错误,已找到错误

    ------------------------------------------------------------ 以此题警告自己: 总结, 1.在数组的使用时,一定别忘了初始化 2.在两种情况 ...