iptables网络限制redis连接

iptables网络限制

应用场景redis做IP限制
一、216段ip 只允许本机访问本机216redis
二、223/213段ip,都放问223服务器redis

具体配置方式:
一:
216上执行

//允许173.32.11.216 ip 访问6379端口
 iptables -A INPUT -s 173.32.11.216 -p tcp --dport 6379 -j ACCEPT
//其他ip访问全部拒绝
iptables -A INPUT -p TCP --dport 6379 -j REJECT
-- 

二:

//允许173.32.11.216 ip 访问6379端口
 iptables -A INPUT -s 173.32.11.213 -p tcp --dport 6379 -j ACCEPT
 iptables -A INPUT -s 173.32.11.223 -p tcp --dport 6379 -j ACCEPT
//其他ip访问全部拒绝
iptables -A INPUT -p TCP --dport 6379 -j REJECT
-- 

效果图:
在这里插入图片描述阿斯顿
如上所示:216网段访问223无法访问

在这里插入图片描述
如上所示:未限制ip时223可以访问216redis
设置限制IP后223无法连接216。设置成功!

### 解决虚拟机中连接 Redis 的问题 #### 修改 Redis 配置文件以允许远程访问 为了使 Redis 能够接受来自外部网络的请求,在 `/usr/local/bin` 下找到 `redis.conf` 文件并对其进行编辑[^3]。主要需要调整的是绑定 IP 地址的部分,默认情况下 Redis 绑定到本地回环接口 (127.0.0.1),这会阻止任何外来的尝试建立连接的行为。将 bind 行更改为服务器的实际 IP 或者注释掉此行来监听所有可用网络接口。 #### 设置正确的防火墙规则 如果之前修改过 Redis 的配置文件并且遇到了即使地址和密码都正确也无法成功连接的情况,则可能是防火墙阻挡了这些请求[^5]。对于基于 Linux 的系统来说,可以使用 iptables 来管理入站流量;而对于云平台上的实例而言,则可能涉及到安全组策略或其他形式的安全措施。确保端口 6379(默认用于 Redis)处于开放状态,并且没有被其他软件定义的规则所屏蔽。 #### 开启 Redis 远程连接支持 在 Ubuntu 22.04 上完成单节点 Redis 服务器部署之后,还需要进一步操作才能让其能够响应远端客户端发起的服务请求[^2]。除了上述提到过的关于 `bind` 参数的变化之外,还需确认 `protected-mode no` 已经被设定——这一选项决定了当没有任何身份验证机制启用时是否仍然允许非 localhost 客户端接入。 #### 启动与自动重启功能设置 为了让 Redis 在每次计算机重新启动后都能正常运行而不必手动开启服务进程,可以通过命令 `sudo systemctl enable redis.service` 实现开机自启的功能。这样就无需担心因为机器断电等原因造成的数据处理中断现象发生。 #### 测试连接性 最后一步是在装有 Redis 的虚拟机内部通过命令 `ifconfig` 查看当前分配给该设备的真实 IP 地址,并保证用来测试连通性的客户程序位于同一局域网范围内或者至少两者之间存在可达路径[^4]。另外值得注意的一点是,某些可视化工具可能会有自己的特定需求或限制条件,因此建议参照官方文档来进行相应环境变量等额外参数的适当调整以便顺利完成整个过程。 ```bash # 检查Redis服务状态 sudo systemctl status redis.service # 如果未运行则启动之 sudo systemctl start redis.service ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值