注意:用国内服务器搭建,需要域名备案才能使用
一、frp的作用
利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。
利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机
二、配置说明
1、实现功能
(1)外网通过ssh访问内网机器
(2)自定义绑定域名访问内网web服务
2、配置前准备
(1)公网服务器1台
(2)内网服务器1台
(3)公网服务器绑定域名1个
(4)内网服务器部署一个web服务
三、安装frp
1、公网服务器与内网服务器都需要下载frp进行安装
2、下载地址是https://github.com/fatedier/frp/releases
也可以通过命令下载:
wget https://github.com/fatedier/frp/releases/download/v0.16.1/frp_0.16.1_linux_amd64.tar.gz
3.在WINDOWS下用winscp软件登录,上传frp_0.16.1_linux_amd64.tar.gz至root目录
4.解压文件:
tar -zxvf frp_0.16.1_linux_amd64.tar.gz
5.进入解压目录:
cd frp_0.16.1_linux_amd64
frps、frps.ini这个两个是服务端文件,frpc、frpc.ini这两个是客户端文件
6.配置服务端:
vi ./frps.ini
[common] bind_port = 7000 #与客户端绑定的进行通信的端口 vhost_http_port = 80 #访问客户端web服务自定义的端口号 vhost_https_port = 443
按”i”键进行编辑,按“esc”退出编辑状态,输入“:wq”退出
四、启动服务端
临时启动
./frps -c ./frps.ini
后台保持启动
nohup ./frps -c ./frps.ini &
五、配置客户端
vi ./frpc.ini
[common] server_addr = 120.56.37.48 #公网服务器ip server_port = 7000 #与服务端bind_port一致 #公网通过ssh访问内部服务器 [ssh] type = tcp #连接协议 local_ip = 127.0.0.1 #内网服务器ip local_port = 22 #ssh默认端口号 remote_port = 6000 #自定义的访问内部ssh端口号 #公网访问内部web服务器以http方式 [web] type = http #访问协议 local_ip = 127.0.0.1 #内网服务器ip local_port = 80 #内网web服务的端口号 custom_domains = www.10086ol.com,10086ol.com #所绑定的公网服务器域名,一级、二级域名都可以,绑定多个域名时用英文“,”分开
六、启动客户端
临时启动
./frpc -c ./frpc.ini
后台保持启动
nohup ./frpc -c ./frpc.ini &
七、穿透公司代理内网
1.修改服务端配置文件
vi ./frps.ini
[common] bind_port = 443 #端口号修改为443 vhost_http_port = 80 #访问客户端web服务自定义的端口号
2.修改客户端配置文件
vi ./frpc.ini
[common] server_addr = 118.24.127.138 server_port = 443 #端口号修改为443 http_proxy = http://10.168.57.241:8088 #加入公司代理地址 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 [web] type = http local_ip = 127.0.0.1 local_port = 80 custom_domains = www.10086ol.com
服务端与客户端启动方式不变,参照四、六。
八、群晖NAS使用frp穿透服务
①.设置ROOT密码,获取群晖的ROOT权限
1.打开控制面板,开启SSH功能
2.终端输入命令ssh admin@192.168.1.201登录,密码为群辉NAS的用户密码(地址修改为自己的NAS地址,win用户用Putty这个软件登录)
3.输入命令
sudo -i
4.设置root密码
synouser —setpw root XXX
【XXX便是你要修改的密码】
②.客户端调试
1.使用root用户登录群晖6.1
ssh root@192.168.1.201
(地址修改为自己的群晖NAS地址)
2.群晖NAS登陆后台配置文件
[common] server_addr = 118.24.127.138 server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 [nasweb] type = http local_ip = 127.0.0.1 local_port = 5000 #群晖NAS登陆地址端口是5000 custom_domains = nas.veecolor.com
2.使用群晖NAS手机APP的DS photo软件在外网访问配置文件
[common] server_addr = 118.24.127.138 server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 [nasweb] type = http local_ip = 127.0.0.1 local_port = 5000 #群晖NAS登陆地址端口是5000 custom_domains = nas.veecolor.com [nasphoto] type = tcp #协议为TCP协议 local_ip = 127.0.0.1 local_port = 80 remote_port = 8000 #需要做一个端口转发才可以实现APP登陆,端口自定义 custom_domains = photo.veecolor.com
[…] 转载原创文章请注明,转载自: Vedio Talk – LINUX | frp内网穿透穿透服务器 (https://vt.wooomoo.com/archives/375) […]