frp配置内网穿透
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
环境准备
准备一台公网服务器作为服务端,内网机器用本机。最后可以通过公网服务器访问本机服务。
下载安装包
安装包获取地址:https://github.com/fatedier/frp/releases,目前最新版本0.48。
下载解压 wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz
解压后有 frps,frps.ini 和frpc、frpc.ini两对文件。ini文件是配置文件。frps是服务端启动脚本,frps是客户端启动脚本。下面以http代理方式配置服务端和客户端。
服务端
frps.ini
[common]
#server端服务端口,供客户端连接使用
bind_port = 7001
vhost_http_port = 80
#鉴权校验使用,client连接时要和该token一致才能连接
token=123456
./frps -c frps.ini命令启动服务端。-c是指定配置文件
客户端
frpc.ini配置文件
#common主要配置连接server端信息
[common]
server_addr = [服务端IP]
server_port = 7001
token=123456
[web]
#代理类型
type = http
#本地服务端口
local_port = 80
#服务器绑定自定义域名,域名要可以公网解析到服务端服务器上,如果没有可以写服务端IP
#用户通过 vhost_http_port 访问的 HTTP 请求如果 Host 在 custom_domains 配置的域名中,则会被路由到此代理配置的本地服务
custom_domains = [域名]
frpc -c frpc.ini 命令启动客户端
测试
如果都没有错误,代理就配置好了。内网启动一个nginx 80端口服务。
通过访问配置的 custom_domains:vhost_http_port就会转发到local_port的客户端服务上。
过程中本地服务window机器最好关闭361、防火墙什么的软件。否则可能起不来客户端服务。
参考: