不知道现在还有没有用类似方法吧网站丢自己家里的大佬。
FRP 是一个类似 ngrok 的内网穿透工具,它并不像 ngrok 一样有漂亮的官网。但用户体验感丝毫不差,甚至个人感觉比ngrok更方便,更具优势。FRP 支持 TCP/UDP/HTTP/HTTPS 的内网转发。极大的方便了我们进行WEB调试,甚至可以愉快的在家里托管自己的博客。
上图是对 FRP 最好的诠释,身处NAT网络环境中的 Server1 & Server2 & Server3 并没有公网IP,所以客户端并不能直接访问,但是通过FRP服务器的转发就可以愉快的进行内网穿透,达到访问它们的目的。
以下脚本转载自Clang 在 koolshare 发布的一键脚本 (备份程序到 FTP服务器)
服务端安装(默认v0.13.0版本)
支持:Centos | Debian | Ubuntu (32bit / 64bit)
wget --no-check-certificate https://ftp.al/install-frps.sh -O ./install-frps.sh chmod 700 ./install-frps.sh ./install-frps.sh install
服务器中运行一键程序后,脚本将会自动识别机器的IP地址。同时会提示你选择服务器进行下载。
1 代表通过FTP服务器进行安装
2 代表通过Github服务器进行安装
接下来会提示输入以下自定义内容:
Please input frps bind_port [1-65535](Default Server Port: 7000):
#输入frp提供服务的端口,用于服务器端和客户端通信Please input frps dashboard_port [1-65535](Default dashboard_port: 7500):
#输入frp的控制台服务端口,用于查看frp工作状态Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80):
#输入frp进行http穿透的http服务端口Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443):
#输入frp进行https穿透的https服务端口Please input privilege_token (Default: NZKY0cB4H7q6p0hmubOPrpfGF3qIHnWP):
#输入frp服务器和客户端通信的密码,默认是随机生成的Please input frps max_pool_count [1-200](Default max_pool_count: 50):
#设置每个代理可以创建的连接池上限,默认50Enter your choice (1, 2, 3, 4 or exit. default [1]):
#设置日志等级,4个选项,默认是infoPlease input frps log_max_days [1-30]
(Default log_max_days: 3 day):
#设置日志保留天数,范围是1到30天,默认保留3天。Enter your choice (1, 2 or exit. default [1]):
#设置是否开启日志记录,默认开启,开启后日志等级及保留天数生效,否则等级和保留天数无效
如果您是第一次安装,建议所有选项均默认配置,也就是直接按回车,程序就会使用默认配置进行安装。
大概不到2分钟,就会安装成功,不会像ngrok那样配置好久。
下面是服务端的相关命令
/etc/init.d/frps start #启动frps服务端 /etc/init.d/frps stop #停止frps服务端 /etc/init.d/frps restart #重启frps服务端 /etc/init.d/frps status #显示frps状态 /etc/init.d/frps config #配置frps服务端 /etc/init.d/frps version #显示frps版本
启动成功后,本地访问 https://ip:7500 即可看到WEB控制台。到此安装服务端成功!
客户端
github下载
下载解压后,将 frpc.ini 替换为和你服务器相关的配置即可
[common] server_addr = #你的服务器IP server_port = 7000 log_file = ./frpc.log log_level = info log_max_days = 3 privilege_token = 12345678 #这里的值需要与服务器保持一致 pool_count = 5 tcp_mux = true user = your_name login_fail_exit = true protocol = tcp [HTTP_mode] privilege_mode = true type = http local_ip = 127.0.0.1 local_port = 80 custom_domains = #你的域名 | 需A记录指向服务器IP
最后运行 frpc.exe 即可开启客户端,同时您的本地Server 也可以通过域名访问了。
注意:请不要直接点击 frpc.exe 否则会出现frp客户端闪退。原因是因为该程序并未指向配置文件
请通过cmd命令进入frpc.exe所在的目录,然后运行:
frpc.exe -c frpc.ini
更多内容请参照Github中的frp项目
转自热闹网:FRP 内网穿透一键脚本 | 适用于Linux服务端