使用frp实现内网穿透

平凡
2018-06-29 07:54:12
399 阅读

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。主要他是一个开源的。
项目地址:https://github.com/fatedier/frp

架构

架构图

使用示例

根据对应的操作系统及架构,从 Release 页面下载最新版本的程序。
将 frps 及 frps.ini 放到具有公网 IP 的机器上。
将 frpc 及 frpc.ini 放到处于内网环境的机器上。

服务端配置 frps.ini

[common]
# 用于接收 frpc 连接的端口,iptables 需要开放此端口
bind_port = 7000
# 如果需要支持http类型的代理则需要指定一个端口
vhost_http_port = 8000
vhost_https_port = 44300
log_file = ./frps.log
log_level = info
# 为了防止端口被滥用,可以手动指定允许哪些端口被使用
allow_ports = 8000,44300,7000,7400,33060

客户端配置 frpc.ini
假设 frps 所在服务器的公网 IP 为 x.x.x.x

[common]
server_addr = x.x.x.x
server_port = 7000
# 这两个配置用于启用客户端热加载配置文件功能 ./frpc reload
admin_addr = 127.0.0.1
admin_port = 7400
log_file = ./frpc.log
log_level = info

# 通过 ssh 访问内网机器
# ssh -oPort=6000 用户名@x.x.x.x
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

# 范围端口映射
[range:tcp]
type = tcp
local_ip = 127.0.0.1
local_port = 3306
remote_port = 33060

# 通过 http://www.einsition.com:8000 访问内网的 web 服务
[web]
type = http
local_ip = 127.0.0.1
local_port = 8000
custom_domains = www.einsition.com

启动 frps

$ nohup ./frps &

启动 frpc

$ nohup ./frpc &

更多配置请查阅 官方文档

0 评论
暂无数据