惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园 - 司徒正美
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Palo Alto Networks Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Cyberwarzone
Cyberwarzone
小众软件
小众软件
T
Threatpost
Latest news
Latest news
J
Java Code Geeks
博客园 - Franky
博客园 - 三生石上(FineUI控件)
Project Zero
Project Zero
P
Privacy & Cybersecurity Law Blog
T
Tenable Blog
L
Lohrmann on Cybersecurity
大猫的无限游戏
大猫的无限游戏
WordPress大学
WordPress大学
Apple Machine Learning Research
Apple Machine Learning Research
Scott Helme
Scott Helme
Simon Willison's Weblog
Simon Willison's Weblog
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Privacy International News Feed
人人都是产品经理
人人都是产品经理
S
Schneier on Security
T
The Blog of Author Tim Ferriss
V
V2EX
有赞技术团队
有赞技术团队
Y
Y Combinator Blog
罗磊的独立博客
IT之家
IT之家
雷峰网
雷峰网
H
Help Net Security
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tor Project blog
C
Cybersecurity and Infrastructure Security Agency CISA
I
InfoQ
GbyAI
GbyAI
博客园 - 叶小钗
PCI Perspectives
PCI Perspectives
The GitHub Blog
The GitHub Blog
Martin Fowler
Martin Fowler
H
Heimdal Security Blog
Spread Privacy
Spread Privacy
博客园_首页
A
About on SuperTechFans
T
Tailwind CSS Blog
The Register - Security
The Register - Security

披萨盒的赛博日志

谈谈工作了半年的感受 使用策略模式重构复杂业务分支 像 systemd 一样管理 MacOS 后台常驻任务 以ORM看封装的边界 Git Merge VS Git Rebase: 如何优雅地合并分支? 修改Linux内核模块以支持WG OpenLDAP折腾日记 非特权模式容器 ssh 登录问题 在 Linux 开发环境中使用网络代理 白嫖 Aseprite 像素绘图软件 MongoDB 增删改查 Python数据分析工具包-Numpy 解决 CLion 中文乱码问题 搭建 RLCraft 服务器 SpringBoot读取配置文件 Centos 配置 LNMP 环境 部署项目时遇到的坑 浅谈 xhr 请求跨域问题 JavaScript 学习笔记 Eclipse配置Web开发环境 Vue2 基本知识 Ribbon 简单使用 Nacos 简单使用 Spring Cloud Alibaba 环境搭建 什么是RSS?什么是Feed?它们有什么关系? Docker基本使用 TensorFlow启用GPU加速 Hello World! Git基本使用 Butterfly常用标签外挂
如何进行内网穿透
披萨盒 · 2022-07-01 · via 披萨盒的赛博日志

什么是内网穿透

百度百科:内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。

维基百科:在电脑科学中,NAT穿越(NAT traversal)涉及 TCP/IP 网络中的一个常见问题,即在处于使用了NAT装置的私有 TCP/IP 网络中的主机之间建立连接的问题。

我的理解:内网穿透其实就是把局域网内的资源或服务映射到公网,从而达到通过互联网访问内网的效果。

根据我的理解,可以做出如下图:

image-20220701104714835

因为内网穿透服务器是暴露在互联网(公网)的,所以它必须拥有公网IP地址。用户服务器既可以是公司内部的服务器集群,也可以是PC个人电脑。


一些常见的内网穿透工具的使用

Ngrok

官方文档:https://ngrok.com/docs

ngrok是一款非常便捷简单的内网穿透工具。内网穿透服务器由他们来提供,我们只需要指定要穿透的端口即可实现一键内网穿透

下载安装

  1. 官方下载地址下载对应版本的ngrok

image-20220701112204402

  1. 下载好后进行解压,会得到如下文件(先别急着运行)

image-20220701112307990

  1. 注册一个账号,注册地址:https://dashboard.ngrok.com/get-started/setup
  2. 登录,查看自己的token

image-20220701112832070

  1. 在刚刚文件的解压目录下打开cmd窗口

image-20220701113119264

至此,安装配置完成

使用

在刚刚文件的解压目录下打开cmd窗口,输入ngrok http [要穿透的端口号]回车即可

image-20220701113754212

红框圈住的即为穿透后的地址,通过互联网就可以访问。需要注意的是,免费版的分配的域名地址是随机的,每次穿透可能结果都不一样。


Frp

官方文档:https://gofrp.org/docs/

Frp是GitHub上的一个开源项目,使用go语言编写,速度很快,支持点对点内网穿透,功能非常强大

先决条件

  • 一台具有公网IP的服务器
  • 知道一丁点Linux相关知识

下载

Release v0.43.0 · fatedier/frp · GitHub下载对应版本的Frp。内网穿透服务器和本机服务器都要由一份。

使用frp实现http内网穿透

为了方面描述,内网穿透服务器简称为服务器,要穿透的本机服务器简称为本机

  1. 服务器端配置
  • 打开服务器端 frps.ini 配置文件,修改如下
1
2
3
[common]
bind_port = 7000
vhost_http_port = 8080
  • 放行 7000 端口和 8080 端口
  • 运行命令
1
./frps -c frps.ini
  1. 本机配置
  • 打开本机 frpc.ini 配置文件,修改如下
1
2
3
4
5
6
7
8
[common]
server_addr = [服务器ip地址]
server_port = 7000

[web]
type = http
local_port = [要代理的端口号]
custom_domains = [域名,没有解析域名的话可以填ip地址]
  • 运行命令
1
./frpc.exe -c ./frpc.ini

访问 域名.8080 即可看到本机的4000端口对应的资源/服务


版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 披萨盒的赛博日志


avatar

披萨盒

反正身体这么好,今天继续笑下去吧

个人主页