Centos和Window系统下Frp内网穿透

news2025/1/12 9:05:21

frp 是一个高性能的内网穿透的反向代理软件,支持 TCP、UDP、HTTP、HTTPS 等常见协议(TCP最常用),可以将处于局域网或者家用电脑主机、办公电脑主机通过中转服务器的方式暴露在公网里,使用户可以通过访问公网的IP(域名)的方式获取内网里的信息,对于开发者来说,frp帮助我们调试接口(微信公众号或其他拥有IP白名单的接口),frp帮助我们取流内网的摄像头,访问内网数据库资源等

下载frp地址

https://github.com/fatedier/frp

https://github.com/fatedier/frp/releases

  1. 在centos下安装frp内网穿透代理

frp服务端和客户端都是使用的同一套,因此我们可以将之解压并改名

服务端:frp_server

客户端:frp_client

在这里我服务端和客户端都是使用的一台服务器安装的(可以分2台服务器主机,或者一台centos服务器主机和一台本地的linux(centos)电脑主机)

[root@myw ~]# cd /home
[root@myw home]# tar -zxvf frp_0.33.0_linux_amd64.tar.gz
frp_0.33.0_linux_amd64/
frp_0.33.0_linux_amd64/frps_full.ini
frp_0.33.0_linux_amd64/frps.ini
frp_0.33.0_linux_amd64/frpc
frp_0.33.0_linux_amd64/frpc_full.ini
frp_0.33.0_linux_amd64/frps
frp_0.33.0_linux_amd64/LICENSE
frp_0.33.0_linux_amd64/frpc.ini
frp_0.33.0_linux_amd64/systemd/
frp_0.33.0_linux_amd64/systemd/frpc@.service
frp_0.33.0_linux_amd64/systemd/frpc.service
frp_0.33.0_linux_amd64/systemd/frps.service
frp_0.33.0_linux_amd64/systemd/frps@.service
[root@myw home]# ls
frp_0.33.0_linux_amd64  frp_0.33.0_linux_amd64.tar.gz  tomcat7
[root@myw home]# mv frp_0.33.0_linux_amd64  frp_server
[root@myw home]# tar -zxvf frp_0.33.0_linux_amd64.tar.gz
frp_0.33.0_linux_amd64/
frp_0.33.0_linux_amd64/frps_full.ini
frp_0.33.0_linux_amd64/frps.ini
frp_0.33.0_linux_amd64/frpc
frp_0.33.0_linux_amd64/frpc_full.ini
frp_0.33.0_linux_amd64/frps
frp_0.33.0_linux_amd64/LICENSE
frp_0.33.0_linux_amd64/frpc.ini
frp_0.33.0_linux_amd64/systemd/
frp_0.33.0_linux_amd64/systemd/frpc@.service
frp_0.33.0_linux_amd64/systemd/frpc.service
frp_0.33.0_linux_amd64/systemd/frps.service
frp_0.33.0_linux_amd64/systemd/frps@.service
[root@myw home]# mv frp_0.33.0_linux_amd64  frp_client
[root@myw home]# ls
frp_0.33.0_linux_amd64.tar.gz  frp_client  frp_server  tomcat7
[root@myw home]# 

frps.ini 这个s指的是server 服务端

frpc.ini这个c指的是client 客户端

centos下启动服务端

进入/home/frp_server里面找到frps.ini文件,修改原有文件内容,我的配置如下

bind_port = 36542 #绑定的端口,需要与客户端中 server_port 参数保持一致

vhost_http_port = 36543 #虚拟主机运行在本机的端口

dashboard_port = 36544 #后台web服务页面的端口

dashboard_user = mywadmin #后台服务页面的管理员用户名

dashboard_pwd = mywadmin #后台服务页面的管理员密码

privilege_token = myyhtw147258 #自定义token 必须与客户端中的 privilege_token 保持一致

[common]
bind_port = 36542
vhost_http_port = 36543
dashboard_port = 36544
dashboard_user = mywadmin
dashboard_pwd = mywadmin
privilege_token = myyhtw147258

配置文件里不能有注释,不然可能无法启动(很奇怪遇到的)

启动的指令

./frps -c ./frps.ini
[root@myw home]# cd /home/frp_server
[root@myw frp_server]# ls
frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  systemd
[root@myw frp_server]# chmod u+x frps
[root@myw frp_server]# ./frps -c ./frps.ini
2023/02/05 12:12:29 [I] [service.go:178] frps tcp listen on 0.0.0.0:36542
2023/02/05 12:12:29 [I] [service.go:220] http service listen on 0.0.0.0:36543
2023/02/05 12:12:29 [I] [service.go:277] Dashboard listen on 0.0.0.0:36544
2023/02/05 12:12:29 [I] [root.go:209] start frps success

这样的启动关闭窗口可能就关闭了,如此需要写一个脚本frp_server.sh 放在frp_server目录下

#!/bin/sh
nohup ./frps -c ./frps.ini &
[root@myw frp_server]# ls
frpc  frpc_full.ini  frpc.ini  frps  frp_server.sh  frps_full.ini  frps.ini  LICENSE  systemd
[root@myw frp_server]# chmod u+x frp_server.sh
[root@myw frp_server]# ./frp_server.sh
[root@myw frp_server]# nohup: appending output to ?.ohup.out?
^C
[root@myw frp_server]# netstat -lnp|grep frp
tcp6       0      0 :::36542                :::*                    LISTEN      1820/./frps         
tcp6       0      0 :::36543                :::*                    LISTEN      1820/./frps         
tcp6       0      0 :::36544                :::*                    LISTEN      1820/./frps         
[root@myw frp_server]# ps aux | grep frp
root      1820  0.0  0.5 716052 22120 pts/0    Sl   12:18   0:00 ./frps -c ./frps.ini
root      1914  0.0  0.0 112808   964 pts/0    S+   12:31   0:00 grep --color=auto frp

在frp_server/systemd里有service,找到frps.service打开并修改当前的路径配置

将配置好的frps.service文件放入/etc/systemd/system/里面后刷新加载

[Unit]
Description=Frp Server Service
After=network.target

[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/home/frp_server/frps -c /home/frp_server/frps.ini

[Install]
WantedBy=multi-user.target
[root@myw frp_server]# systemctl daemon-reload
[root@myw frp_server]# systemctl start frps.service
[root@myw frp_server]# netstat -lnp|grep frp
tcp6       0      0 :::36542                :::*                    LISTEN      2025/frps           
tcp6       0      0 :::36543                :::*                    LISTEN      2025/frps           
tcp6       0      0 :::36544                :::*                    LISTEN      2025/frps           
[root@myw frp_server]# systemctl restart frps.service
[root@myw frp_server]# netstat -lnp|grep frp
tcp6       0      0 :::36542                :::*                    LISTEN      2045/frps           
tcp6       0      0 :::36543                :::*                    LISTEN      2045/frps           
tcp6       0      0 :::36544                :::*                    LISTEN      2045/frps           
[root@myw frp_server]# systemctl stop frps.service
[root@myw frp_server]# netstat -lnp|grep frp
[root@myw frp_server]# 
[root@myw frp_server]# systemctl enable frps.service
Created symlink from /etc/systemd/system/multi-user.target.wants/frps.service to /usr/lib/systemd/system/frps.service.
[root@myw frp_server]# 

刷新:systemctl daemon-reload

启动:systemctl start frps.service

重启:systemctl restart frps.service

停止:systemctl stop frps.service

开机启动:systemctl enable frps.service

取消开机启动:systemctl disable frps.service

centos下启动客户端

进入/home/frp_client里面找到frpc.ini文件,修改原有文件内容,我的配置如下

server_addr = 127.0.0.1 服务端的IP地址

server_port = 36542 # 客户端的连接服务端的端口

privilege_token = myyhtw147258 # 服务端token 保持一致

type = tcp # 使用协议类型tcp

local_ip = 127.0.0.1 # 客户端的本地ip

local_port = 8081 # 客户端的本地端口

remote_port = 8082 # 内网穿透代理端 也就是用户访问frp服务端的端口

[common]
server_addr = 127.0.0.1
server_port = 36542
privilege_token = myyhtw147258

[tomcat7]
type = tcp
local_ip = 127.0.0.1
local_port = 8081
remote_port = 8082

我这里8081端口是tomcat服务器,按理来说后续只需要访问8082端口就能访问到tomcat7

启动的指令

./frpc -c ./frpc.ini

如果权限不够

chmod u+x frpc

写一个脚本frp_client.sh 放在frp_client目录下

#!/bin/sh
nohup ./frpc -c ./frpc.ini &
[root@myw /]# cd /home/frp_client
[root@myw frp_client]# ls
frpc  frpc_full.ini  frpc.ini  frp_client.sh  frps  frps_full.ini  frps.ini  LICENSE  systemd
[root@myw frp_client]# chmod u+x frp_client.sh
[root@myw frp_client]# ./frp_client.sh
[root@myw frp_client]# nohup: appending output to ?.ohup.out?
^C
[root@myw frp_client]# ps aux | grep frp
nobody    2180  0.0  0.5 716052 22452 ?        Ssl  12:58   0:00 /home/frp_server/frps -c /home/frp_server/frps.ini
root      2251  0.0  0.2 712224  9644 pts/1    Sl   13:06   0:00 ./frpc -c ./frpc.ini
root      2257  0.0  0.0 112808   964 pts/1    S+   13:06   0:00 grep --color=auto frp
[root@myw frp_client]# 

在frp_client/systemd里有service,找到frpc.service打开并修改当前的路径配置

将配置好的frpc.service文件放入/etc/systemd/system/里面后刷新加载

 [Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/home/frp_client/frpc -c /home/frp_client/frpc.ini
ExecReload=/home/frp_client/frpc reload -c /home/frp_client/frpc.ini

[Install]
WantedBy=multi-user.target
[root@myw ~]# cd /home/frp_client
[root@myw frp_client]# systemctl daemon-reload
[root@myw frp_client]# systemctl start frpc.service
[root@myw frp_client]# systemctl enable frpc.service
Created symlink from /etc/systemd/system/multi-user.target.wants/frpc.service to /usr/lib/systemd/system/frpc.service.
[root@myw frp_client]# ps aux | grep frp
nobody     743  0.0  0.5 716052 22380 ?        Ssl  13:14   0:00 /home/frp_server/frps -c /home/frp_server/frps.ini
nobody    1604  0.0  0.2 713376  9896 ?        Ssl  13:16   0:00 /home/frp_client/frpc -c /home/frp_client/frpc.ini
root      1640  0.0  0.0 112812   964 pts/0    S+   13:17   0:00 grep --color=auto frp
[root@myw frp_client]# 

可以看到服务端和客户端都已启动的

刷新:systemctl daemon-reload

启动:systemctl start frpc.service

重启:systemctl restart frpc.service

停止:systemctl stop frpc.service

开机启动:systemctl enable frpc.service

取消开机启动:systemctl disable frpc.service

2.在windows下安装frp内网穿透代理

同样的在windows下使用frp部署frp_server和frp_client 配置文件信息除了IP根据具体外,其他的完全一致

启动2个服务(win系统的杀毒软件很烦人的,会把他认为是木马病毒)

mywadmin mywadmin

可以看到客户端内网穿透已经部署成功

访问(客户端主机)

http://127.0.0.1:8081

访问(服务端主机)

http://127.0.0.1:8082

在此处,都是一样的(因为在同一台电脑上部署的)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/379695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数电基础】——触发器

目录 1.大纲 2.双稳态电路 3. SR锁存器(或非门构成) 4.SR锁存器(与非门构成) 5.门控SR锁存器(与非门构成) 6.触发器 1.D触发器 (电平触发) 2.D触发器(上升沿触发&am…

腾讯会议演示者视图/演讲者视图

前言 使用腾讯会议共享PPT时,腾讯会议支持共享用户使用演示者视图/演讲者视图,而会议其他成员可以看到正常的放映视图。下面以Win10系统和Office为例,介绍使用步骤。值得一提的是,该方法同时适用于单显示屏和多显示屏。 腾讯会议…

详解JAVA注解

目录 1.基本注解 2.元注解 3.自定义注解 4.底层实现 1.基本注解 基本注解是JDK自带的一些单独使用的具有功能性的注解,包含以下四个: Override表示方法重写Deprecated表示方法过期,下个版本可能删除SuppressWarnings用于抑制告警SafeVa…

大学生创业有优势吗?创业方向应该如何选择?

大学生创业有优势吗? 目前,许多学校都有孵化器、创业基地等。大学生可以以极低的成本和成本在外面拥有相同质量的办公室和仓库,大学生的创业成本再次降低。 而且很多学校规定大学生可以无限期休学创业,这也消除了大学生创业失败…

深入分析Linux虚拟化KVM-Qemu之ioeventfd与irqfd

说明: KVM版本:5.9.1 QEMU版本:5.0.0 工具:Source Insight 3.5, Visio 1. 概述 ​ 图中的各个模块,只剩下通知机制没讲了,本文来一篇终结者; Guest与KVM及Qemu之间的通知机制&…

wordpress从宝塔升级到docker

15还是16年的时候买的阿里云和腾讯云最低配的1核1G。腾讯云和阿里云后来都涨价了,退了涨价多的那个腾讯云,阿里云一直续费到现在,wordpress这个最早的时候是用军哥的lnmp的一键包搭建的,后来改成用了带UI的宝塔,宝塔用…

4.文件管理

文章目录1、初识文件管理1.1、回顾1.2、文件的属性1.3、无结构文件/有结构文件1.4、文件之间应该怎样组织起来?1.5、操作系统应该向上提供哪些功能?1.6、从上往下看,文件应如何存放在外存?1.7、其他需要由操作系统实现的文件管理功…

分页与分段

前面我们分析了虚拟地址和物理地址 我们这里进行一个简单的分析 这个是程序运行时的地址映射 那么这些碎片,我们现在的操作系统究竟如何处理呢? 我们再引入一个实际问题 我们如何把右边的进程p塞入左边的内存空间里面 有一种方法将p5kill掉&#xff…

Python - SQL入门和实战

数据来源 01 SQL前言 无处不在的SQL 后续学习的铺垫 学到什么程度 黑马程序员MySQL知识精讲mysql实战案例_零基础mysql数据库入门到高级全套教程_哔哩哔哩_bilibili 总结 02 数据库介绍 无处不在的数据库 数据库如何存储数据 数据库管理系统(数据库软件&#xf…

七、标签传播与节点分类【CS224W】(Datawhale组队学习)

开源内容:https://github.com/TommyZihao/zihao_course/tree/main/CS224W 子豪兄B 站视频:https://space.bilibili.com/1900783/channel/collectiondetail?sid915098 斯坦福官方课程主页:https://web.stanford.edu/class/cs224w 文章目录半…

或许你想要的画图工具在这里

之前文章发布后,有小伙伴问下面的画怎么画的(偷偷告诉你,其实我是用铅笔水彩笔画的),哈哈,开玩笑了。其实这些图都是用Excalidraw 画出来的。 我们平常不管是工作中,还是在日常写文章&#x…

pdf压缩文件大小的方法是什么?word文件怎么批量转换成pdf格式?

大家在存储文件时,通常会遇到一些较大的文件,这时需要对其进行压缩处理。下面介绍一下如何压缩PDF文件大小以及批量转换Word文件为PDF格式。pdf压缩文件大小的方法是什么?1.打开小圆象PDF转换器,选择“PDF压缩”功能。2.在“PDF压缩”界面中…

二、CSS

一、CSSHTML的结合方式 1、第一种&#xff1a;在标签的style属性上设置"key:value value;"&#xff0c;修改标签样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title>…

8位单片机(51 STC8)C语言处理32位unsigned long型数据之计算出错

一、问题描述 入门51没多久后就主攻32了&#xff0c;最近又搞起51&#xff0c;移植一个软定时器代码到STC8上&#xff0c;结果出现了奇怪的问题&#xff0c;而这种问题在各种32位单片机上都是不曾有的。 有如下代码&#xff0c;实现了软定时器。使用内部IRC&#xff0c;22.1184…

LabVIEW与Web通讯

LabVIEW与Web通讯Web客户端可通过LabVIEWWeb服务与远程LabVIEW应用程序交换数据。Web服务由运行在服务器上的VI和其他文件组成&#xff0c;这些VI对应于客户端发出的HTTP请求。LabVIEWWeb服务仅在LabVIEW完整版开发系统和LabVIEW专业版开发系统中可用。Web服务用于下列情况&…

服务器、存储、数据保护……又把奖拿了个遍

新一代高端存储      新一代中端存储      新一代入门级存储      新的数据保护产品线      新一代服务器和边缘服务器新品      … …      戴尔科技集团      在过去一年      继续保持强劲研发创新势头      不仅在硬件层面持续升级  …

NXP iMX8系列处理器Pin Multiplexing定义说明

By Toradex秦海1). 简介为了提高处理器的设计灵活性和可用性&#xff0c;NXP的所有i.MX系列处理器都配备了基于 IOMUX Controller (IOMUXC)和IOMUX来使能Pin Mux功能&#xff0c;使得一个特定的IO管脚可以选择不同的可能多达8种的功能定义模块(ALT0, ALT1, ALT2, ALT3...)&…

YOLOv5全面解析教程⑤:计算mAP用到的Numpy函数详解

作者 | Fengwen、BBuf 本文主要介绍在One-YOLOv5项目中计算mAP用到的一些numpy操作&#xff0c;这些numpy操作使用在utils/metrics.py中。本文是《YOLOv5全面解析教程④&#xff1a;目标检测模型精确度评估》的补充&#xff0c;希望能帮助到小伙伴们。 欢迎Star、试用One-YOLOv…

openpnp - configure - 主次基准点矫正

文章目录openpnp - configure - 主次基准点矫正概述备注ENDopenpnp - configure - 主次基准点矫正 概述 查找问题, 视觉里程碑只剩下4个问题了. 先看下设备上的主校准点, 我设备上的主校准点在设备前部的一个铝合金块上, 一块只带一个mark点的小PCB, 两边用螺丝拧住了.比PCB…

(五十四)大白话索引的页存储物理结构,是如何用B+树来实现的?.md

上一次我们给大家说了主键索引的目录结构&#xff0c;只要在一个主键索引里包含每个数据页跟他最小主键值&#xff0c;就可以组成一个索引目录&#xff0c;然后后续你查询主键值&#xff0c;就可以在目录里二分查找直接定位到那条数据所属的数据页&#xff0c;接着到数据页里二…