当前位置: 首页 > news >正文

十分钟实现内网连接,配置frp

                                  十分钟实现内网连接,配置frp

一.frp是什么?其实是一款实现外网连接内网的一个工具,个人理解,说白了就像是teamviwer一样,外网能访问内网。

  • 利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
  • 利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主

二.实现目标

  • 外网通过ssh访问内网
  • 可以访问内网web服务

三.需要的前提

    (1)公网服务器一台

    (2)内网服务器一台

    (3)公网绑定一个域名

    (4)内网部署一个web服务

       注意:如果单纯只是用来控制不访问web服务,则(3)(4)不是必须的,(1)(2)是必须的

四.开始搞起

  1. 公网和服务器都需要进行下载frp进行安装,废话不多说,基佬地址:Releases · fatedier/frp · GitHub

     当然也可以用命令:

wget 对应版本的地址
如:
wget https://github.com/fatedier/frp/releases/download/v0.22.0/frp_0.22.0_linux_386.tar.gz
  • 由于个人内网服务器64位ubunt系统,故内网服务器下载64位系统,用的这个版本:frp_0.22.0_linux_amd64.tar.gz
  • 个人外网服务器32位系统,故外网服务器服务器下载32位系统,用的这个版本:frp_0.22.0_linux_386.tar.gz

   2.新建目录

mkdir -p /usr/local/frp

frp_0.22.0_linux_amd64.tar.gz上传到该目录下,将frp_0.22.0_linux_386.tar.gz上传到该目录下。

   3.分别在内网服务器、外网服务器解压对应的文件

tar -zxvf frp_0.22.0_linux_amd64.tar.gz
tar -zxvf frp_0.22.0_linux_386.tar.gz

  4.分别进入解压目录:

cd /usr/local/frp/frp_0.22.0_linux_amd64
cd /usr/local/frp/frp_0.22.0_linux_386.tar.gz

                                           

                                           

注意:外网服务器上应该关注两个文件:frps、frps.ini

           内网服务器上应该关注两个文件:frpc、frpc.ini

5.配置外网服务器(公网服务器),vi ./frps.ini,注意启动时候请删除注释

[common]
bind_port = 8080                    # 和客户端进行绑定并通信的端口
#bind_udp_port = 993                 # udp端口,可以不用写
#vhost_http_port = 80                # 访问客户端web服务自定义的端口号,可以不用写
#vhost_https_port = 443             # 访问客户端web服务自定义的端口号,供https,可以不用写

保存后进行启动

nohup ./frps -c ./frps.ini &                 # 后台运行

执行完后如图:

使用命令查看进程号,是否成功

ps -A | grep frps

ok~配置完美

6.配置内网服务器(内网服务器),vi ./frpc.ini

[common]
server_addr = 147.31.180.123            # 此处填写公网ip
server_port = 8080                      # 与外网服务端bind_port一致# 公网通过ssh访问内部服务器
[ssh]
type = tcp                              # 连接协议
local_ip = 127.0.0.1                    # 内网服务器的ip地址
local_port = 22                         # ssh默认的端口号
remote_port = 110                       # 自定义访问内部ssh端口号#公网访问内部web服务器以http方式          # 如果没有需要访问内网web,则一下配置不需要
[web]
type = http         #访问协议
local_port = 8081   #内网web服务的端口号
custom_domains = neiwangdizhi.com   #所绑定的公网服务器域名,一级、二级域名都可以

保存后进行启动

nohup ./frpc -c ./frpc.ini &                 # 后台运行

使用命令查看进程号,是否成功

7测试:

成功如图:

同样,访问内网的web,则ip:neiwangdizhi.com port :110  用户名:linux服务器的用户   密码:linux服务器的密码

补充,当有一台公网服务器,多台内网服务器,则需要配置多设置,需要变化的是客户机的ssh,如下

1.对A机器做映射,并启动

[common]
server_addr = *********
server_port = *********[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 110

2.对A机器做映射,并启动

[common]
server_addr = *********
server_port = *********[ssh1]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 111

3. 运行即可

注意:[ssh]的名称必须不同,remote_port必须不同

http://www.lryc.cn/news/450338.html

相关文章:

  • 解决MySQL命令行中出现乱码问题
  • TS系列(7):知识点汇总
  • Unity 查看Inspectors组件时严重掉帧
  • golang学习笔记23-面向对象(五):多态与断言【重要】
  • RabbitMQ基础知识
  • 基于Python大数据的音乐推荐及数据分析可视化系统
  • 安达发|太阳能设备行业APS计划排程软件能解决哪些问题
  • CaChe的基本原理
  • 数据结构-栈(理解版)
  • NAND Flash虚拟层初始化
  • zabbix7.0监控linux主机案例详解
  • 2024重生之回溯数据结构与算法系列学习(10)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
  • django drf 过滤器
  • 蓝桥杯—STM32G431RBT6(RTC时钟获取时间和日期)
  • DriveVLM 论文学习
  • Unity3D 客户端多开
  • 使用代理IP数据采集都需要注意那些?
  • 城市大脑:智慧城市的神经中枢——典型实践与经验启示
  • 嵌入式中CW32多功能测试笔实现
  • Python 时间占位符:毫秒的使用
  • 深度学习:(七)梯度下降法在神经网络中的应用
  • HarmonyOS---权限和http/Axios网络请求
  • 信号量SEM
  • 828华为云征文 | 基于华为云Flexus云服务器X搭建部署——AI知识库问答系统(使用1panel面板安装)
  • 从零预训练一个tiny-llama#Datawhale组队学习Task2
  • 【Linux探索学习】第二弹——Linux的基础指令(中)——夯实基础第二篇
  • Python和QT哪个更适合嵌入式方向的上位机开发?
  • Unity实战案例全解析:RTS游戏的框选和阵型功能(5)阵型功能 优化
  • Android compose 的基本环境搭建
  • git | 合并 commit 的两种方法