赞
踩
FRP(Fast Reverse Proxy) 是一款简单,好用,稳定的隧道工具。它是一款高性能的反向代理应用,可以轻松地进行内网穿透,对外网提供服务。FRP 支持 TCP、UDP、KCP、HTTP、HTTPS等协议类型,并且支持 Web 服务根据域名进行路由转发。绕过复杂的网络对外服务从它开始,Go。
通信过程:内网服务器和公网虚拟机通过FRP建立隧道,用户请求公网虚拟机访问到内网服务器
FRPC #FRP的客户端
FRPS #FRP的服务端
frps.ini #服务端的配置文件
frpc.ini #客户端的配置文件
#公网服务器 = 阿里云、腾讯、天翼云等
1、一台有**固定IP**的公网服务器(Windows、Linux)
2、一台内网设备(Windows、Linux)
3、一台笔记本或台式机(调试用)
步骤一:下载获取安装包
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
步骤二:解压安装包到/etc/frp目录
mkdir /etc/frp && tar -zxvf frp_0.33.0_linux_amd64.tar.gz -C /etc/frp
步骤三:修改FRP服务端配置文件
vim /etc/frp/frps.ini
----------
[common]
bind_port = 20001 根据实际情况个人喜好更新IP端口
提示:20001端口需要在阿里云等公网服务器的安全组、防火墙里面放通
----------
步骤一:下载客户端安装包 windows端: https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_windows_amd64.zip Linux端: wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz 步骤二:解压安装包到对应文件夹 mkdir /etc/frp && tar -zxvf frp_0.33.0_linux_amd64.tar.gz -C /etc/frp 步骤三:修改配置文件 vi /etc/frp/frpc.ini ---------- [common] server_addr = 120.120.*.* #修改成服务端的公网IP或者域名也可以 server_port = 20001 #服务端的请求端口 [ssh] #Linux的ssh连接 #端口类型tcp、udp、http、https等 type = tcp #内网设备的IP,可以是这台设备的自身或其他 local_ip = 192.168.3.2 #内网IP端口,22端口对应的是ssh local_port = 22 #在外网访问的端口,自定义 remote_port = 26666 [RDP] #Windows远程桌面连接 type = tcp local_ip = 127.0.0.1 local_port = 3389 remote_port = 28888 步骤四:启动程序,并放到后台启动 Linux端: 1、cd /etc/frp 2、nohup sh /etc/frp/frpc -c /etc/frp/frpc.ini & Windows端: 1、打开CMD命令行提示符工具 2、cd c:\frp\ 3、start /b frpc.exe -c c:\frp\frpc.ini
#1、编辑frps.service vi /etc/frp/systemd/frps.service [Unit] Description=FRP to bypass NAT Network Wants = network-online.target After=network.target [Service] Type=simple ExecStart=/etc/frp/frps -c /etc/frp/frps.ini #ExecReload=/etc/frp/frps #ExecStop=/etc/frp/frps StandardOutput = syslog StandardError = inherit PrivateTmp=true [Install] WantedBy=multi-user.target 保存 #2、复制frps.service到lib库 cp /etc/frp/systemd/frps.service /lib/systemd/system/ #3、重新加载,启动服务并设置开机自启动 systemctl-daemon-reload systemctl start frps.service systemctl enable frps.service
#1、编辑frpc.service vi /etc/frp/systemd/frpc.service [Unit] Description=FRP to bypass NAT Network Wants = network-online.target After=network.target [Service] Type=simple ExecStart=/etc/frp/frpc -c /etc/frp/frpc.ini #ExecReload=/etc/frp/frpc #ExecStop=/etc/frp/frpc StandardOutput = syslog StandardError = inherit PrivateTmp=true [Install] WantedBy=multi-user.target 保存 #2、复制frps.service到lib库 cp /etc/frp/systemd/frpc.service /lib/systemd/system/ #3、重新加载,启动服务并设置开机自启动 systemctl-daemon-reload systemctl start frpc.service systemctl enable frpc.service
#frps.ini服务端 [common] bind_port = 7000 bind_udp_port = 7000 #frpc.ini客户端【*在需要暴露到内网的机器上部署 frpc*】 [common] server_addr = x.x.x.x server_port = 7000 [p2p_ssh] type = xtcp #只有 【SK】 一致的用户才能访问到此服务,类似Token sk = abcdefg local_ip = 127.0.0.1 local_port = 22 #frpc.ini客户端【*在想要访问内网服务的机器上也部署 frpc*】 [common] server_addr = x.x.x.x server_port = 7000 [p2p_ssh_visitor] type = xtcp # xtcp 的访问者 role = visitor # 要访问的 xtcp 代理的名字 server_name = p2p_ssh sk = abcdefg # 绑定本地端口用于访问 ssh 服务 bind_addr = 127.0.0.1 bind_port = 6000
优势:FRP可以在各种复杂的企业内网绕过管理员将应用、服务器通过建立隧道发布到外网。FRP可以作为运维人员的应急手段。比花某壳的内网穿透稳定。
缺点:容易被外部渗透,可以配合Token、frp+openVpn等使用加强安全性。并且FRP发布的应用网速的瓶颈在于固定IP的网速,而不是发起请求的客户端。
如果UP婆主有什么写的不对,欢迎大家提出建议并指出~谢谢大家
支持一下~别下次一定咯
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。