Centos和Window系统下Frp内网穿透
frp 是一个高性能的内网穿透的反向代理软件,支持 TCP、UDP、HTTP、HTTPS 等常见协议(TCP最常用),可以将处于局域网或者家用电脑主机、办公电脑主机通过中转服务器的方式暴露在公网里,使用户可以通过访问公网的IP(域名)的方式获取内网里的信息,对于开发者来说,frp帮助我们调试接口(微信公众号或其他拥有IP白名单的接口),frp帮助我们取流内网的摄像头,访问内网数据库资源等
下载frp地址
https://github.com/fatedier/frphttps://github.com/fatedier/frp/releases
在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
在此处,都是一样的(因为在同一台电脑上部署的)
Centos和Window系统下Frp内网穿透相关推荐
- Mac 系统部署Frp内网穿透服务 实现frpc shell启动脚本启动、停止
Mac 系统部署Frp内网穿透服务 实现frpc shell启动脚本启动.停止 前言 最近疫情导致居家办公,而工作中需要用到公网地址便于调试,于是就在本机(Mac系统)配置了Frpc内网穿透. 本来想 ...
- CentOS Frp内网穿透:Frps+Nginx反向代理
目录 服务器使用配置 一.Nginx安装 二.Frps安装 三.frpc安装 服务器使用配置 CentOS 7.6 CPU: 2核 内存: 4GB 一.Nginx安装 参考<Centos配置Ng ...
- 树莓派3 利用frp内网穿透web搭建 -- bt下载机的应用
树莓派3 利用frp内网穿透web搭建 -- bt下载机的应用 请参考我前面写的博客:http://blog.csdn.net/wang ...
- Frp内网穿透——frps服务端部署
由于现在IPv4地址的短缺,在国内不可能每个设备都会分配到一个公网IP,因此从公网中访问自己的私有设备向来是一件难事儿.本次带大家了解一下frp内网穿透的服务端教学,让你也能够部署一个内网穿透服务. ...
- frp内网穿透服务使用
1,frp简介 frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便捷的方式通过具有公网 IP 节点的中转暴露到公网. ...
- 树莓派摄像头使用 motion + frp内网穿透 实时视频显示
本文主要介绍motion的使用,frp内网穿透步骤. 一.准备材料 二.motion的下载安装 三.motion的使用 四.frp的下载安装 五.frp内网穿透服务器配置步骤 六.frp内网穿透客户端 ...
- FRP内网穿透--实现公网ip远程访问内网8080端口
写在前面,frp内网穿透的教程还挺多的,博主写本博客的目的是作为一个学习记录,如果对你有些许帮助那也算荣幸之至了. 声明: 本博客参考自: [Linux]腾讯云服务器,使用FRP内网穿透,端口映射,远 ...
- 《工具箱-内网穿透》FRP内网穿透(实现外网访问内网服务)
FRP内网穿透 一.环境: 内网服务器 Centos 外网服务器 Centos 模拟场景:使用虚拟机安装Centos系统模拟内网服务器,外网服务器是正常使用云服务器 适用于:Company内部有自己的 ...
- frp内网穿透-公网IP低成本使用高性能kali
frp内网穿透-公网IP低成本使用高性能kali 1.frp Github项目地址:https://github.com/fatedier/frp 找到最新的releases下载,系统版本自行确认. ...
最新文章
- 每日一皮:为什么程序猿是最适合谈恋爱的人
- asterisk-通道变量列表
- 如何步入深度学习刷榜第一重境界
- Visual Studio 中Debug模式和Release模式的区别
- 数据库连接出错,请检查连接字串"的多种问题解决办法
- 将EntityManager.refresh添加到所有Spring数据存储库
- kotlin 添加第一个 集合_Flutter开发必学Dart语法篇之集合操作符函数与源码分析...
- HTTP--历史、组件系统
- r mysql utf8_R读取MySQL数据出现乱码,解决该问题的方法总结
- 创意合成大片欣赏,进步都是从模仿开始
- JavaScript--Array; Array.prototype
- 基于IBM Bluemix的数据缓存应用实例
- koa项目用mongoose与mongodb交互,始终报错FormModel is not defined
- 19. Window focus() 方法
- 需求分析说明书SRS
- 如何删除双系统中的Linux系统
- 阿里巴巴十周年晚会,马云震撼照片
- matlab 打开xml文件怎么打开方式,导入 XML 文档
- MyBatis(九):MyBatis类型处理器(TypeHandler)详解
- Gradle transitive = true