扫码关注官方订阅号
现在局域网有台Linux系统的机器,想通过外网可以控制这台机器,但是又没有路由器权限,有什么办法可以实现这种方式?以前知道Win下的灰鸽子可以实现反向代理登陆 达到控制的目的。请问下Linux下有木有类似的软件或工具呢?
学习是最好的投资!
应该有一些商业软件可以实现,Linux下的我没关注,这个略过。想要自己实现的话,需要在局域网外设置一台具有公网ip的机器(记为T),然后将T当作跳板来通信。最简单的就是ssh的-R参数,可以将T机器的端口映射到内网服务器的端口,不过这样需要中转一道,延迟、带宽什么的可能比较大。如果条件允许,使用UDP穿透的话效果应该更好,但是实现起来麻烦些。
例如(局域网内的电脑上执行):
ssh -R 2222:localhost:22 117.123.123.123
然后你访问117.123.123.123这台服务器的2222端口,就会转发到局域网内的服务器的22端口了。
这个链接里面简单提到了两种端口转发。可以看看 http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html
使用 ssh 的远程转发或者 UDP 打洞。前者注意默认的 sshd 配置只监听 127.0.0.1,要改个配置项。后者你可以试试 mosh,挺好玩的。
UDP 打洞前先检测下自己的 NAT 类型(比如使用 pystun 程序)。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
应该有一些商业软件可以实现,Linux下的我没关注,这个略过。想要自己实现的话,需要在局域网外设置一台具有公网ip的机器(记为T),然后将T当作跳板来通信。最简单的就是ssh的-R参数,可以将T机器的端口映射到内网服务器的端口,不过这样需要中转一道,延迟、带宽什么的可能比较大。如果条件允许,使用UDP穿透的话效果应该更好,但是实现起来麻烦些。
例如(局域网内的电脑上执行):
然后你访问117.123.123.123这台服务器的2222端口,就会转发到局域网内的服务器的22端口了。
这个链接里面简单提到了两种端口转发。可以看看 http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html
使用 ssh 的远程转发或者 UDP 打洞。前者注意默认的 sshd 配置只监听 127.0.0.1,要改个配置项。后者你可以试试 mosh,挺好玩的。
UDP 打洞前先检测下自己的 NAT 类型(比如使用 pystun 程序)。