FRP 内网穿透指南:简单上手,快速入门
????????最近受朋友启发,突然萌生了一个想法,那就是如何将家里闲置五六年的台式机给利用起来, 本来打算组装一个NAS存储服务器,但是硬盘实在是有点小贵,所以决定先买了一块799元的4T机械硬盘, 然后做的frp内网穿透,以便于在外网环境下随时可以操作家里的电脑,存个资料啥的还是比较方便的,当然为了资料的安全,未来还是考虑要做NAS存储的。
frp是什么?
????????frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。
????????可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
为什么使用 frp?
????????通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:
- 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。
- 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
- 代理组间的负载均衡。
- 端口复用,多个服务通过同一个服务端端口暴露。
- 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
- 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
- 服务端和客户端 UI 页面。
frp下载
frp服务端安装(公网)
????????frps的安装运行需要在公网IP的服务器上运行,这里我是用自己买的腾讯云服务器,配置嘛 4核8G 12Mbps,足够用了,用的操作系统是centos, 我是将下载下来的frp_0.37.0_linux_amd64.tar.gz文件放在了/opt/frp目录下面(随便放哪里都可以),由于安装的是frp服务端,所以文件中有关于frpc的客户端文件我们就删掉就可以了(没有则忽略,删不删没啥影响)。
????????这里我们需要重点关注的是frps.ini这个配置文件,如下图所示:
frps.ini配置文件内容详解
[common]
#服务监听的ip
bind_addr = 0.0.0.0
#服务监听端口(注:自定义的7000端口需要与frpc内网客户端的端口一致)
bind_port = 7000
#访问web服务需要用到的端口
vhost_http_port = 30001
#https需要用到的端口
vhost_https_port = 443
# 指定 Dashboard 的监听的 IP 地址
dashboard_addr = 0.0.0.0
#指定 Dashboard 的监听的端口
dashboard_port = 30000
# 指定访问 Dashboard 的用户名
dashboard_user = fenglm
# 指定访问 Dashboard 的密码
dashboard_pwd = 密码随便定义即可
#防止被随意注册(自定义的token需要与frpc内网客户端的一致)
token = ucqawq
# 日志的记录级别,分为debug, info, warn, error四级,日志保存的天数,默认3天
log_file = ./frps.log
log_level = info
log_max_days = 3
frps命令详解
【启动frps】
nohup ./frps -c ./frps.ini&
【查看日志】
tail -f frps.log
【停止frps】
ps -ef|grep frp
kill -9 进程号
frp客户端安装(内网)
frpc的安装运行需要在内网的服务器上运行(因为我们需要进行内网穿透)
- 这里我们需要重点关注的是frpc.ini这个配置文件,如下图所示
frpc.ini配置文件内容详解
[common]
#配置公网服务器IP地址
server_addr = 49.23.19.15
#服务监听端口(注:自定义的7000端口需要与frps服务端的端口一致)
server_port = 7000
#防止被随意注册(自定义的token需要与frps服务端的一致)
token = ucqawq
log_file = ./frpc.log
log_level = info
log_max_days = 3
[RDP]
type = tcp
local_ip = 127.0.0.1
#3389是远程桌面的默认端口,我们远程桌面的地址为:49.23.19.15:9000
local_port = 3389
#自定义远程服务器端口
remote_port = 9000
[Webdav]
type = tcp
local_ip = 127.0.0.1
#自定义Webdav端口
local_port = 5030
#Webdav远程服务端口,我们通过RaiDrive连接地址为:49.23.19.15:9010
remote_port = 9010
????????注:在配置文件中,我配置了[Webdav],目的是在外网电脑上可以通过RaiDrive映射本地网络磁盘,方便随时向家里的电脑磁盘中存取文件,如下图所示:
这里我们只需要下载RaiDrive.rar,安装配置49.23.19.15:9010即可,配置下图所示:
Webdav下载运行
解压并新建config.yaml配置文件
config.yaml配置文件内容详解
# Server related settings
address: 0.0.0.0
#与frpc配置文件中的Webdav端口对应
port: 5030
auth: true
tls: false
cert: cert.pem
key: key.pem
prefix: /
# Default user settings (will be merged)
#需要映射的本地盘符需要设置一下
scope: D:/
modify: true
rules: []
# CORS configuration
cors:
enabled: true
credentials: true
allowed_headers:
- Depth
allowed_hosts:
- http://localhost:8080
allowed_methods:
- GET
exposed_headers:
- Content-Length
- Content-Range
#注:下面是配置了3套用户,且分别分配了D盘下不同的文件夹权限,方便多人共用且互不干扰
users:
- username: 内网服务器的用户名
password: 内网服务器的密码
- username: 内网服务器的用户名
password: 内网服务器的密码
scope: D:/shenjing
- username: 内网服务器的用户名
password: 内网服务器的密码
scope: D:/shenyuan
modify: true
rules:
- modify: true
path: D:\
- path: D:\
modify: true
????????注:如需要监控Webdav的运行日志,需要使用cmd命令运行,这里为了方便设置开机自启frpc和Webdav,使用了AlwaysUp软件,还是蛮好用的,如下图所示:
至此,关于frp的整套搭建及使用流程就介绍完毕!!!
?想要了解更多实用小干货
可关注我的【知乎】?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!