使用frp,进行内网穿透
使用frp,进行内网穿透
什么是frp
frp is a fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. Now, it supports tcp, udp, http and https protocol when requests can be forwarded by domains to backward web services.
使用一台服务器的端口,将某个在内网的服务,通过frp进行内网穿透,使所有用户,可以在公网进行访问服务.
https://github.com/fatedier/frp
下载地址:
https://github.com/fatedier/frp/releases
frp客户端 frpc
配置文件
[common] server_addr = x.x.x.x server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 [nas] type = http local_port = 5000 custom_domains = no1.domain.com [web] type = http local_port = 80 custom_domains = no2.domain.com
上面的配置和服务端是对应的。
[common]中的server_addr填frp服务端的ip(也就是外网主机的IP),server_port填frp服务端的bind_prot。
[ssh]中的local_port填群晖的ssh端口。
[nas]中的type对应服务端配置。local_port填群晖的DSM端口。custom_domains为要映射的域名,记得域名的A记录要解析到外网主机的IP。
[web]同上,local_port填群晖的web端口。这里创建了两个http反向代理是为了分别映射群晖两个重要的端口,5000和80,前者用于登录群晖管理,后者用于群晖的Web Station和DS Photo。
保存配置,输入以下指令运行frp客户端。
./frpc -c ./frpc.ini
此时在服务端会看到"start proxy sucess"字样,即连接成功。
frp服务端 frps
配置文件
[common] bind_port = 7000 vhost_http_port = 8080
[common]部分是必须有的配置,其中bind_port是自己设定的frp服务端端口,vhost_http_port是自己设定的http访问端口。
保存上面的配置后,使用以下指令启动frp服务端。(如果需要在后台运行,请往下翻阅关于后台运行的部分。)
./frps -c ./frps.ini