我有一台机器在公网201.81.178.73(内网ip:10.100.11.11),系统windows 2008 R2, 上面装了一个CentOS虚拟机,是内部网址10.100.18.118,上面装了一个Gitosis。
。
想在其他地方通过互联网访问CentOS虚拟机,于是用到了netsh命令,在201.81.178.73上运行如下命令:
开始端口代理:netsh interface portproxy add v4tov4 listenport=22 listenaddress=201.81.178.73 connectport=22 connectaddress=10.100.18.118
删除端口代理:netsh interface portproxy delete v4tov4 listenport=22 listenaddress=201.81.178.73
在201.81.178.73的防火墙增加入站规则,打开22端口,这是git客户端就可以访问了。
因为git客户端用了putty ssh连接的git,用的端口是22,执行几次发现git失败,“git server unexpectedly closed network connection”。
进入CentOS 10.100.18.118:
执行:#vim /etc/hosts.deny,删除一行:sshd:10.100.11.11
执行:#vim /etc/hosts.allow ,增加一行:sshd:10.100.11.11:allow
另外,公网上装了2个不同版本的mysql,MySql5.0占用端口是4333,MySql5.6占用的端口是4444,远程连接4333正常,4444总是出现2003(10038)错误。检查防火墙4444端口,确认打开了,MySql的远程权限也打开了。无奈只好换了一个端口4488,远程连接居然就成功了。