先说本经验的应用场景

up主的就业方向是开发网站前后端,有一台自己的实体服务器,没有公网IP,我希望:

  1. 能长久地提供任何人在任何地点都能用浏览器访问到的网站;

  2. 另外由于服务器存放在家里,我开学、旅游、出差是需要异地ssh登录服务器的(实体服务器变云服务器),

  3. 最好还能异地登录宝塔面板。

我用过的内网穿透目前只有natapp和花生壳两家,在消费过之后就有了使用经验,特此分享出来。

内网穿透特点

单个内网穿透只能绑定ip的一个端口且仅支持https、TCP、UDP、Socks5中的一种协议。比如你的内网穿透是TCP协议,绑定在了服务器的127.0.0.1:22上,那么你只能用该内网穿透做22端口上TCP能做的事,比如进行ssh登录linux服务器;再比如你的内网穿透是https协议,绑定在了127.0.0.1:80上,那么你只能用该内网穿透在浏览器上访问服务器80端口的网站。

  • https:用于创建可在浏览器访问的网站

  • TCP:用于准确性要求高的数据传输,如文件传输、远程桌面、ssh登录服务器等,不支持创建网站或在浏览器访问

  • Socks5:用于特殊环境下需要使用代理才能访问的应用。

  • UDP:用于无连接服务、进程到进程的通信。数据传输的准确性不高。

对比 natapp 和 花生壳

natapp免费送每个号两条隧道,隧道就是内网穿透,该隧道支持web(https)、TCP、UDP协议,natapp的免费隧道好像不限制流量,但是域名/端口随机,且不定时强制更换,适合想测试服务质量或者提供超短时间的网站访问服务之类的需求。

你也可以购买隧道,服务更好,适合需要长期且稳定的内网穿透的人,续费是每条隧道10到18块/月,每G流量价格从0.3到2元不等,购买后流量包没有失效期。

要有对比!花生壳也送每个号两条映射(映射就是隧道,就是内网穿透),支持TCP、HTTPS、Socks5协议,花生壳的免费映射不会不定时换域名改端口。花生壳充斥着金钱的味道,分体验版、青春版、专业版等等,刚注册都是体验版,每月送1G流量,若要购买流量,能划到每G要9块钱,流量还有过期时间。但是学生党有福利,可以认证青春版,每月送5G流量。另外https协议需要花6块解锁,几乎算永久解锁。其他版特贵,也就一年几千吧。学生党不用考虑买额外映射了,因为要花几百几千解锁其他版才能享受额外映射。

仅从性价比上考虑,

  • 想简单的体验短时间内TCP协议的内网穿透,如ssh登录、远程桌面等,两家随便选;想在短时间内让他人访问自己的网站,选natapp,毕竟花生壳要6块解锁。

  • 想长久的享受稳定的内网穿透,还是付费吧。比如搭个没人看的小博客网站,一个月可能都用不了几G流量的,学生党选用花生壳,非学生就尴尬了,选用natapp吧,每月10块续费,但是流量便宜,选用花生壳吧,6块包永久,但是流量贵;如果网站很耗流量,比如搭建云盘,natapp每G一两块,花生壳每G八九块,自己选吧。

解决问题

以上内容都不是正文,简单吹个水罢了,以下是关于我如何解决开头提到的需求。

1. 希望能长久地提供任何人任何地点都能用访问到的网站服务

up主用的是natapp的付费隧道,一次性续费了一年,原价120打折后102,流量另算,不过因为网站没人看所以流量花不了多少钱。但是现在看来我有点亏,因为我当时还不知道花生壳,更不知道花生壳6块续费100年,学生每月送5G流量。

2.服务器存放在家里,开学、旅游、出差需要异地ssh登录服务器(实体服务器变云服务器)

考虑到ssh登录linux不怎么花流量,而且natapp的免费隧道时不时换域名和端口,所以up主用的花生壳的免费映射。教程如下:我实体服务器的内网ip是192.168.0.102,ssh端口是22,无公网ip,将TCP协议的免费映射绑定到192.168.0.102:22,在花生壳.exe(花生壳客户端)查看,得到下图的公网域名xxx.fun和马赛克处的公网IP x.x.128.21和公网端口12017。在xshell或者windows的cmd里输入公网ip和端口即可登录。

3.最好还能异地登录宝塔面板

宝塔面板有多方便我就不多说了。经过测试,不知道什么原因,反正我是需要在宝塔面板 - 面板设置 - 面板ssl 关掉。开了ssl,你登陆面板,数据会被加密,即https,关了面板,就没加密呗,即http。

我实体服务器的宝塔面板登录地址是https://192.168.0.102:28704/0a04d65b,这个地址只能在内网访问到。

如下图在花生壳绑定第二条免费映射,主机填我服务器内网ip,内网端口填宝塔面板的端口28704

然后重启下花生壳.exe,防止数据没更新。在花生壳.exe得到下图公网域名https://xxx.yicp.fun,

此时你直接在浏览器访问该域名,会显示”请使用正确的入口登录面板“,

你需要在该公网域名后加上”/0a04d65b“,”/0a04d65b“取自我实体服务器的宝塔面板内网登录地址https://192.168.0.102:28704/0a04d65b的后半段。这个字符串因人而异。此时再去访问就能成功了

总结

总结下,上述内网穿透方案为我解决了:让任何人访问无公网ip的服务器的80端口上的网站;让我不论在哪,异地也能ssh登录服务器,从而下发指令(就像一台云服务器);让我在异地依旧能享受宝塔面板的便捷。

不足:开头有提到,单个内网穿透只能绑定服务器的某一个端口,且仅支持https、TCP、UDP、Socks5中的一种协议,也就是说我想在90端口开个分网站,那我需要买新的隧道或者映射,那我要是用10来个端口岂不是买十来个隧道么。所以还是有公网IP香。

可能的解决办法:(这是我的一个猜想,还没去探索过。不对请轻喷)。在一次次的探索中,我了解到除了内网穿透,至少还可以用远程桌面或者zerotier解决我异地登录的需求。

  • 我尝试过用远程桌面软件todesk从笔记本连接到服务器(todesk有linux和windows端),粗略地体验了下,发现todesk是将linux的图形化桌面展现给你,但是一,我的服务器没图形化桌面,所以显示黑屏,二,我只是想简单的ssh连接,无需图形化桌面,就放弃了。如果你恰好好这口,CentOS 7 配置 VNC 远程桌面连接,这篇文章你可能用得着。

  • zerotier是一个搭建异地虚拟局域网的软件,我准备明天再试,要是能成,我就可以将天津学校的宿舍和江苏的家配置在同一个”局域网“下,这样不仅省隧道,还不限端口数量、协议。这只是我的猜想,我还没实验,不对轻点喷~

内网穿透实现实体服务器变云服务器:服务器无公网ip,如何提供公网网站,又如何异地ssh登录或者异地登录服务器的宝塔面板相关推荐

  1. ipv6免内网穿透使用树莓派4搭建云服务器

    前言 ​ 由于ipv4的地址资源枯竭,内网穿透带宽价格个人难以承受,而ipv6能够解决这个问题,其地址数量号称可以为全世界的每一粒沙子编上一个地址,ipv6配合家庭宽带是一个性价比极高的选择,然后使用 ...

  2. 内网穿透—利用frp和Pia云俄罗斯超低价服务器进行家用电脑内网穿透

    前言及背景 这段时间因为疫情原因,一直在家静态管理,但是手里只有笔记本电脑,需要操作虚幻引擎就需要远程控制,虽然说我利用的是Todesk软件,但总归可能出现一些问题,另外在需要进行面部识别的时候我需要 ...

  3. 实现内网穿透,个人电脑秒变服务器

    有时候在调试程序的时候直接将程序部署到公网服务器上是比较麻烦的,在调试阶段可以采用内网穿透的方式将电脑端口暴露出来供访问者来访问. 这里采用cpolar这个软件来实现内网穿透. 下载路径:https: ...

  4. 【群晖NAS】 利用云服务器 FRP技术 实现内网穿透

    一. 前言 我在之前的文章有介绍过使用服务商提供的内网穿透,但是这也存在着一些缺点,有的服务商提供的节点并不稳定,容易掉线,一旦掉线,就直接与机器"失联"了. 因为我本身有一台云服 ...

  5. Docker+Frp+NGinx+云服务器 实现HTTPS内网穿透

    Docker+Frp+NGinx+云服务器 实现HTTPS内网穿透 服务端搭建 (用docker-compose 服务器端搭建) 前置条件 1. 一台有公网ip的服务器2. 记得在服务器安全组开放对应 ...

  6. 阿里云ECS搭建frp服务器实现黑群晖 Nas 内网穿透

    1.前言 实现内网穿透的过程是折腾NAS中最麻烦的一部分,这里单独拿出来作为一个记录. 首先,讲一下我的配置,猫盘刷黑群晖DS119j系统,由于猫盘是arm架构,所以无法使用docker,只能实现一些 ...

  7. Frp 内网穿透服务器在渗透中的应用

    内容 实战-在内网发布服务使之可在公网访问 使用 frp 搭建内网穿透服务器 实战-kali 配置 MSF 接收来自公网的 shell 实战-跨网段获取内网 shell 实战-内网穿透-二级代理 实战 ...

  8. 使用Nextcloud搭建私人云盘,并内网穿透实现公网远程访问

    文章目录 摘要 视频教程 1. 环境搭建 2. 测试局域网访问 3. 内网穿透 3.1 ubuntu本地安装cpolar 3.2 创建隧道 3.3 测试公网访问 4 配置固定http公网地址 4.1 ...

  9. 使用 Nextcloud 搭建私人云盘,并利用内网穿透实现公网远程访问

    文章目录 一.前言 二.环境搭建 三.测试局域网访问 四.执行内网穿透 4.1 ubuntu 本地安装 cpolar 4.2 创建隧道 4.3 测试公网访问 五.配置固定 http 公网地址 5.1 ...

最新文章

  1. 成功解决matplotlib绘图的时候横坐标或纵坐标文本显示不全/显示一半/显示不完整的问题
  2. 动态添加组件_使用vue.js的动态组件模板
  3. python mysql 写入_python如何写进MYSQL
  4. 江苏大学考研885程序设计 - 谭浩强课后习题
  5. python字典forward_《Python机器学习基础教程》
  6. YOLOV5 + 双目测距(python)
  7. Spiral Matrix(Medium)
  8. 利用js快速完成大学生新生安全教育课程
  9. 鼠标点击事件对象的clientX、pageX、offsetX、screenX、x
  10. win10怎么解除bitlocker加密?
  11. 不同版本的VS项目复制出现“PDB 格式不兼容;请删除并重新生成”的问题解决方法
  12. Needleman–Wunsch algorithm
  13. 游戏设计自学记录(27)
  14. 环形缓冲区ringbuffer c++类模版实现
  15. OC 设置ImageView圆角
  16. cuda安装失败问题2:install of driver component failed
  17. pink老师,CSS学习day2-1
  18. 欧洲首个开放RAN天线测试中心于2023年3月启用
  19. UEFI——保姆级教程的HelloWold Application
  20. 联想G480—win8.1安装Centos7双系统

热门文章

  1. 360手机用鸿蒙系统,鸿蒙系统为什么只用在中低端的手机上?
  2. 真实的上海 IT 圈:张江男vs漕河泾男
  3. react 警告Warning: Cannot update during an existing state transition (such as within `render`). Render
  4. 使用DEM山体阴影制作精美地形图
  5. 深度学习入门(三十八)计算性能——多GPU训练
  6. 如何评价一个程序员的好坏
  7. 虚幻引擎聚光材质怎么做
  8. 深入浅出,一文带你快速了解RDMA
  9. 网商银行年营收139亿:净利20.9亿 蚂蚁集团持股30%
  10. 2021年- 精心整理的 SpringBoot 常见面试题-【附详细答案】