https://www.cnblogs.com/linuxk/p/10075803.html

阿里云Redis外网转发访问

 

1、前提条件

如果您需要从本地 PC 端访问 Redis 实例进行数据操作,可以通过在 ECS 上配置端口映射或者端口转发实现。但必须符合以下前提条件:
若 Redis 实例属于专有网络(VPC),ECS 必须与 Redis 实例属于同一个 VPC。
若 Redis 实例属于经典网络,ECS 必须与 Redis 实例属于同一节点(地域)。
若 Redis 实例开启了 IP 白名单,必须将 ECS 的内网地址加入白名单列表内。

2、ECS Linux 篇

目前云数据库 Redis 版需要通过 ECS 进行内网连接访问。如果您本地需要通过公网访问云数据库 Redis,可以在 ECS Linux 云服务器中安装 rinetd 进行转发实现。
在云服务器 ECS Linux 中安装 rinetd。

wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar -xvf rinetd.tar.gz&&cd rinetd
sed -i 's/65536/65535/g' rinetd.c (修改端口范围)
mkdir /usr/man && make && make install 注意:rinetd 安装包下载地址不确保下载可用性,您可以自行搜索安装包进行下载使用。

打开配置文件 rinetd.conf。

vi /etc/rinetd.conf

     在配置文件中写入如下内容:
0.0.0.0 6379 <云Redis的链接IP地址> <云redis端口号>6379
logfile /var/log/rinetd.log
说明:您可以使用 cat /etc/rinetd.conf命令来检验配置文件是否修改正确。

执行如下命令启动 rinetd。

[root@iasdfac98s9a9zc0h9z ~]# rinetd
[root@iasdfac98s9a9zc0h9z ~]# ps -ef |grep rinetd
root 1205 1 0 11:13 ? 00:00:00 rinetd 注意
您可以通过 echo rinetd >>/etc/rc.local 将 rinetd 设置为自启动。
若遇到绑定报错,可以执行 pkill rinetd 结束进程,再执行 rinetd启动进程 rinetd。
rinetd 正常启动后, 执行netstat -anp | grep 6379 确认服务是否正常运行。

netstat 验证

[root@iasdfac98s9a9zc0h9z ~]# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 1205/rinetd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 821/nginx: master p
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1094/sshd
tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN 960/java
udp 0 0 0.0.0.0:68 0.0.0.0:* 672/dhclient
udp 0 0 192.168.100.243:123 0.0.0.0:* 452/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 452/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 452/ntpd
udp6 0 0 :::123 :::* 452/ntpd

在本地进行验证测试。
首先,让你的ECS放开6379端口
然后,连接测试:您可以在本地通过redis-cli连接ECS服务器后进行登录验证,即redis-cli -h ECS的IP -a Redis的实例ID:Redis密码 (例如:redis-cli -h 39.106.38.252 -a r-2ze5194129e56544.redis.rds.aliyuncs.com:flzx300ccc)
最后,进行数据写入及查询验证。
本地验证,通过redis-desktop-manager设置连接: 连接host:ECS的IP地址 端口:6379 验证: xxxxxxxxxx.redis.rds.com:flzx300ccc

通过上述步骤即可实现:您本地的 PC 或服务器通过公网连接 ECS Linux 6379 端口,对云数据库 Redis 进行访问。

rinted端口转发的更多相关文章

  1. rinted端口转发工具

    下载包: [root@localhost opt]# wget https://boutell.com/rinetd/http/rinetd.tar.gz 解压编译安装: [root@localhos ...

  2. Linux端口转发-rinted工具部署、配置、使用

    编者按: 近期由于公司开启定制项目规划,对于每个项目都会开启一个测试服务器,实施方会用到测试服务器的ssh端口.mysql端口.web端口,为了节省资源(公网IP.服务器资源复用),基于rinted工 ...

  3. linux配置端口转发

    一.使用rinted进行端口转发 将10.50.13.13 80请求转到10.50.13.11 80上 1.安装rinetd $ tar zxf rinetd.tar.gz $ cd rinetd $ ...

  4. [转帖]LINUX下使用rinetd端口转发

    LINUX下使用rinetd端口转发 https://www.iteye.com/blog/lvinie-1167701 . 本来想自己写一下 发现没必要. 并且原作者提供了pan.baidu.com ...

  5. SecutrCRTt 连接VirtualBox 中的Ubuntu -端口转发

    端口转发: 设置>网络>端口转发   端口转发: 子系统地址通过在Linux系统总使用ifconfig查看:   还需要在linux主机上安装sshd sudo apt-get insta ...

  6. LCX端口转发实现内网突破

    工具:lcx.exe 原理:当目标主机仅开放了web服务,而该服务又仅能供内网用户使用,外网用户根本无法直接访问.因此想要让外网用户能能够访问局域网中的系统服务,必须进行端口映射等操作才行.其原理就是 ...

  7. Linux IPTABLES端口转发

    之前在Linux上用普通用户部署了一个Tomcat,然后将其server.xml中的端口配置为80端口,用普通用户运行就提示绑定端口失败(permission denied),google了一下,原来 ...

  8. 【nginx配置】nginx做非80端口转发

    一个场景 最近在使用PHP重写一个使用JAVA写的项目,因为需要查看之前的项目,所以要在本地搭建一个Tomcat来跑JAVA的项目.搭建成功后,因为Tomcat监听的端口是8080,因此,访问的URL ...

  9. SSH 端口转发+内网穿透

    用最直白的语言对本文所有内容进行定义: 端口转发(-L):用A机器(内网)登录B机器(公网), 在A机器打开端口,将收到的所有请求转发到B机器的某个端口 (在代理机上执行) 内网穿透(-R):用A机器 ...

随机推荐

  1. 31、下一个排列 | 算法(leetode,附思维导图 + 全部解法)300题

    零 标题:算法(leetode,附思维导图 + 全部解法)300题之(31)下一个排列 一 题目描述 二 解法总览(思维导图) 三 全部解法 1 方案1 1)代码: // 方案1 "双指针法 ...

  2. 【知识详解】JAVA基础(秋招总结)

    JAVA基础 目录 JAVA基础 问:面向过程(POP)和面向对象(OOP)? 问:Python和Java的区别? 问:java的八大基本数据类型? 问:封装继承多态说一下? 问:方法和函数的区别? ...

  3. Treevalue(0x03)——函数树化详细解析(下篇)

    好久不见,再一次回到 treevalue 系列.本文将基于上一篇treevalue讲解,继续对函数的树化机制进行详细解析,并且会更多的讲述其衍生特性及应用. 树化方法与类方法 首先,基于之前的树化函数 ...

  4. namp相关命令大全

    常用功能: -探测主机存活- 扫描端口- 探测主机操作系统信息- 检测漏洞 nmap 常用的几个参数 nmap -v ip 显示详细的扫描过程 nmap -p  ip  扫描指定端口 nmap -A ...

  5. Codeforces 1270E - Divide Points(构造+奇偶性)

    Codeforces 题目传送门 & 洛谷题目传送门 显然,直接暴力枚举是不可能的. 考虑将点按横纵坐标奇偶性分组,记 \(S_{i,j}=\{t|x_t\equiv i\pmod{2},y_ ...

  6. Vue 中使用 TypeScript axios 使用方式

    Vue 中使用 TypeScript axios 使用方式 方式一 import axios from 'axios'; Vue.prototype.$axios = axios; // 在 .vue ...

  7. Notepad++—设置背景颜色

    之前,编程一直用的都是黑色背景色,最近发现,黑色背景色+高光字体,时间久了对眼睛特别不好.感觉自己编程到现在几年时间,眼睛就很不舒服,甚至有青光眼的趋势.所以,改用白底黑字,即"日间模式&q ...

  8. sqlalchemy模块的基本使用

    Python中SQLAlchemy模块通过建立orm来对数据库进行操作 1. 建表 方式1 # -*- coding:utf-8 -*- # Author:Wong Du from sqlalchem ...

  9. C#页面缓存设置

    protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Sessioninfo(); } Session.R ...

  10. Java交换数组元素

    Java 交换数组元素 代码示例 import java.util.Arrays; import java.util.Collections; import java.util.List; impor ...