清雨影的Blog
  • README
  • 机器学习
    • 一般话题
      • 再谈正则化项
      • 论文阅读:“快把卷积神经网络中的平移不变性带回来”
      • 半监督/无监督学习收集
      • 收藏夹
    • 推荐系统
      • Understanding LightGCN in a visualized way
      • Learning To Rank 之 RankNet
      • 随想: BPR Loss 与 Hinger Loss
      • 关于AA测试和AB测试的一些思考
      • 无采样的矩阵分解
      • 收藏夹
    • 强化学习
      • Re:从零开始的Multi-armed Bandit
  • 高级物理引擎实战指南笔记
    • 弹簧质点系统
    • 光滑粒子法
    • 专题:线性方程组求解
  • 有限单元法
    • 1. 引论
    • 2. 基于直接刚度法的杆系有限元方法
    • 3. 针对复杂几何形状变形体的力学描述(1)
  • Web开发相关技术
    • JWT简介
  • 技术杂文
    • React-Script转Vite时引用路径的问题
    • Let's encrypt -- 让我们一起愉快的使用HTTPS
    • 干掉吸血雷,重塑和谐P2P环境
    • 开源CAN总线信号可编程台架
    • Linux下利用mdadm设置软件 RAID
    • 互不联网时代的自给自足
    • 为什么我劝你不要使用云计算?
    • 科学的公司内网连接技术选型
    • 构建家用NAS过程中的碎碎念
    • 简易的Linux迁移指北
    • 记录一次rsync命令引起的异常
    • 为FFMPEG添加Intel QSV支持
    • 备忘录
    • 福冈外免切替(中国驾照换日本驾照)攻略
    • 记一个离谱的MySQL语句的性能问题
    • 拯救变砖的OpenWRT路由器
    • 使用FRP进行内网穿透
  • 政治不正确
    • 吃屎系列:资本家如何喂员工吃屎
      • 华为251事件记忆
    • 吃屎系列:资本家如何喂用户吃屎
      • 互不联网公司是如何强奸用户的(持续更新)
    • 吃屎系列:大学如何喂学生吃屎
    • 推荐系统如何让我们变得极端
    • 互联网政治圈观察日志
    • 中国网络防火长城简史
    • 《线性代数》(同济版)——教科书中的耻辱柱
    • 杂谈
      • 访谈:为什么毛泽东时代工人的积极性很高?
      • 90年代到21世纪初的商业环境
    • 为什么不应该用国产手机
    • “救救孩子”
  • 随园食单
    • ボロネーゼ
    • 甜酒酿的制作
    • 香草与香料
    • 皮塔饼
    • 韭菜鸡蛋饼
    • 牛肉蔬菜汤
由 GitBook 提供支持
在本页
  • 获取FRP
  • OpenWRT
  • 服务器配置
  • 客户端配置
  • 关于OpenWRT

这有帮助吗?

  1. 技术杂文

使用FRP进行内网穿透

我本是个有公网IP的人,奈何最近NTT把我的443端口给封禁了,我便不能再(优雅的)配合DDNS使用自带的这个动态公网IP了。

没办法,只得开了一台距离比较近的VPS,在上面设置了一个FRP服务器。在此记录一下设置的过程,以备不时之需。

获取FRP

FRP是一个开源的反向代理项目:https://github.com/fatedier/frp 可以从Release页面下载需要的二进制文件:https://github.com/fatedier/frp/releases

OpenWRT

如果你的路由器够强劲,可以试试OpenWRT版本的:

  • https://openwrt.org/packages/pkgdata/frpc

  • https://openwrt.org/packages/pkgdata/luci-app-frpc

其中,luci-app-frpc是在路由器的配置页面上直接配置frpc,但是我试过,其实未必有直接写配置文件来的便捷。

直接:

opkg update
opkg install frpc
opkg install luci-app-frpc

即可。

虽然说一般不会有人要在路由器上设置FRPS,但是还是写一下:

  • https://openwrt.org/packages/pkgdata/frps

  • https://openwrt.org/packages/pkgdata/luci-app-frps

服务器配置

首先下载frp,然后解压:tar -xzvf frp_0.52.3_linux_arm64.tar.gz

随后将文件复制frps到/usr/bin(或者任何在PATH里的目录): cp frp_0.52.3_linux_arm64/frps /usr/bin/

准备以下文件:

/etc/frp/frps.toml

bindPort = 7000
auth.method = "token"
auth.token = "自己设置想要的密码"
# 以下配置为可选项
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "自己设置想要的管理员密码"

/etc/systemd/system/frps.service:

[Unit]
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
ExecStart = /usr/bin/frps -c /etc/frp/frps.toml

[Install]
WantedBy = multi-user.target

之后

systemctl daemon-reload
systemctl enable frps
systemctl start frps

即可启动服务,服务一经启动,即不需要进一步的配置,其余的配置都在客户端。

还有一点需要确认的是防火墙,每个系统的防火墙不一定一样,这里是Ubuntu的服务器,所以用ufw配置。

需要开放7000端口和你之后想要对外放出的端口(这里是443):

ufw allow 7000/tcp
ufw allow 443

客户端配置

同样是下载软件后复制frpc到/usr/bin(或者任何在PATH里的目录): cp frp_0.52.3_linux_arm64/frpc /usr/bin/

准备配置文件和服务文件:

/etc/frp/frpc.toml

serverAddr = "VPS的地址"
serverPort = 7000
auth.method = "token"
auth.token = "自己设置想要的密码"

# 本段落可以配置多个
[[proxies]]
name = "自己给个名字"
type = "tcp"
localIP = "目标机器的地址"
localPort = 目标机器的端口
remotePort = 想要在VPS上暴露的端口

/etc/systemd/system/frpc.service

[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
DynamicUser=yes
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frpc -c /etc/frp/frpc.toml
ExecReload=/usr/bin/frpc reload -c /etc/frp/frpc.toml
LimitNOFILE=1048576
[Install]
WantedBy=multi-user.target

之后启动服务即可

systemctl daemon-reload
systemctl enable frpc
systemctl start frpc

关于OpenWRT

如果显示frp Client - NOT RUNNING,需要到 http://192.168.1.1/cgi-bin/luci/admin/system/startup 里面启动(Enable&Start)frpc服务。

以及,如果目标机器和跑FRPC的机器不是同一台(如路由器跑frpc,树莓派跑服务)情况下,建议设置固定的IP地址。

上一页拯救变砖的OpenWRT路由器下一页政治不正确

最后更新于1年前

这有帮助吗?