公网远程连接Redis数据库「内网穿透」

文章目录

  • 1. Linux(centos8)安装redis数据库
  • 2. 配置redis数据库
  • 3. 内网穿透
    • 3.1 安装cpolar内网穿透
    • 3.2 创建隧道映射本地端口
  • 4. 配置固定TCP端口地址
    • 4.1 保留一个固定tcp地址
    • 4.2 配置固定TCP地址
    • 4.3 使用固定的tcp地址连接

前言

洁洁的个人主页
我就问你有没有发挥!
知行合一,志存高远。


Redis作为一款高速缓存的key value键值对的数据库,在许许多多的场景中广泛使用,由于是把数据存储在内存中,所以读写效率极高。

下面介绍如何在内网虚拟机的linux中搭建redis并通过cpolar内网穿透实现公网访问

1. Linux(centos8)安装redis数据库

  • 进入user下面的local目录,通常外部软件安装在此目录
cd /usr/local
  • 下载redis
wget https://download.redis.io/releases/redis-6.2.6.tar.gz

20230203175201

  • 下载好后,解压redis
tar xzf redis-6.2.6.tar.gz
  • 解压好后,进入redis目录进行编译
cd redis-6.2.6/
  • 进入后输入make,输入后等待编译完成

20230203175202

编译好后,输入以下命令安装redis

make install PREFIX=/usr/local/redis-6.2.6

20230203175203

安装好后进入redis目录执行以下命令启动redis,默认端口是6379

./bin/redis-server redis.conf

20230203175204

然后Ctrl+C退出

2. 配置redis数据库

配置redis后台运行,编辑配置文件redis.conf

vim /usr/local/redis-6.2.6/redis.conf 

daemonize no 改成daemonize yes

20230203175205

还有将以下两个参数分别修改,开启远程访问

20230203175206

修改完成后保存退出配置文件,重启redis然后接着再次执行如下启动命令,发现redis图形不见了,即为后台启动

./bin/redis-server redis.conf

3. 内网穿透

cpolar是一款内网穿透软件,使用简单,安全可靠。我们可以通过cpolar把本地6379端口暴露到公共网络,然后可以使用工具进行远程访问。

3.1 安装cpolar内网穿透

  • Linux支持使用一键脚本命令安装
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后执行如下命令,xxxx是token码

cpolar authtoken xxxxxxx(您的token)

20230206180545

  • 向系统添加服务(以方便开机自启)
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

3.2 创建隧道映射本地端口

cpolar安装成功后,在命令行输入以下命令将本地6369端口下的redis暴露到公网

cpolar tcp 6379

出现如下界面表示成功,然后复制公网地址

20230203175207

使用redis图形化界面远程连接redis,输入复制的tcp地址,点击测试连接

20230203175208

出现successful表示成功

20230203175209

注意:如果想要让隧道长期可访问,可以将其保存到配置文件中去,实现后台服务。请参考cpolar官网——文档——命令行创建隧道——将隧道配置为后台服务。

4. 配置固定TCP端口地址

以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。而我们可以为其配置一个固定的公网地址,方便后续长期远程。

4.1 保留一个固定tcp地址

登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为远程Redis数据库保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

20230203175210

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

20230203175211

4.2 配置固定TCP地址

编辑cpolar配置文件

vim /usr/local/etc/cpolar/cpolar.yml

复制添加如下信息,remote_addr参数为上面复制的保留的tcp地址

redis:addr: 6379proto: tcpremote_addr: 3.tcp.vip.cpolar.cn:11506

20230203175212

修改完然后保存退出,接着重启cpolar服务

sudo systemctl start cpolar

4.3 使用固定的tcp地址连接

20230203175213

20230203175214·

出现successful表示成功

20230203175215

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

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

相关文章

蓝牙资讯|苹果Apple Watch可手势操控Mac和Apple TV等设备

根据美国商标和专利局(USPTO)公示的清单,苹果公司近日获得了一项技术专利,概述了未来的 Apple Watch 手表,使用手势等操控 Mac 和 Apple TV 等设备。 该专利描述未来 Apple Watch 可以交互实现编辑图像、绘图、处理文…

02:STM32--EXTI外部中断

目录 一:中断 1:简历 2:AFIO 3:EXTI ​编辑 4:NVIC基本结构 5:使用步骤 二:中断的应用 A:对外式红外传感计数器 1:连接图​编辑 2:函数介绍 3:硬件介绍 4:计数代码 B;旋转编码计数器 1:连接图 2:硬件介绍 3:旋转编码器代码: 一:中断 1:简历 中断:在主程…

Flutter 测试小结

Flutter 项目结构 pubspec.yaml 类似于 RN 的 package.json,该文件分别在最外层及 example 中有,更新该文件后,需要执行的 Pub get lib 目录下的 dart 文件为 Flutter 插件封装后的接口源码,方便在其他 dart 文件中调用 example 目…

python通过S7协议读取西门子200smart数据

发现网上很多关于python通过s7协议控制200smart的代码都失败,我猜应该是版本的问题。自己捣鼓了半天,终于测试成功 from snap7 import util,clientmy_plc client.Client() #建立一个客户端对象 my_plc.set_connection_type(3) #如果是200smart,必须有此…

QT实现天气预报

1. MainWindow类设计的成员变量和方法 public: MainWindow(QWidget* parent nullptr); ~MainWindow(); protected: 形成文本菜单来用来右键关闭窗口 void contextMenuEvent(QContextMenuEvent* event); 鼠标被点击之后此事件被调用 void mousePressEvent(QMouseEv…

Leetcode每日一题:1444. 切披萨的方案数(2023.8.17 C++)

目录 1444. 切披萨的方案数 题目描述: 实现代码与解析: 二维后缀和 动态规划 原理思路: 1444. 切披萨的方案数 题目描述: 给你一个 rows x cols 大小的矩形披萨和一个整数 k ,矩形包含两种字符: A …

Spring(三):Spring中Bean的生命周期和作用域

前言 在 Spring 中,那些组成应用程序的主体及由 Spring IOC 容器所管理的对象,被称之为 bean。简单地讲,bean 就是由 IOC 容器初始化、装配及管理的对象,除此之外,bean 就与应用程序中的其他对象没有什么区别了。而 b…

LeetCode 热题 100(四):48. 旋转图像、240. 搜索二维矩阵 II、234. 回文链表

一.48. 旋转图像 题目要求:就是一个顺时针的旋转过程。 思路:观察矩阵,得出翻转前第i行的第J个元素 等于 翻转后倒数第i列的第J个元素,举例说明,第1行第2个元素为“2”,翻转后到了 倒数第1列的第2个元素…

MAC环境,在IDEA执行报错java: -source 1.5 中不支持 diamond 运算符

Error:(41, 51) java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符) 进入设置 修改java版本 pom文件中加入 <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin&l…

vue项目预览pdf功能(解决动态文字无法显示的问题)

最近&#xff0c;因为公司项目需要预览pdf的功能&#xff0c;开始的时候找了市面上的一些pdf插件&#xff0c;都能用&#xff0c;但是&#xff0c;后面因为pdf变成了需要根据内容进行变化的&#xff0c;然后&#xff0c;就出现了需要动态生成的文字不显示了。换了好多好多的插件…

Flink安装与使用

1.安装准备工作 下载flink Apache Flink: 下载 解压 [dodahost166 bigdata]$ tar -zxvf flink-1.12.0-bin-scala_2.11.tgz 2.Flinnk的standalone模式安装 2.1修改配置文件并启动 修改&#xff0c;好像使用默认的就可以了 [dodahost166 conf]$ more flink-conf.yaml 启动 …

【办公自动化】使用Python批量生成PPT版荣誉证书

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

RocketMQ消费者可以手动消费但无法主动消费问题,或生成者发送超时

1.大多数是配置问题 修改rocketmq文件夹broker.conf 2.配置与集群IP或本地IPV4一样 重启 在RocketMQ独享实例中支持IPv4和IPv6双栈&#xff0c;主要是通过在网络层面上同时支持IPv4和IPv6协议栈来实现的。RocketMQ的Broker端、Namesrv端和客户端都需要支持IPv4和IPv6协议&…

Python土力学与基础工程计算.PDF-螺旋板载荷试验

python 求解代码如下&#xff1a; 1. import numpy as np 2. 3. # 已知参数 4. p_a 100 # 标准压力&#xff0c; kPa 5. p np.array([25, 50, 100, 200) # 荷载&#xff0c; kPa 6. s np.array([2.88, 5.28, 9.50, 15.00) / 10 # 沉降量&#xff0c; cm 7. D 10 # 螺旋板直…

C语言:选择+编程(每日一练)

目录 选择题&#xff1a; 题一&#xff1a; 题二&#xff1a; 题三&#xff1a; 题四&#xff1a; 题五&#xff1a; 编程题&#xff1a; 题一&#xff1a;尼科彻斯定理 示例1 题二&#xff1a;等差数列 示例2 本人实力有限可能对一些地方解释和理解的不够清晰&…

windows下redis服务启动及.bat文件中中redis服务的启动

windows windows下redis服务的启动 1、不配置环境变量 找到redis服务的安装目录进入命令行窗口并输入命令redis-server.exe redis.windows.conf2、配置环境变量 将redis安装目录配置在path环境变量中之后就可以在cmd窗口的任意位置输入redis-server命令就可以启动redis服务…

材料行业可以转IC设计后端吗?

近来有许多材料行业的小伙伴通过后台来问我对于职业规划的看法&#xff0c;甚至有些小伙伴直接点明了某个行业适不适合自己&#xff0c;那么我这边仅以近年来比较热门的数字芯片设计来展开讲讲&#xff0c;材料适不适合转行做IC呢。 对于理工科的同学而言&#xff0c;选择哪个…

公告:微信小程序备案期限官方要求

备案期限要求 1、若微信小程序未上架&#xff0c;自2023年9月1日起&#xff0c;微信小程序须完成备案后才可上架&#xff0c;备案时间1-20日不等&#xff1b; 2、若微信小程序已上架&#xff0c;请于2024年3月31日前完成备案&#xff0c;逾期未完成备案&#xff0c;平台将按照…

Android Studio实现列表展示图片

效果&#xff1a; MainActivity 类 package com.example.tabulation;import android.content.Intent; import android.os.Bundle; import android.view.View;import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; im…

JVM——引言+JVM内存结构

引言 什么是JVM 定义: Java VirtualMachine -java 程序的运行环境 (ava 二进制字节码的运行环境) 好处: 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收功能数组下标越界检查&#xff0c;多态 比较: jvm jre jdk 学习jvm的作用 面试理解底层实现原理中…