IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> docker 搭建frp内网穿透以及frp详细使用 -> 正文阅读

[系统运维]docker 搭建frp内网穿透以及frp详细使用

下载说明

去github官网下载最新版本,链接地址:https://github.com/fatedier/frp/releases/download/

windows对应:windows amd版本

linux对应:linux amd版本,

本文服务端使用linux版本采用docker构建,无需下载。客户端windows需要下载对应文件。

配置 Windows远程访问

服务器端配置

需要一台公网的服务器,本文服务器端是centos7

创建frp文件

mkdir -p /home/soft/frp && cd /home/soft/frp

添加服务端配置文件

创建配置文件

vim frps.ini

添加如下配置

[common]
bind_port = 7000

添加docker启动脚本

创建配置文件

vim docker-start.sh

添加如下配置

#!/bin/bash
docker run -d \
    --restart always \
    --network host \
    --name frps \
    -v /home/soft/frp/frps.ini:/etc/frp/frps.ini \
    snowdreamtech/frps

启动服务端

sh docker-start.sh

客户端配置

将下载好的文件解压,修改frpc.ini文件

[common]
server_addr = 服务器公网ip
server_port = 7000

# 远程控制
[mstsc]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 13389

启动客户端

frpc.exe -c frpc.ini

远程控制访问:公网ip:13389

在这里插入图片描述

配置管理页

在服务器 frps.ini 配置如下:

[common]
bind_port = 7000
dashboard_addr = 0.0.0.0
dashboard_port = 7777
dashboard_user = terry
dashboard_pwd = terry123

打开浏览器 公网ip:7777 即可访问

在这里插入图片描述

配置密钥

frps.ini配置如下

[common]
bind_port = 7000
auto_token = terry

客户端frpc.ini 配置如下,auto_token必须和服务端的一致否则会连接不上

[common]
server_addr = 服务器公网ip
server_port = 7000
auto_token = terry

# 远程控制
[mstsc]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 13389

tcp其它常用应用场景

tcp不但可以支持使用远程访问,还支持http、ssh等。

服务端注意事项

需要开放客户端访问的端口,如客户端如下配置

type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 8086

local_port 是客户端占用的ip

remote_port 则是访问服务端的ip

http服务

客户端frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[http]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 8086

访问:公网ip:8086

ssh远程

客户端frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 122

访问:公网ip:122

mysql穿透

客户端frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[mysql]
type = tcp
local_ip = 127.0.0.1
local_port = 3306
remote_port = 13306

访问:公网ip:13306

反向代理

frp支持类似nginx反向代理,客户端frpc.ini配置,

[common]
server_addr = 公网ip
server_port = 7000

[mysql]
type = tcp
local_ip = 192.168.0.3
local_port = 3306
remote_port = 13306

访问:公网ip:13306,其代理到内网中192.168.0.3服务器上

http应用场景

frp http只能用一个http端口,一般应用于域名映射,http穿透可以用tcp即可。

域名映射

服务端frps.ini配置

[common]
bind_port = 7000
vhost_http_port = 81 # 访问服务器的81端口,映射到内网web服务

服务端frpc.ini配置

[common]
server_addr = 公网IP
server_port = 7000

[web01]
type = http
local_port = 8080
custom_domains = web01.terrybg.com

[web02]
type = http
local_port = 8081
custom_domains = web02.terrybg.com

stcp的应用

tcp模式每开多一个服务就会占用服务器端口,并且会将服务暴露在外面,会不安全。frp提供了stcp的模式,两内网连接可以通过密钥方式连接,并且不会暴露在公网上,但连接者也需要开启frp客户端。


服务端frps.ini配置

[common]
bind_port = 7000

客户端1 被访问者frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[mysql]
type = stcp
# 密钥
sk = abcdefg
local_ip = 127.0.0.1
local_port = 3306

客户端2 访问者frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[mysql_visitor]
type = stcp
# 密钥
sk = abcdefg
# 访问者名称
role = visitor
# 被访问的 stcp 的名字
server_name = rdp
bind_addr = 127.0.0.1
bind_port = 3306

xtcp的应用


服务端frps.ini配置

[common]
bind_port = 7000
bind_udp_port = 7001

客户端1 被访问者frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[mysql]
type = xtcp
# 密钥
sk = abcdefg
local_ip = 127.0.0.1
local_port = 3306

客户端2 访问者frpc.ini配置

[common]
server_addr = 公网ip
server_port = 7000

[mysql_visitor]
type = xtcp
# 密钥
sk = abcdefg
# 访问者名称
role = visitor
# 被访问的 stcp 的名字
server_name = rdp
bind_addr = 127.0.0.1
bind_port = 3306

rver_port = 7000

[mysql]
type = xtcp

密钥

sk = abcdefg
local_ip = 127.0.0.1
local_port = 3306


<br>

客户端2 访问者`frpc.ini`配置

```ini
[common]
server_addr = 公网ip
server_port = 7000

[mysql_visitor]
type = xtcp
# 密钥
sk = abcdefg
# 访问者名称
role = visitor
# 被访问的 stcp 的名字
server_name = rdp
bind_addr = 127.0.0.1
bind_port = 3306
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-22 21:01:04  更:2022-03-22 21:04:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:34:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码