首页
关于
Search
1
AdGuardHome 安装及部署教程
42,171 阅读
2
搭建基于telegram的无限网盘
10,332 阅读
3
关于微软Azure学生白嫖指南
10,260 阅读
4
Oracle开放全部端口并关闭防火墙
10,106 阅读
5
最新Cloudflare免费自选IP教程(非Partner)
9,615 阅读
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
登录
Search
标签搜索
docker
张至顺
PHP
图床
Cloudflare
金刚长寿功
内网穿透
PT
qBittorrent
阿里云
onedrive
telegram
代理
青龙
FRP
python
一键
telegraph
ipv6
cf_workers
myedunote
累计撰写
113
篇文章
累计收到
1
条评论
首页
栏目
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
页面
关于
搜索到
1
篇与
toml
的结果
2025-01-06
用 FRP 配置 toml 文件搭建内网穿透
用 FRP 配置 toml 文件搭建内网穿透需求场景1、一台外网可访问的有固定 ip 的云服务器 2、一台外网无法访问的无固定 ip 的本地家用电脑 需求:将云服务器搭建为一台内网穿透服务器,实现通过外网访问家用电脑(网页)的功能。且即使没有域名也可通过公网访问。下载软件GitHub:https://github.com/fatedier/frpreleases 页面:https://github.com/fatedier/frp/releases官方文档:https://gofrp.org/zh-cn 根据自己实际情况选择,家用电脑和服务器都是 x64 架构。上传软件个人习惯先分别在云端和本地的 ubuntu 的 /etc 目录下新建 frp 目录用来存放 frp 文件。解压后,在家用电脑端保存frpc和frpc.toml文件,在云服务器端保存frps和frps.toml文件。frp 软件在 0.52.0 版本开始支持 toml 格式的配置文件,在后继版本取消 ini 配置格式。 服务端设置云端放行端口frp 服务端口:7000(可自定义)frp 控制面板端口:7500(可自定义)要在两个地方放行:1、 是云服务器提供商设置的防火墙放行端口,2 是服务器操作系统 Ubuntu 端口也要放行# 添加监听端口 sudo firewall-cmd --permanent --add-port=7000/tcp # 添加管理后台端口 sudo firewall-cmd --permanent --add-port=7500/tcp sudo firewall-cmd --reload如果用的宝塔面板,在安全里设置:如果端口不放行后面会报无法连接错误: connect: no route to host云端配置文件 frp.tomlbindPort = 7000 # frp服务的特定端口,防火墙也需放开该端口 # 服务面板可查看frp服务状态信息 webServer.addr = "0.0.0.0" # 后台管理地址,默认是127.0.0.1,如果是公网访问则改成0.0.0.0 webServer.port = 7500 # 后台管理端口 webServer.user = "admin" # (可选)后台登录用户名 webServer.password = "admin" # (可选)后台登录密码 #transport.tls.force = true # 服务端将只接受 TLS链接 #auth.method = 'token' # 客户端访问验证方式 #auth.token = "54321" # 客户端访问验证密码,frpc要与frps一致 # 自定义的监听的端口,所有对服务器该端口访问将被转发到本地内网,做了反向代理可不处理防火墙放行 #vhostHTTPPort = 8000 #vhostHTTPSPort = 45443启动服务端方式一:直接启动服务器端,传统的启动方式是直接敲命令: 先 cd 到 frps 所在目录./frps -c ./frps.toml & 这么写,比较麻烦,而且如果要停止进程也比较麻烦,建议采用构建成服务的方式。方式二:以服务方式启动(推荐)安装 systemd,通常情况下系统都带得有,没有的情况下使用如下命令安装。使用 yum 安装 systemd(CentOS/RHEL)yum install systemd使用 apt 安装 systemd(Debian/Ubuntu)apt install systemd 创建 frps.service 服务创建并编辑该文件sudo vim /etc/systemd/system/frps.service 写入内容[Unit] # 服务名称,可自定义 Description = frp server After = network.target syslog.target Wants = network.target [Service] Type = simple # 启动命令,改为实际存放frps的路径 ExecStart = /path/to/frps -c /path/to/frps.toml [Install] WantedBy = multi-user.target以服务的方式管理 frps# 启动frp sudo systemctl start frps # 停止frp sudo systemctl stop frps # 重启frp sudo systemctl restart frps # 查看frp状态 sudo systemctl status frps # 设置为开机自启 sudo systemctl enable frps验证服务端是否启动成功访问:http:// 服务器 IP: 后台管理端口” ,输入用户名和密码可以查看连接状态如:http://62.244.114.4:7500/,用户名和密码分别对应 frps.toml 文件中的webServer.user = "admin" webServer.password = "admin" 登录之后 frp 控制面板界面如下:如果上述步骤没有问题,则说明 frp 的服务端配置成功了,也就意味着内网穿透你已经成功了一半客户端设置配置文件frpc.toml客户端,编辑frpc.toml文件:# frpc.toml transport.tls.enable = true # 从 v0.50.0版本开始,transport.tls.enable的默认值为 true serverAddr = "47.76.92.71" # 服务端ip serverPort = 7000 # 服务端端口 auth.method = 'token' # 客户端访问验证方式 auth.token = '54321' # 客户端访问验证密码 [[proxies]] name = "dy_mysql" # 客户端服务名 type = "tcp" # 通讯方式 localIP = "127.0.0.1" # 客户端的ip(固定) localPort = 3306 # 客户端服务端口 remotePort = 13306 # 映射到服务端端口(服务器需放行) [[proxies]] name = "dy_video" # 客户端服务名_一个监控摄像头 type = "tcp" # 通讯方式 localIP = "192.168.6.8" # 客户端的ip(固定) localPort = 5522 # 客户端服务端口 remotePort = 15522 # 映射到服务端端口(服务器需放行) [[proxies]] name = "test-http" type = "tcp" localIP = "127.0.0.1" # 需要暴露的服务的IP localPort = 9000 # 将本地9000端口的服务暴露在公网的6060端口 remotePort = 6060 # 暴露服务的公网入口 [[proxies]] name = "ssh" type = "tcp" localIP = "127.0.0.1" localPort = 22 remotePort = 6000 #customDomains = ["xxx.xxx.xxx.xxx"] [[proxies]] name = "web" type = "http" localPort = 80 #customDomains = ["域名"] [[proxies]] name = "web-80" type = "https" localPort = 45443 #customDomains = ["cloud.your-service.com"]运行启动客户端运行及加入自动启动也参考服务端,唯一不同的是客户端运行需要使用 frpc -c frpc.toml穿透测试现在可以通过外网直接用 ip + 端口访问家中这台电脑提供的服务了,当然原理上是通过云服务器的端口中转的。可以在家中电脑上继续搭建 NAS 系统,搭建自己的博客网站。如果是通过域名访问网站,在国内是需要备案的。用 docker 部署 frp服务端云服务器 ubuntu 配置文件 frps.tomlbindPort = 7000 # The default value is 127.0.0.1. Change it to 0.0.0.0 when you want to access it from a public network. webServer.addr = "0.0.0.0" webServer.port = 7500 # dashboard's username and password are both optional webServer.user = "admin" webServer.password = "admin" vhostHTTPPort = 8080启动脚本 serverstart.sh#!/bin/bash FRP_DIR=`pwd` docker stop frps docker rm frps docker run -d \ --restart always \ --network host \ --name frps \ -v ${FRP_DIR}/frps.toml:/etc/frp/frps.toml \ snowdreamtech/frps运行# frpc.toml serverAddr = "192.168.1.132" serverPort = 7000 [[proxies]] name = "ssh" type = "tcp" localPort = 22 remotePort = 6022客户端本地电脑 ubuntu 配置文件 frpc.toml#!/bin/bash FRP_DIR=`pwd` docker stop frpc docker rm frpc docker run -d \ --restart always \ --network host \ --name frpc \ -v ${FRP_DIR}/frpc.toml:/etc/frp/frpc.toml \ snowdreamtech/frpc启动脚本 clientstart.sh#!/bin/bash FRP_DIR=`pwd` docker stop frpc docker rm frpc docker run -d \ --restart always \ --network host \ --name frpc \ -v ${FRP_DIR}/frpc.toml:/etc/frp/frpc.toml \ snowdreamtech/frpc运行./clientstart.sh上述配置是一个把内网 ssh 服务的 22 号端口映射到公网的 6022 端口, 执行命令ssh -p 6022 192.168.1.132即可从外网访问内网 ssh 服务注: 用公网 ip 替换 192.168.1.132其它问题端口占用冲突如果你用的端口被系统保留了不让用,就得换其它端口可以通过如下命令查看保留的端口范围netsh interface ipv4 show excludedportrange protocol=tcp云服务器商的控制面板和 ubuntu 系统中都要放行防火墙端口相关引用用 FRP 配置 toml 文件搭建内网穿透杂记 | 使用 FRP 搭建内网穿透服务(新版 toml 配置文件,搭配反向代理食用)_frps.toml-CSDN 博客如何使用 docker+frp 进行内网穿透_docker_脚本之家内网穿透!如何配置 frp 新版 0.56.0 的配置文件. toml:提供 web、samba、ssh 远程连接示例_frp 0.56-CSDN 博客内网穿透工具 frp 原理和使用教程 - CSDN 博客
2025年01月06日
10 阅读
0 评论
0 点赞