CentOS 7 部署frp穿透内网

这篇具有很好参考价值的文章主要介绍了CentOS 7 部署frp穿透内网。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文将介绍如何在CentOS 7.9上部署frp,并通过示例展示如何配置和测试内网穿透。

(1)引言

在家庭网络环境中,如果你想在外部访问到家里的局域网设备,通常情况下需要拥有公网IP。然而,由于IPv4地址资源有限,运营商很少会提供公网IP给家庭用户,除非你愿意支付额外费用。虽然IPv6可以解决这个问题,但需要互访的两端都是IPv6才能实现访问。

为了实现在外部随时访问家庭网络中的设备,我们可以选择使用frp来进行内网穿透。frp是一个开源的内网穿透工具,它可以将内网设备暴露给外部网络,从而实现远程访问。

(2)准备工作

在开始之前,你需要准备以下几项:

  1. 一台带有公网IP的云服务器,本文以CentOS 7.9为例。
  2. 家庭网络中需要访问的设备,例如家用群晖NAS。
  3. 了解云服务器的防火墙和安全组设置,以便进行相应的配置。

frp下载

1、GitHub文件地址:https://github.com/fatedier/frp/releases

2、根据所需下载需要的版本:

选择对应版本,右击复制下载链接,到服务器下载或直接下载都行。

centos frps,CentOS,frp,linux

3、服务器使用wget进行下载

wget https://github.com/fatedier/frp/releases/download/v0.32.1/frp_0.32.1_linux_amd64.tar.gz

(4)frps服务器端配置

1、防火墙和安全组设置

在部署frp之前,我们需要进行一些防火墙和安全组的设置,以确保frp能够正常运行并且安全可靠。

2、关闭云服务器防火墙

首先,我们需要关闭云服务器上的防火墙。在CentOS 7.9上,可以使用以下命令关闭防火墙并禁用其开机启动:

systemctl stop firewalld && systemctl disable firewalld

3、关闭SELinux

SELinux是一种安全增强机制,它可以限制进程的权限。为了简化配置过程,我们可以将SELinux设置为"Permissive"模式,或者完全禁用它。可以使用以下命令将SELinux设置为"Permissive"模式:

setenforce 0

4、开放安全组端口

在云服务器的安全组中,我们需要开放一些端口以允许frp的通信。具体需要开放的端口包括:

  • frp服务的绑定端口(默认为7000)
  • frp的仪表盘端口(默认为7001)
  • frp的HTTP虚拟主机端口(默认为10080)
  • frp的HTTPS虚拟主机端口(默认为10443)
  • DSM 应用服务端口(5000)
  • Openwrt端口(8120)

centos frps,CentOS,frp,linux

请根据你的实际情况在安全组中开放相应的端口。

5、安装frps

  1. 创建配置文件目录
mkdir -p /usr/local/frps
  1. 将frps解压到tmp目录下备用
tar zxvf frp_0.32.1_linux_amd64.tar.gz  -C /tmp
  1. 查看解压的配置文件内容
 ll /tmp/frp_0.32.1_linux_amd64
total 23000
-rwxrwxr-x 1 mysql mysql 10575872 Apr  3  2020 frpc
-rw-rw-r-- 1 mysql mysql     7575 Apr  3  2020 frpc_full.ini
-rw-rw-r-- 1 mysql mysql      126 Apr  3  2020 frpc.ini
-rwxrwxr-x 1 mysql mysql 12935168 Apr  3  2020 frps
-rw-rw-r-- 1 mysql mysql     4639 Apr  3  2020 frps_full.ini
-rw-rw-r-- 1 mysql mysql       26 Apr  3  2020 frps.ini
-rw-rw-r-- 1 mysql mysql    11358 Apr  3  2020 LICENSE
drwxrwxr-x 2 mysql mysql     4096 Apr  3  2020 systemd
  1. 复制frpsfrps.ini两个配置文件
cd /tmp/frp_0.32.1_linux_amd64
cp frps frps.ini /usr/local/frps
  1. 修改frp配置文件

现在,我们需要对frp进行配置,以便实现内网穿透。

使用文本编辑器vim打开frp的配置文件/usr/local/frps/frps.ini

vim /usr/local/frps/frps.ini

根据需要,修改以下配置项:

[common]
bind_port = 7000
dashboard_port = 7001
vhost_http_port = 10080
vhost_https_port = 10443
token = 123456789
dashboard_user = admin
dashboard_pwd = admin

#内网NAS
[dsm]
type = tcp
local_ip = 192.168.31.100
local_port = 5000
remote_port = 5000

#内网路由器
[openwrt]
type = tcp
local_ip = 192.168.31.120
local_port = 80
remote_port = 8120

上述配置是frp的配置文件,其中包含了以下几个部分:

  1. [common]:这是通用配置部分,包含了一些常用的配置项。

    • bind_port:指定frp服务器监听的端口号,这里设置为7000。
    • dashboard_port:frp的仪表板(dashboard)的端口号,用于管理frp服务,这里设置为7001。
    • vhost_http_port:虚拟主机的HTTP端口号,用于HTTP协议的内网穿透,这里设置为10080。
    • vhost_https_port:虚拟主机的HTTPS端口号,用于HTTPS协议的内网穿透,这里设置为10443。
    • token:用于验证客户端与服务器之间的身份验证令牌。
    • dashboard_user:仪表板的用户名,这里设置为"admin"。
    • dashboard_pwd:仪表板的密码,这里设置为"admin"。
  2. [dsm]:这是一个自定义的服务配置部分,用于将frp服务器上的TCP流量转发到本地的NAS服务。

    • type:指定服务类型为TCP。
    • local_ip:本地服务的IP地址,这里设置为192.168.31.100。
    • local_port:本地服务的端口号,这里设置为5000。
    • remote_port:frp服务器上的对外暴露的端口号,这里设置为5000。
  3. [openwrt]:这是另一个自定义的服务配置部分,用于将frp服务器上的TCP流量转发到本地的路由器。

    • type:指定服务类型为TCP。
    • local_ip:本地服务的IP地址,这里设置为192.168.31.120。
    • local_port:本地服务的端口号,这里设置为80。
    • remote_port:frp服务器上的对外暴露的端口号,这里设置为8120。

通过这样的配置,frp可以将来自frp服务器的流量转发到本地的NAS服务和路由器上,实现了内网穿透的功能。请确保配置文件中的IP地址、端口号等信息与实际情况相符,并确保frp服务器和本地服务的网络连通性。

(5)frpc客户端配置

frpc配置与frps服务端配置其实相差不大

1、下载frp

wget https://github.com/fatedier/frp/releases/download/v0.32.1/frp_0.32.1_linux_amd64.tar.gz

2、创建frpc软件目录

mkdir -p /usr/local/frpc

3、解压frpc配置文件

tar zxvf frp_0.32.1_linux_amd64.tar.gz  -C /tmp

3、复制配置文件frpc.ini和frpc

cd /tmp/frp_0.32.1_linux_amd64

cp frps frpc.ini /usr/local/frpc

4、编辑配置文件

[common]
server_addr = 服务器的IP
server_port = 7000
token = 123456789




[dsm]
type = tcp
local_ip = 192.168.31.100
local_port = 5000
remote_port = 5000



[openwrt] 
type = tcp
local_ip = 192.168.31.120
local_port = 80
remote_port = 8120

(6)启动停止重启命令

1、服务端启动:

nohup 为后台运行进程

cd /usr/local/frps
nohup ./frps -c frps.ini > /dev/null 2> /dev/null &

2、客户端启动:

cd /usr/local/frpc
nohup ./frpc -c frpc.ini > /dev/null 2> /dev/null

3、查看frps和frpc进程

ps aux | grep frps
root      3908  0.0  0.7 715756 13468 pts/0    Sl   13:12   0:00 ./frps -c frps.ini
root      4271  0.0  0.0 112812   980 pts/0    S+   13:18   0:00 grep --color=auto frps


ps aux | grep frpc
root     28639  0.2  0.0 712392  8792 pts/2    Sl   13:16   0:00 ./frpc -c frpc.ini
root     28698  0.0  0.0  23244  2224 pts/2    S+   13:16   0:00 grep --color=auto frpc

4、查看frps服务端监听的端口

 netstat -tnlp | grep frps

输出:

tcp6       0      0 :::10000                :::*                    LISTEN      3908/./frps         
tcp6       0      0 :::8120                 :::*                    LISTEN      3908/./frps                 
tcp6       0      0 :::7000                 :::*                    LISTEN      3908/./frps         
tcp6       0      0 :::7001                 :::*                    LISTEN      3908/./frps         
tcp6       0      0 :::10080                :::*                    LISTEN      3908/./frps         
tcp6       0      0 :::5000                 :::*                    LISTEN      3908/./frps         
tcp6       0      0 :::10443                :::*                    LISTEN      3908/./frps        

(7)设置开机自启动

1、关闭frps和frpc进程

查询进程id

 ps aux | grep frps

输出:

root      3908  0.0  0.6 715756 12644 pts/0    Sl   13:12   0:00 ./frps -c frps.ini

关闭进程

kill -9 3908

frpc依次操作。

2、创建服务单元启动frps

在服务器端操作:

1、创建一个 Systemd 服务单元文件

 vim /etc/systemd/system/frps.service

内容如下:

[Unit]
Description=FRP Client

[Service]
ExecStart=/usr/local/frps/frps -c /usr/local/frps/frps.ini

[Install]
WantedBy=multi-user.target

客户端也是如此操作,修改vim /etc/systemd/system/frpc.service,和配置文件ExecStart=/usr/local/frp/frpc -c /usr/local/frp/frpc.ini即可。

3、创建启动服务单元fpc

 vim /etc/systemd/system/frpc.service

内容:

[Unit]
Description=FRP Client

[Service]
ExecStart=/usr/local/frpc/frpc -c /usr/local/frpc/frpc.ini

[Install]
WantedBy=multi-user.target

3、启动命令

#开启服务 
systemctl start frps 或frpc
#开机自启动 
systemctl enable  frps 或frpc

#重新启动 
systemctl restart  frps 或frpc

#停止启动 
systemctl stop  frps 或frpc

打开DSM网页界面,成功

centos frps,CentOS,frp,linux
openwrt访问
centos frps,CentOS,frp,linux

下载文件测试
速度有点慢,我的服务器网络是1M的

centos frps,CentOS,frp,linux

(8)使用openwrt作为frpc客户端连接

访问openwrt后台,在服务->Frp 内网穿透

端口令牌参考->>/etc/frps/frps.ini配置文件

服务器:填frpc服务器IP
端口:frpc服务端口(bind_port)
令牌:填token
用户:admin
centos frps,CentOS,frp,linux

编辑添加服务列表
centos frps,CentOS,frp,linux

设置协议类型:tcp
远程端口:5000
内网主机:192.168.31.100
内网端口:5000
centos frps,CentOS,frp,linux

服务器添加:

centos frps,CentOS,frp,linux文章来源地址https://www.toymoban.com/news/detail-830010.html

到了这里,关于CentOS 7 部署frp穿透内网的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何在CentOS下使用Docker部署Halo博客网站并结合内网穿透远程访问

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 本篇文章介绍如何在CentOS下使用Docker部署开源建站工具Halo,并结合cpolar内网穿透工具实现个人博客的公网访问。 Halo是一款基于Java的开源建站工具,具有简单易用、

    2024年01月18日
    浏览(53)
  • 【Linux】Centos安装Redis数据库并内网穿透远程连接

    Redis作为一款高速缓存的key value键值对的数据库,在许许多多的场景中广泛使用,由于是把数据存储在内存中,所以读写效率极高。 下面介绍如何在内网虚拟机的linux中搭建redis并通过cpolar内网穿透实现公网访问 进入user下面的local目录,通常外部软件安装在此目录 下载redis 下载好后

    2024年02月05日
    浏览(47)
  • 无需公网IP 使用SSH远程连接Linux CentOS服务器【内网穿透】

    本次教程我们来实现如何在外公网环境下,SSH远程连接家里/公司的Linux CentOS服务器,无需公网IP,也不需要设置路由器。 公网SSH远程Linux CentOS服务器【内网穿透】 cpolar官网:https://www.cpolar.com/ cpolar支持一键自动安装脚本 cpolar 安装(国内使用) 或 cpolar短链接安装方式:(国外

    2024年02月03日
    浏览(77)
  • 简单几步实现内网穿透(Windows部署开源frp)

    本篇文章所用软件下载 场景 为了避免阐述过多理论,我们直接从需求场景入手,来了解一下为什么需要内网穿透? 小明是少数派的一位咕咕作者,在家里电脑稿某文稿了一半,到公司后打算摸鱼继续稿,怎么办呢(此处假定他没有使用任何云同步软件,也不会使用git,就算

    2024年02月21日
    浏览(36)
  • 【Linux】frp内网穿透详细教程(简单易懂)

    frp 是一款高性能的反向代理应用,专注于内网穿透。它支持多种协议,包括 TCP、UDP、HTTP、HTTPS 等,并且具备 P2P 通信功能。使用 frp,可以安全、便捷地将内网服务暴露到公网,通过拥有公网 IP 的节点进行中转。 frp 主要由两个组件组成:客户端(frpc) 和 服务端(frps)。通常情

    2024年04月16日
    浏览(36)
  • Linux CentOS系统安装SQL Server并结合内网穿透实现公网访问本地数据

    🔥 博客主页 : 小羊失眠啦. 🎥 系列专栏 : 《C语言》 《数据结构》 《C++》 《Linux》 《Cpolar》 ❤️ 感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简单几步实现在Linux cento

    2024年02月19日
    浏览(47)
  • Linux centos安装SQL Server数据库,结合cpolar内网穿透实现公网访问

    简单几步实现在Linux centos环境下安装部署sql server数据库,并结合cpolar内网穿透工具,创建安全隧道将其映射到公网上,获取公网地址,实现在外异地远程连接家里/公司的sqlserver数据库,而无需公网IP,无需设置路由器,亦无需云服务器。 下载 SQL Server 2022 (16.x) Red Hat 存储库配

    2024年02月08日
    浏览(43)
  • 如何在 Linux CentOS 8 中搭建 GitLab 私有仓库并结合 Cpolar 内网穿透工具实现公网访问私有仓库【无公网IP内网穿透】

    📱iOS学霸主页 在强者的眼中,没有最好,只有更好。我们是移动开发领域的优质创作者,同时也是阿里云专家博主。 ✨ 关注我们的主页,探索iOS开发的无限可能! 🔥我们与您分享最新的技术洞察和实战经验,助您在移动应用开发领域取得成功。 📌欢迎访问我们的微信公

    2024年02月12日
    浏览(66)
  • Linux CentOS系统安装Spug并结合内网穿透实现远程访问本地运维平台

    目录 前言 1. Docker安装Spug 2 . 本地访问测试 3. Linux 安装cpolar 4. 配置Spug公网访问地址 5. 公网远程访问Spug管理界面 6. 固定Spug公网地址 结语    作者简介:  懒大王敲代码,计算机专业应届生 今天给大家聊聊Linux CentOS系统安装Spug并结合内网穿透实现远程访问本地运维平台,希

    2024年03月11日
    浏览(59)
  • linux安装frp实现内网穿透及开机启动

    服务端: 1、下载对应版本的安装包(frp_0.46.0_linux_amd64.tar.gz为例) https://github.com/fatedier/frp/releases/ 2、上传并解压安装包 3、编辑服务端frps.ini配置文件 4、配置systemctl来控制frps 5、启动frps 客户端: 1、下载对应版本的安装包(frp_0.46.0_linux_amd64.tar.gz为例) https://github.com/fate

    2024年02月11日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包