frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网
frp文档
frp git地址
下载地址
frps服务端 有公网ip的机器
服务端配置文档
frps.ini 配置文件
[common]
bind_port = 6666 # frp监听的端口,默认是7000
vhost_http_port = 8080 # web代理
# auth
token = 00050108 # 客户端需要设置一样的值才能鉴权通过
# Dashboard # 服务端监控web
dashboard_port = 6888 # 开启端口
dashboard_user = admin # web后端登陆用户
dashboard_pwd = asimov # 密码
enable_prometheus = true
# frp log
log_file = /var/log/frps.log # 日志
log_level = info # 日志level
log_max_days = 10 # 保存时间
开放端口
6666 8080 6888 6000
firewall-cmd --zone=public --add-port=8080/tcp --permanent && firewall-cmd --reload
启用systemd
vim /etc/systemd/system/frps.service
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /root/frp/frps -c /root/frp/frps.ini
[Install]
WantedBy = multi-user.target
启动 查看 关闭 服务端
systemctl start frps
systemctl status frps
systemctl stop frps
fprc 客户端内网机器
客户端配置文档
frpc.ini
[common]
server_addr = 31.12.95.78
server_port = 6666
token = 00050108 # 客户端需要设置一样的值才能鉴权通过
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000 # 如果直接用服务端ip -p 6000 连接内网的话。服务端需要开启6000端口
[web]
type = http # 代理类型
local_ip = 127.0.0.1 # 本地服务 IP
local_port = 88 # 本地端口
# 此处填写服务端的公网IP或域名
custom_domains = 服务端ip
remote_port = 8080 服务端绑定的端口
systemd
vi /etc/systemd/system/frpc.service
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /root/frpc/frpc -c /root/frpc/frpc.ini
[Install]
WantedBy = multi-user.target
服务端的监控web
http 代理了一个内网的web服务
tcp 代理了一个ssh连接内网的
通过 服务端ip :vhost_http_port (配的端口) 访问内网web
通过 ssh 内网用户@服务端ip -p 6000 内网机器密码 连接内网机器