我们如何可以使用外网访问我们内网服务呢?有的人说可以使用第三方穿透工具,但是第三方穿透工具一般都不是很稳定,并且有各种限制,如果想要突破这些限制的话就需要支付一定的费用,所有使用非常麻烦,那么有没有办法我们自己搭建一个穿透服务呢?答案是可以的,下面我们就详细来讲解一下frp这个工具吧。
frp是一款内网穿透工具,首先要一台服务器用作服务端(Linux外网),将自己的(WIN10内网)电脑用作客户端,我将通俗的讲解详细的安装以及使用过程,废话不多直接开始。
Linux要开放 7000 7500 9600端口,一定不要漏掉
官网地址,大家可以上去下载需要的版本就行:
https://github.com/fatedier/frp/releases/tag/v0.33.0
服务端安装:
linux下载:我们将文件下载到 /usr/local/frp 目录下,没有目录就新建,我们先切换到目录下,下载并解压:
下载命令:
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
解压命令:
tar -zxvf frp_0.44.0_linux_amd64.tar.gz
完成以后切换到目录 /etc/systemd/system/ 新建文件 frps.service ,然后加入下面内容
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#Restart=always
Restart=on-failure
RestartSec=5s
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/usr/local/frp/frp_0.44.0_linux_amd64/frps -c /usr/local/frp/frp_0.44.0_linux_amd64/frps.ini
[Install]
WantedBy=multi-user.target
切换到我们安装目录,编辑里面的文件 frps.ini , 编辑内容如下
[common]
bind_addr = 172.20.185.38
bind_port = 7000
kcp_bind_port = 7000
vhost_https_port = 7001
dashboard_addr = 172.20.185.38
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
log_file = ./frps.log
log_level = info
log_max_days = 3
authentication_timeout = 900
token=long123456
allow_ports = 2000-3000,3001,3003,4000-50000,3362
max_pool_count = 50
max_ports_per_client = 0
参数说明
[common]
#内网IP
bind_addr = 172.20.185.38#frp开放端口
bind_port = 7000
kcp_bind_port = 7000
vhost_https_port = 7001
dashboard_addr = 172.20.185.38#客户端访问端口
dashboard_port = 7500#客户端访问账号
dashboard_user = admin#客户端访问密码
dashboard_pwd = admin#日志
log_file = ./frps.log
log_level = info#日志3天清除一次
log_max_days = 3
authentication_timeout = 900#设置的token,随意输入
token=long123456#可以穿透的端口,可以配置多个,中间用逗号隔开
allow_ports = 2000-3000,3001,3003,4000-50000,3362
max_pool_count = 50
max_ports_per_client = 0
配置完成以后保存
sudo systemctl enable frps -- 设置开机自启动
sudo systemctl start frps -- 启动frps服务
sudo systemctl status frps -- 查看启动日志
sudo systemctl restart frps -- 重启服务
sudo systemctl stop frps -- 关闭服务
完成以后输入 http://你的服务器IP:7500/ 输入账号密码 admin admin,当看到下面界面说明成功了。
下面安装客户端,我们使用64位的
下载完成以后编辑文件
写入内容
[common]
server_addr = 120.25.172.500
server_port = 7000
authentication_method = token
token = long123456
[test-9600]
type = tcp
local_ip = 127.0.0.1
local_port = 9600
remote_port = 9600
参数讲解
[common]
#服务端公网IP
server_addr = 120.25.172.500
server_port = 7000
authentication_method = token#必须要和服务端的token一致
token = long123456
[test-9600]
type = tcp#自己本地电脑内网IP
local_ip = 127.0.0.1#本地服务ip,比如本地服务9600需要穿透
local_port = 9600#服务器访问IP 比如 120.25.172.500:9600
remote_port = 9600
配置完成以后双击frpc.exe启动就可以了
启动成功:
浏览器输入:120.25.172.500:9600 ,一定要确保我们本地服务9600启动就可以了
这样就相当于通过访问120.25.172.500:9600这个外网直接访问到了我们的内网9600,当然这个端口自己可以随意去设置的。