记一次家里工作站做网站穿透遇见的问题

穿透工具

之前用过几个内网穿透工具,类似于花生壳,飞鸽,Ngrok等等,要么免费的速度不够,要么就是性价比不是很高,又或者配置很麻烦。

后面又找到了另一个工具cpolar,虽然它是收费的,但也不是很贵,配置什么的都很方便,付费版本提供了域名子域名随机域名等多种域名形式。

我是使用了cloudflare做了DNS解析,因此直接使用我自己的域名,在cpolar配置页面的预留中直接添加自己的域名或者子域名,将cpolar提供的CNAME添加到DNS解析中,然后再按照教程,将自己的服务,挂载到指定的域名下即可,如下图(第一张图是官网的预留配置页面,第二张是本地启动cpolar后的配置页面):

这样,你就可以将本地的服务,与你的域名绑定在一起了,如果没有域名的话,可以采用随机域名,但是需要注意的是,随机域名并不是永久的,只有效24小时,24小时之后,你需要重新生成,就可以外网直接进行访问了。

将mysql数据库穿透出来

我们的mysql的端口是3306,在本地查询的时候,都没有问题,但是远程访问的时候,查询被拒绝了,这时候,我们需要查看一下,数据库的配置文件,是否是仅支持本地访问,这个可以网上找一下教程,挺多的,这里就不说了。

我们说一下在穿透数据库的时候,遇见的问题吧。我们大多数情况下,数据库都部署在云上,这时候我们都会有一个固定的ip,因此很少使用域名去调取数据库,这里需要注意的是,我们将3306端口穿透出来时候,本地的地址是tcp://127.0.0.1:3306,是的,你没看错,他是一个tcp的链接,而不是http的连接,因此,我们在cpolar上面配置数据库穿透的时候,就需要在cpolar的预留域名地方,选择tcp连接,然后固定一个tcp的域名,再通过隧道进行绑定tcp端口,就可以通过固定的tcp域名访问了。

将ssh穿透出来

我家里电脑安装的是kylin的系统,是直接当作工作站使用了,远程访问的时候ssh的时候,我们需要先安装一个openssh-server工具,设置开机自启,并打开ssh服务,systemctl start sshsystemctl enable ssh,需要注意的是,ssh的连接,也是tcp连接,与mysql的步骤是一样的,这里可以参照上面mysql的步骤进行。

在另一台电脑上远程连接的时候,可以直接通过命令行ssh -p 端口 root@固定的tcp地址,输入密码进行连接了。

将svn穿透出来

因为ssh通过tcp的方式进行连接的,因此我找的几个远程连接工具,都不支持这样的连接,因此我文件上传的时候,就没有办法了,我这里采用的是svn的方式,至于为什么不用ftp,仅仅因为svn简单一些,网上教程很多,这里就不说怎么安装了。svn的路径,也是tcp连接,与mysql的步骤是一样的,这里可以参照上面mysql的步骤进行。

文件上传思路:

  • 服务器创建svn库
  • 在本地拉取svn仓库
  • 将需要上传服务器的文件,提交到svn上面
  • 服务器检出仓库
  • 将检出仓库的文件,复制到需要的目录下面

端口直接绑定穿透

如果说后端java构建后得到的jar包启动的后端接口在9000,启动后可以直接把端口在cpolar中绑定端口到二级域名(因为我的域名用的一个,接口的端口就分配给了二级域名)上,这样就可以通过二级域名直接调取接口了。

可以理解为,只要本地能调通的http或https的连接,都可以直接挂载

nginx代理站点穿透出来

nginx在现在开发过程中用的是比较多的了,这里应该是没有什么难点的,我们只需要在项目中将接口请求的路径,替换成上面的接口路径,就可以正常访问接口了,而前端的dist文件里直接放在html下即可。

相关推荐
mit6.82412 分钟前
[Docker#8] 容器配置 | Mysql | Redis | C++ | 资源控制 | 命令对比
linux·后端·docker·云原生·架构
潜洋27 分钟前
掌握 Spring Boot 的最佳方法 – 学习路线图
java·spring boot·后端·学习
Peter_chq42 分钟前
【计算机网络】协议定制
linux·c语言·开发语言·网络·c++·后端·网络协议
雾恋43 分钟前
不要焦虑,在低迷的环境充实自己;在复苏的环境才能把握住机遇
前端·javascript
花花鱼1 小时前
vscode vite+vue3项目启动调试
前端·javascript·vue.js
sukalot2 小时前
windows C#-创建记录类型(下)
java·服务器·前端
秋迟言说2 小时前
webstorm中 ‘@/**‘报 未安装模块 无法Ctrl定位
前端·javascript·webstorm
方方怪2 小时前
HTML文本标签学习记录
前端·html
潘多编程2 小时前
Spring Boot性能优化案例
spring boot·后端·性能优化