FRP内网穿透

 火... [复制链接]  4860查看
 楼主| 易西 发表于 2024-2-16 16:46:53 | 显示全部楼层
安装[size=1.25]关于如何安装 frp 的说明。
frp 采用 Go 语言编写,支持跨平台,只需下载适用于您平台的二进制文件即可执行,无需额外依赖。

系统需求
由于采用 Go 语言编写,因此系统需求与最新的 Go 语言对系统和平台的要求一致,具体请参考 [color=var(--bs-link-color)]Golang System requirements
下载
您可以从 GitHub 的 [color=var(--bs-link-color)]Release 页面中下载最新版本的客户端和服务器二进制文件。所有文件都打包在一个压缩包中,还包含了一份完整的配置参数说明。
部署
  • 解压下载的压缩包。
  • 将 frpc 复制到内网服务所在的机器上。
  • 将 frps 复制到拥有公网 IP 地址的机器上,并将它们放在任意目录。
开始使用!
  • 编写配置文件,目前支持的文件格式包括 TOML/YAML/JSON,旧的 INI 格式仍然支持,但已经不再推荐。
  • 使用以下命令启动服务器:./frps -c ./frps.toml。
  • 使用以下命令启动客户端:./frpc -c ./frpc.toml。
  • 如果需要在后台长期运行,建议结合其他工具,如 [color=var(--bs-link-color)]systemd 和 supervisor。
如果您是 Windows 用户,需要在命令提示符中执行相同的命令。
有关如何编写配置文件,请参考 [color=var(--bs-link-color)]示例 部分中的内容。
完整的配置项说明,请参考 [color=var(--bs-link-color)]Reference 中的内容。

[color=var(--bs-link-color)]使用 systemd
此示例演示如何在 Linux 系统下使用 systemd 来管理 frps 服务,包括启动、停止、配置后台运行和设置开机自启动。


[color=rgb(108, 117, 125) !important]最后修改 December 13, 2023: [color=var(--bs-link-color)]update (#73) (c9e4f2f)




  • [color=inherit !important][url=https://github.com/fatedier/frp][/url]

[size=0.875em]© 2023 The frp Authors 保留所有权利




 楼主| 易西 发表于 2024-2-16 16:48:28 | 显示全部楼层
https://gofrp.org/zh-cn/docs/features/common/ui/
参考

Web 界面
目前 frpc 和 frps 分别内置了相应的 Web 界面方便用户使用。

服务端 Dashboard
服务端 Dashboard 使用户可以通过浏览器查看 frp 的状态以及代理统计信息。

注:Dashboard 尚未针对大量的 proxy 数据展示做优化,如果出现 Dashboard 访问较慢的情况,请不要启用此功能。

需要在 frps.toml 中指定 dashboard 服务使用的端口,即可开启此功能:

# frps.toml
webServer.port = 7500
# dashboard 用户名密码,可选,默认为空
webServer.user = "admin"
webServer.password = "admin"
打开浏览器通过 http://[server addr]:7500 访问 Dashboard 界面,输入用户名密码 admin。

你也可以通过配置 TLS 证书来启用 HTTPS 接口:

webServer.tls.certFile = "server.crt"
webServer.tls.keyFile = "server.key"
客户端管理界面
frpc 内置的 Admin UI 可以帮助用户通过浏览器来查询和管理客户端的 proxy 状态和配置。

需要在 frpc.toml 中指定 admin 服务使用的端口,即可开启此功能:

# frpc.toml
webServer.addr = "127.0.0.1"
webServer.port = 7400
webServer.user = "admin"
webServer.password = "admin"
打开浏览器通过 http://127.0.0.1:7400 访问 Admin UI。

如果想要在外网环境访问 Admin UI,可以将 7400 端口通过 frp 映射出去即可,但需要重视安全风险。

# frpc.toml
[[proxies]]
name = "admin_ui"
type = "tcp"
localPort = 7400
remotePort = 7400
最后修改 December 13, 2023: update (#73) (c9e4f2f)
© 2023 The frp Authors 保留所有权利
[发帖际遇]: 易西 在网吧通宵,花了 5 金钱. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2024-2-16 17:48:00 | 显示全部楼层

https://zhuanlan.zhihu.com/p/658585097

https://zhuanlan.zhihu.com/p/658585097
参考
l
inux (服务器)下后台自启动 frps
背景
操作系统linux, 目的是让我的 frp 后台自启动不妨碍我干其他事。

步骤
登录服务器,输入sudo vim /lib/systemd/system/frps.service 其实就是在 root/lib/systemd/system 下面新建一个文件frps.service在文件里面写入以下内容




2.在文件里面写入以下内容

[Unit]

Description=frps daemon

[Service]

Type=simple

#此处把/root/frp_linux_arm64替换成 你的frps的实际安装目录

ExecStart=/root/frp_linux_arm64/frps -c /root/frp_linux_arm64/frps.ini

[Install]

WantedBy=multi-user.target

你的安装目录可以这样得到,到你安装 frps 的目录下 输入pwd




3.然后就启动frps sudo systemctl start frps

4.再打开自启动 sudo systemctl enable frps

其他

重启应用 sudo systemctl restart frps
停止应用 sudo systemctl stop frps
查看日志 sudo systemctl status frps
以下是我自己部署的方案:如图在宝塔系统-文件-root文件夹下新建frp文件夹,拷贝frps和http://frps.int文件

编辑http://frps.int文件,




新建文件run.sh并编辑代码

pkill -f frps

nohup /root/frp/frps -c /root/frp/frps.ini >/dev/null 2>&1 &




在宝塔软件商店,增加第三方应用插件 系统系统项2.0并编辑一下代码

pkill -f frps

nohup /root/frp/frps -c /root/frp/frps.ini >/dev/null 2>&1 &




windows (客户端)下后台自启动 frpc

背景
把我的服务器上frps设置成自启动和后台运行后,我的电脑上的 frpc 也想让他自启动且不显示小黑框在后台运行。

步骤
方法1
1.将下列代码存为一个.vbs文件,例如 frpcStart.vbs

set ws=WScript.CreateObject("WScript.Shell")

ws.Run "d:\Prg\frp\frpc.exe -c d:\Prg\frp\frpc.ini",0


2. 把这个vbs文件放到计算机的启动(开始 -------程序-----------启动)下面


开机之后把本地服务一开,其他人就可以通过我的服务器来访问我的本地电脑了




方法2

你的 Frp 同目录下新建一个.bat文件(例如 frpcStrat.bat),将下列代码写入,
@echo off

if "%1" == "h" goto begin

mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit

:begin

frpc.exe -c frpc.ini

goto begin


把这个.bat文件的快捷方式放到计算机的启动下面大概步骤就是

右键bat 文件,发送快捷方式到桌面
把快捷方式拖到 计算机的启动下面
区别:bat实现的会有小黑框一闪而过,vbs的则没有

http-server 后台运行,开机自启动
背景
有自己的云服务器,把自己电脑当成文件资源池,通过内网穿透软件让别人也能访问。

我这个打算用frp 来做,所以就有三个问题要解决

frps 服务器端的自启动与后台运行(就是我租的服务器端)
frpc 客户端的自启动与后台运行(就是我电脑端)
http-server 的自启动与后台运行(就是本地的http服务后台运行)
重点解决后天运行命令行窗口不显示

使用http-server可以快速搭建一个简单的服务器。可用来:

做模拟数据

做静态资源服务器

做调试、测试的前端服务器

做代理转发

1、依赖环境:首先安装node.js环境,然后使用npm进行安装

2、命令行格式:

http-server [path] [options]

3、参数介绍




1.安装node.js

官网地址:https://nodejs.org/en,并安装。在命令行输入命令node -v以及npm -v检查版本,确认是否安装成功。

我的测试电脑是win7,只能安装node-v12.22.12-x64.msi版本。

2.安装http-server
在命令行中运行安装命令安装到全局,最好是使用管理员权限安装 (-g表示安装到全局,之后所有文件夹路径下输入http-server都可以使用):

npm install http-server -g
3.开启服务

命令行中进入目标文件夹(也就是需要启动服务的文件夹),输入如下命令:
http-server
本地服务器就启动起来了,默认端口为8080。
4.各端访问
本地服务器启动完成之后,命令行窗口会输出如下图所示的地址:

本机访问的话,两个地址都可以;手机或其他设备连接,请使用其中有ip的那个地址访问(http://10.134.253.8:8080),并且手机或者其他设备与本机必须在同一局域网下。

修改端口
http-server -a 127.0.0.1 -p 8090
回忆一下之前是怎么在本地起服务的,都是在要分享的文件夹下打开命令行,输入 http-server -p 要开放的端口 。为了让他开机自启动和隐藏运行窗口,我们把命令打包写成脚本

核心就在于用脚本执行这行命令 http-server 你想分享的目录绝对地址 -p 想开放的端口号

我的脚本如下:我想让给别人访问我的学习资料,开放端口我想开放8088

set ws=WScript.CreateObject("WScript.Shell")

ws.Run "http-server D:\学习资料 -p 8088",0

' 注释 0代表隐藏cmd窗口 1代表显示




步骤

新建一个txt文件,写入上面代码,改后缀为.vbs,名字最好英文
把.vbs文件放到计算机的启动下面,大概步骤,左下角搜索 开始 ,然后找到程序 ,再找到启动。把文件复制进去。

至此,关于frp实现内网穿透的搭建到此结束!



[发帖际遇]: 一个袋子砸在了 易西 头上,易西 赚了 2 金钱. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2024-2-16 17:52:18 | 显示全部楼层
 楼主| 易西 发表于 2024-2-17 12:19:56 | 显示全部楼层
 楼主| 易西 发表于 2024-2-17 13:21:31 | 显示全部楼层
[发帖际遇]: 易西 被钱袋砸中进医院,看病花了 1 金钱. 幸运榜 / 衰神榜
 楼主| 易西 发表于 2024-2-17 17:31:32 | 显示全部楼层
 楼主| 易西 发表于 2024-2-17 19:18:59 | 显示全部楼层
 楼主| 易西 发表于 2024-2-17 19:29:49 | 显示全部楼层
 楼主| 易西 发表于 2024-2-17 20:50:21 | 显示全部楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

邮箱|首页|小黑屋|吾侪 ( 蜀ICP备2020029307号-4 )

GMT+8, 2025-11-5 22:33 , Processed in 0.081619 second(s), 17 queries , APCu On.

Powered by Discuz! X3.5

Copyright © , 吾侪网

快速回复 返回顶部 返回列表