说明:Serveo是一个SSH服务器,仅用于远程端口转发,可以快速将本地端口暴露在外网。官方声称其为Ngrok的绝佳替代品,对其优点是使用现有的SSH客户端,无需安装客户端即可完成端口转发。当用户连接到Serveo时,他们会获得一个公共URL,任何人都可以使用它来连接到他们的localhost服务器。

使用

官方地址:http://serveo.net

使用要求:可以使用SSH,并且能连接到互联网,LinuxWindows等系统都行。

1、转发HTTP
将本地3000端口穿透到公网中,使用命令:

12#要转发其它端口的自行替换ssh -R 80:localhost:3000 serveo.net

第一次如果有提示,选择yes即可,之后会为你随机生成一个serveo.net二级域名,然后就可以使用浏览器间接访问本地的localhost:3000了。

如果要指定二级域名,可以使用命令:

12#这里默认为superbin.serveo.net,自行替换即可ssh -R superbin:80:localhost:3000 serveo.net

此时你就可以在外网使用superbin.serveo.net访问你本地的localhost:3000了。

2、转发SSH
将本地22端口穿透到公网中,使用命令:

12#可以自行设置名称,这里默认ratsssh -R rats:22:localhost:22 serveo.net

接下来就可以登录该内网服务器了,使用命令:

1ssh -J serveo.net root@rats

3、转发TCP
将本地1492端口穿透到公网中,使用命令:

12#可以自行设置公网端口,这里默认1492ssh -R 1492:localhost:1492 serveo.net

进程守护

这里官方推荐使用AutoSSH,作用是一旦SSH连接超时或停止传递流量,则根据需要重新启动它。

1、安装AutoSSH

1234#Debian/Ubuntu系统apt install autossh -y#CentOS系统yum install autossh -y

2、使用Systemd

只适用于CentOS 7Debian 8+Ubuntu 16+等。

1234567891011121314151617#输入你的转发命令,去掉开头的ssh即可serveo=”-R 80:localhost:3000 serveo.net”#将以下代码一起复制到SSH运行cat &gt; /etc/systemd/system/autossh.service &lt;&lt;EOFUnitDescription=autosshAfter=network.target ServiceType=simpleEnvironment=”AUTOSSH_GATETIME=0″ExecStart=$(command -v autossh) -M 0 -o “ServerAliveInterval 30” -o “ServerAliveCountMax 3″ $serveoRestart=<span class=”hljs-keyword”>on</span>-abort InstallWantedBy=multi-user.targetEOF

开始启动并设置开机自启:

12systemctl start autosshsystemctl enable autossh

最后更多的命令和使用可以直接查看官方文档→传送门

最后修改日期: 2020年8月31日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。