最近终于实现了这个功能,可以带着我的小新pro13随地远程实验室的服务器了,爽。

为什么不用teamviewer ?

延迟大,极有可能被检测为商用然后收费,最要命的是,如果服务器没有插显示屏,teamviewer是不能显示的。

通过测试发现,如果服务器不接主机,本方法可以显示但是没有响应

解决方法大概看了下,可以安装ubuntu虚拟显示器,但是会和主显示器抢,开机黑屏等问题,比较麻烦后面有空再探索吧。

实现配置:

外网win10,
内网ubuntu20(理论上ubuntu16-20都可以)

实现方法

使用win10自带的远程桌面 + ubuntu 自带的屏幕共享
为了解决内外网的IP地址问题,需要在路由器上将服务器的IP固定,并设置专门的端口转发。
下面开始:

ubuntu服务器端

据我所知ubuntu16之后的都自带屏幕共享功能: 设置-》 共享-》屏幕共享
如果是最小安装的ubuntu可能没有,需要额外命令行安装:
安装方法具体见https://blog.csdn.net/weixin_33804990/article/details/92484727
只用参考如何安装屏幕共享功能,他的后续步骤对于两台机器在内外网的情况是不work的,因为没有进行端口转发
安装成功:
外网win10 远程桌面以及ssh到 内网Ubuntu20

重启ubuntu

win10端

先把win10链接在局域网内,因为要去设置局域网路由器。
进入路由器的网页端管理界面,我的是tplink,直接输入http://tplogin.cn/ 即可

  1. 首先要固定ubuntu服务器的IP(静态IP),不然路由器给局域网的IP地址是随机的。tplinK为例,进入应用管理-》IP与mac绑定:
    外网win10 远程桌面以及ssh到 内网Ubuntu20

添加绑定就好了。
这里绑定的IP是局域网内的IP,需要记录一下后面会用到。
如图中的192.168.1.159。

  1. 添加两个端口映射
    进入应用管理-》 虚拟服务器,如图,
    外网win10 远程桌面以及ssh到 内网Ubuntu20
  • 第二个是将路由器的80端口映射到局域网内的IP为192.168.1.159的22号端口,这样就实现了远程SSH功能:
    如果想在外网通过SSH连接内网的服务器,直接用ssh连接路由器的IP,以及路由器的80号端口,这样就会自动连接到192.168.1.159:22(即局域网内ubuntu服务器的22号端口)
    当然Ubuntu服务器上要开启ssh以及配置好端口(默认是22)等,具体见https://blog.csdn.net/future_ai/article/details/81701744
  • 第一个端口映射是为了实现远程桌面:
    win10的远程桌面是默认访问3389端口的,因此需要将路由器的3389端口映射到局域网内服务器的3389端口。否则会提示连接失败。

开始连接:

将win10 连接在公网,
打开win10的远程桌面,输入路由器的IP地址(不用端口,默认是3389),也就是公网地址:
外网win10 远程桌面以及ssh到 内网Ubuntu20

点击连接,不出意外会出现:
外网win10 远程桌面以及ssh到 内网Ubuntu20

选择vnc-any,IP填写的是服务器在局域网的IP,192开头的一串,
port 5900默认不用改,密码是刚开始在ubuntu上设置的屏幕共享的密码。
点击确认,大功告成!
外网win10 远程桌面以及ssh到 内网Ubuntu20

相关文章:

  • 2021-07-28
  • 2021-05-06
  • 2022-01-03
  • 2021-06-10
  • 2021-11-28
  • 2021-11-28
  • 2021-12-03
  • 2021-07-22
猜你喜欢
  • 2021-04-14
  • 2021-11-28
  • 2021-10-09
  • 2021-08-29
  • 2021-12-05
相关资源
相似解决方案