概述
Serveo 是一个免费的内 穿透服务,Serveo 可以将本地计算机暴露在互联 上,官方称其为 Ngrok 的绝佳替代品。
Serveo 其最大优点是使用现有的 SSH 客户端,无需安装任何客户端软件,即可完成端口转发。
Serveo工作原理
当用户通过 SSH 连接到 Serveo 时会与该 站建立一个远程代理,Serveo 随后会生成一个 公共 URL,任何人都可以通过这个 URL 访问你的本地计算机。
项目地址: https://serveo.net
Serveo使用案例分享
1、转发http服务
将本地应用的8080端口映射到公 中
SSH 连接成功后,会随机生成一个 serveo.net 二级域名。随后你就可以使用浏览器访问这个随机生成的二级域名 heryum.serveo.net 间接访问到本地计算机 8080 端口上的服务了。
SSH初次和一个新服务器建立连接时会有提示,直接选择 yes 即可。
如果你不想使用随机域名,想指定一个固定的二级域名也是可以的。
2、转发TCP服务
把本地的3306端口转发到公 中,使用下面命令即可。
3、ssh重定向到公
远程访问本地的ssh服务其实很简单,只需要使用下面的命令即可。
连接成功后,接下来你就可以从公 上对这个内 计算机的 SSH 进行访问了。
-J 选项是在 OpenSSH 7.3 版本才引入的,如果你使用的 SSH 客户端版本较旧,则可以使用 ProxyCommand 选项来替代。
一些其它技巧
1、保持 SSH 连接不超时
众所周知,SSH 连接一旦超时就会自动断开,这样就很容易造成服务中断。这里我们只需给 SSH 连接增加一个保活参数 -o ServerAliveInterval=60 就可以了。
2、对 SSH 连接进行守护
上面的方法虽然可以解决超时的问题,但进程始终是在前台运行的。为了彻底解决这个问题,官方推荐使用 AutoSSH 来进行进程守护。
AutoSSH 是一个用来对 SSH 连接进行监控的程序,可在遇到程序问题或者是 络问题时自动进行重连,以达到长期保持 SSH 稳定连接的目的 。
这里以加入到 Systemd 系统服务为例,此方法适用于 CentOS 7、Debian 8、Ubuntu 16 及以上系统版本。首先,我们创建一个 AutoSSH 的 Systemd 服务。
AutoSSH 的 -M 参数主要用于指定一个监听端口来监视 SSH 连接状态,这里指定为 0 的主要目的是禁用 AutoSSH 的监控端口。保活依然使用 SSH 自己的 ServerAliveInterval 和 ServerAliveCountMax 选项来完成。
其次,Systemd 系统服务创建完成后,我们启动这个 AutoSSH 的服务并设置为开机自启。
3、如果你无法通过 22 端口连接到 Serveo,官方还预留了 443 端口给你使用
4、使用自定义的域名 / 子域名
默认情况下,我们都是使用的 Serveo 生成的二级域名进行连接的。如果你想使用自己的域名也是可以的,方法非常简单。只需要在你的域名所在 DNS 中添加一条 A 记录和一条 TXT 记录就可实现。
4.1 添加一条 A 记录
4.2 添加一条 TXT 记录
authkeyfp 后面跟的那一串字符是 RSA 密钥指纹,你可以使用 ssh-keygen -l 命令进行查看。
DNS 解析记录增加好后,你就可以使用自定义域名进行连接了。
至此,Serveo 的基本用法就介绍完了。如果你对它有更多的兴趣,欢迎去官 进行探索。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!