FRP内网穿透工具

释放双眼,带上耳机,听听看~!

FRP内网穿透工具
现在家用网络,给的公网IP都是通过NAT方式,如果想做一些可用服务就需要用到穿透工具,最近发现了一款很强大的内网穿透工具FRP

首先到下载页面下载对应版本的服务端和客户端。我的服务器是Ubuntu 16.04 64位,客户端是Windows 10 Pro 64位,所以下面都以我自己的为准。大家根据自己情况配置;

执行下面的命令,下载frp服务器端。

cd /opt
sudo mkdir frp
cd frp
sudo wget https://github.com/fatedier/frp/releases/download/v0.9.3/frp_0.9.3_linux_amd64.tar.gz
然后解压,得到一个目录。

sudo tar xvf frp_0.9.3_linux_amd64.tar.gz
进入该目录,可以看到列出了一系列文件。

$ ls
LICENSE frpc frpc.ini frpc_min.ini frps frps.ini frps_min.ini
配置服务端
打开frps.ini文件,配置为类似下面这样的。custom_domains是自定义域名,如果有自己的域名就写到这里。auth_token是验证凭据,服务端和客户端的凭据必须一样才能连接,当然为了安全还是设置长一点。·dashborad`的三个配置是仪表盘功能的端口以及用户名和密码,为了安全也要设置的长一点。

[common]
bind_addr = 0.0.0.0
bind_port = 7777
vhost_http_port = 80
vhost_https_port = 443
dashboard_port = 8888
dashboard_user = *******
dashboard_pwd = *******

privilege_mode = true
privilege_token = 88888888

[http]
type = http
auth_token = 88888888
custom_domains = chengkai.vip

[https]
type = https
auth_token = 88888888
custom_domains = chengkai.vip
启动服务端
使用./frps -c ./frps.ini即可启动服务器端。然后应该会显示类似下面的文本,说明服务端启动成功。

2017/05/10 22:25:45 [main.go:194] [I] Start frps success
2017/05/10 22:25:45 [main.go:196] [I] PrivilegeMode is enabled, you should pay more attention to security issues
然后访问服务器的8888端口(前面服务端设置的仪表盘端口),输入用户名和密码之后应当可以看到frp的仪表盘。

设置自启
服务端虽然启动了,但是不能就这么算了。这个进程最好可以向Windows服务那样拥有一个状态,可以开机自启。我们使用Linux下常用的进程管理器supervisor来管理该服务。

首先需要安装supervisor

sudo apt install supervisor
然后在/etc/supervisor/conf.d下新建一个配置文件frp.conf,输入以下内容。command应该是你放置frp软件的位置。

[program:frp]
command = /opt/frp/frp_0.9.3_linux_amd64/frps -c /opt/frp/frp_0.9.3_linux_amd64/frps.ini
autostart = true
然后启动supervisor,如果事先已经安装好了supervisor那么就重新启动。之后查看一下supervisor的运行状态,看看frp是否已在运行。

# 重启supervisor
sudo systemctl restart supervisor
# 查看supervisor运行状态
sudo supervisorctl status
配置客户端
打开Powershell,然后输入下面的命令下载客户端。

wget https://github.com/fatedier/frp/releases/download/v0.9.3/frp_0.9.3_windows_amd64.zip -OutFile frp.zip
下载完成后,双击解压,得到一系列文件。然后双击打开frpc.ini,进行配置。server_addr为服务器的IP地址。server_port为服务器端口号,需要和服务器端配置相同。auth_token为凭据,需要和服务器端配置相同。local_ip和local_port用于设置本地Web服务器的IP和端口号。所以你也可以想到,不仅这里可以填写运行frp客户端的主机,还可以填写在本局域网中可以访问到的其他主机的IP地址。

[common]
server_addr = 0.0.0.0
server_port = 7777
auth_token = 88888888
privilege_token = 88888888

[http]
type = http
local_ip = 127.0.0.1
local_port = 80

[https]
type = https
local_ip = 127.0.0.1
local_port = 443
然后使用 ./frpc -c .\frpc.ini运行客户端。如果客户端显示类似这样的消息,说明和服务端连接成功。然后用自定义域名访问试试,看看能不能解析到你的本地网站。

2017/05/10 22:26:10 [control.go:206] [I] ProxyName [http], connect to server [XXX:7777] success!
2017/05/10 22:26:11 [control.go:220] [I] Start to send heartbeat to frps

到这里一个自定义内网穿透的网站就搭建完成了!

给TA打赏
共{{data.count}}人
人已打赏
技术

即时邮箱搭建(自助式一次性邮件服务)

2017-5-10 12:18:51

技术

Windows系统自定义封装ISO镜像

2017-5-12 18:16:17

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索