不用teamviewer,在家怎么远程连接公司的电脑

by pxz


发布于: 2018-06-05 所属分类: 工具 标签: teamviewer ssh  2001


<p>由于最近teamviewer把我识别成商业用途,一连接就出开, 然后弹出如下图提示, 超时后连接被阻断, 您的许可证对您与伙伴的最大会话时间有所限制, 立即重连时被阻断, 请稍后再试或升级你的许可证, 或弹出出提示, 您的Teamviewer会话已经超时, 即将关闭。<br><img src="http://www.sgzhang.com/upload/2018/06/201806061903473646959.png" alt="超时后连接被阻断, 您的许可证对您与伙伴的最大会话时间有所限制, 立即重连时被阻断, 请稍后再试或升级你的许可证" title="超时后连接被阻断, 您的许可证对您与伙伴的最大会话时间有所限制, 立即重连时被阻断, 请稍后再试或升级你的许可证"><br><img src="http://www.sgzhang.com/upload/2018/06/201806061905322632199.png" alt="您的Teamviewer会话已经超时, 即将关闭" title="您的Teamviewer会话已经超时, 即将关闭"> <p>总之teamviewer无法使用, 必须另想办法在家远程连接公司电脑。 </p> <p>我们平时,在公司内网, 一般通过微软自带的软件, ”远程桌面连接“ 就可以直接连接我们自己的电脑, 这种方式连接非常方便, 不需要安装任何软件, 而且流畅性和体验非常好, 但是有一个缺点, 这种方式只能在公司内网的电脑可以连接, 外面的网络无法连接, 因为公司的电脑没有暴露在外网。</p> <p>那有没有办法让公司的电脑暴露在外网呢。 可能大家会想到通过设置公司的路由, 使用花生壳软件动态解析来实现, 这是一种解决方案, 但是, 前提是, 不是每个人都有公司路由的权限的, 这里分享的方法是, 通过简单的设置, 只要你公司的电脑能上网, 那就可以随时随地连接公司内网电脑。</p> <p>该方法需要一台linux服务器做中转, 相信很多技术大神们都有自己的服务器。下面说的是配置方法。</p> <p>首先配置linux服务器:<br>第一步: 编辑修改sshd的配置, vim /etc/ssh/sshd_config, 配置GatewayPorts, X11Forwarding 为yes, 如果没找到这两个配置, 在最后面新加<br>GatewayPorts yes<br>X11Forwarding yes <p>然后配置公司的电脑:<br>第一步: 安装git for windows软件<br>第二步: 在桌面右键, 打开<code>git bash here</code><br>第三步: 在git控制台里面执行 <pre><code>ssh -N -R 13389:127.0.0.1:3389 root@222.222.222.222 -o ServerAliveInterval=2 -o ServerAliveCountMax=5 </code></pre><p>其中 <code>root</code>需要改成你的linux服务器的用户名, <code>222.222.222.222</code> 需要改成你的服务器ip地址<br>回车执行后会提示输入密码, 输入完服务器的密码后回车即可, 如果没有提示任何错误, 则表示运行成功了, 请注意, 该窗口不能关闭. <p>最后, 可以回到家里, 使用家里的电脑打开微软自带的 “远程桌面连接” 软件, 地址输入 <code>222.222.222.222:13389</code> 点连接, 即可连接上公司的电脑</p> <p>下面附上上面第三步命令行代码的ssh的参数解释:<br><code>ssh -N -R 13389:127.0.0.1:3389 <a href="mailto:root@222.222.222">root@222.222.222</a>.222 -o ServerAliveInterval=2 -o ServerAliveCountMax=5</code></p> <p>-N : ssh连接后不执行远程命令, 通常用于端口转发, 端口转发时, 必须加上该参数<br>-R : 远程端口转发设置, 用于把服务器端的端口转发到本地内网的任一机器, <code>13389</code>为服务器端开启的需要转发的端口, <code>127.0.0.1</code> 表示我要把外网的13389端口转发到当前本机, <code>3389</code>为本机远程服务的端口, 这里 <code>-R 13389:127.0.0.1:3389</code> 就是把服务器的 13389端口转到到本机的 <code>3389</code>端口</p> <p>后面的 <code>-o ServerAliveInterval=2 -o ServerAliveCountMax=5</code> 只是辅助参数, 用于防止ssh断开连接, 其中<code>ServerAliveInterval=2</code> 表示ssh会每2秒发送一个KeepAlive请求,保证终端不会因为超时空闲而断开连接, <code>ServerAliveCountMax=5</code>表示,ssh连接如果没有收到服务器的响应,最多重试5次后自动断开连接并退出.</p> <p>最后的问题是, 如何把该命令放在后台运行, 如何在ssh断开连接后自动重连, 如何开机自动启动, 请关注后续的文章.</p>

发表评论

暂无评论

搜索
用户登陆