FRP 内网穿透服务 的详细安装、配置和使用步骤



以下是 FRP 内网穿透服务 的详细安装、配置和使用步骤,涵盖服务端(公网服务器)和客户端(内网设备)的完整部署流程:


一、环境准备

1. 服务端要求

• 公网服务器:1核1GB内存及以上(推荐 Ubuntu/CentOS)。
• 开放端口:至少开放 7000(FRP服务端管理端口)和需要映射的公网端口(如 80, 443, 6000 等)。
• 域名(可选):若需绑定HTTP/HTTPS服务,需提前准备域名并解析到公网服务器IP。

2. 客户端要求

• 内网设备:能访问目标服务(如NAS、本地Web服务器)的设备。
• 操作系统:支持 Windows/Linux/macOS/ARM(树莓派等)。


二、服务端(Frps)部署

1. 下载并安装 FRP

# 进入安装目录
cd /opt

# 下载最新版本(替换版本号)
wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz

# 解压并重命名文件夹
tar -zxvf frp_0.52.3_linux_amd64.tar.gz
mv frp_0.52.3_linux_amd64 frp
cd frp

2. 配置服务端文件 frps.ini

[common]
bind_port = 7000            # 服务端监听端口
token = your_secure_token    # 客户端连接鉴权密钥
dashboard_port = 7500        # 监控面板端口
dashboard_user = admin       # 面板用户名
dashboard_pwd = admin123     # 面板密码
log_level = info             # 日志级别
log_max_days = 7             # 日志保留天数

# 可选:HTTPS 配置(若需穿透HTTPS服务)
vhost_http_port = 80
vhost_https_port = 443

3. 启动 FRP 服务端

# 直接启动(测试用)
./frps -c frps.ini

# 后台运行(推荐)
nohup ./frps -c frps.ini > frps.log 2>&1 &

# 验证是否运行
ps aux | grep frps

4. 配置开机自启(Systemd)

# 创建 systemd 服务文件
sudo nano /etc/systemd/system/frps.service
[Unit]
Description=FRP Server
After=network.target

[Service]
Type=simple
ExecStart=/opt/frp/frps -c /opt/frp/frps.ini
Restart=on-failure

[Install]
WantedBy=multi-user.target
# 启动服务并设置开机自启
sudo systemctl daemon-reload
sudo systemctl start frps
sudo systemctl enable frps

三、客户端(Frpc)部署

1. 下载并安装 FRP

Linux/macOS:

wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz
tar -zxvf frp_0.52.3_linux_amd64.tar.gz
cd frp_0.52.3_linux_amd64

Windows:
GitHub Releases 下载 frp_*_windows_amd64.zip 并解压。

2. 配置客户端文件 frpc.ini

示例1:映射 SSH 服务(TCP)

[common]
server_addr = your_server_ip  # 公网服务器IP或域名
server_port = 7000            # 服务端端口
token = your_secure_token      # 与服务端一致的Token

[ssh]                         # 自定义服务名称
type = tcp
local_ip = 127.0.0.1          # 内网服务IP
local_port = 22               # 内网服务端口
remote_port = 6022            # 公网映射端口

示例2:映射 Web 服务(HTTP)

[web]
type = http
local_port = 8080
custom_domains = www.yourdomain.com  # 需解析到公网服务器IP

示例3:安全 TCP 模式(STCP)

[secret_rdp]
type = stcp
sk = my_secret_key            # 访问密钥
local_ip = 192.168.1.100
local_port = 3389             # 远程桌面端口

3. 启动客户端

Linux/macOS:

# 直接启动
./frpc -c frpc.ini

# 后台运行
nohup ./frpc -c frpc.ini > frpc.log 2>&1 &

Windows:
双击 frpc.exe 或使用命令行:

frpc.exe -c frpc.ini

4. 配置客户端开机自启

Windows:
将 frpc.exe 和 frpc.ini 放入启动文件夹(C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup)。

Linux(Systemd):
参考服务端的 Systemd 配置,修改 ExecStart 路径为客户端路径。


四、验证与使用

1. 测试 SSH 穿透

ssh username@公网服务器IP -p 6022

2. 访问 Web 服务

浏览器访问 http://公网服务器IP:80http://www.yourdomain.com

3. 监控面板

访问 http://公网服务器IP:7500,输入用户名密码(配置文件中设置的 dashboard_userdashboard_pwd),查看连接状态和流量统计。


五、高级配置

1. TLS 加密通信

服务端(frps.ini):

[common]
tls_only = true               # 强制TLS加密

客户端(frpc.ini):

[common]
tls_enable = true             # 启用TLS
tls_server_name = frp.example.com  # 验证服务端证书域名

2. 多端口批量映射

[range:tcp_ports]           # 映射6000-6010端口范围
type = tcp
local_ip = 192.168.1.200
local_port = 6000-6010
remote_port = 6000-6010

3. Docker 部署

服务端:

docker run -d --name frps \
  -p 7000:7000 -p 80:80 -p 443:443 \
  -v /path/to/frps.ini:/etc/frp/frps.ini \
  snowdreamtech/frps

客户端:

docker run -d --name frpc \
  -v /path/to/frpc.ini:/etc/frp/frpc.ini \
  snowdreamtech/frpc

六、故障排查

1. 常见问题

• 连接失败:检查服务端防火墙是否开放端口(7000, 7500, 公网映射端口)。
• Token 错误:确保客户端和服务端的 token 一致。
• 域名解析问题:使用 nslookup www.yourdomain.com 验证域名是否正确解析。

2. 日志查看

# 服务端日志
tail -f /opt/frp/frps.log

# 客户端日志(Linux)
tail -f frpc.log

七、安全建议

  1. 定期更换 Token:避免使用默认或简单密钥。
  2. 限制访问 IP:在服务端配置 allow_ports 和防火墙白名单。
  3. 禁用 Dashboard 公网访问:仅允许本地或VPN访问 7500 端口。

通过以上步骤,您可以快速部署一套完整的 FRP 内网穿透服务,安全高效地访问内网资源。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

独隅

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值