在CentOS上配置Redis的防火墙主要涉及到修改防火墙配置文件和设置防火墙规则。以下是详细的步骤:
如果你使用的是iptables作为防火墙,首先需要关闭或禁用它,因为firewalld和iptables是互斥的。
# 停止firewalld服务
sudo systemctl stop firewalld.service
# 禁止firewalld开机启动
sudo systemctl disable firewalld.service
# 卸载firewalld
sudo yum remove firewalld
如果尚未安装iptables,可以使用以下命令进行安装:
sudo yum install iptables-services
编辑iptables配置文件:
sudo vi /etc/sysconfig/iptables
在配置文件中添加以下内容以允许Redis的默认端口6379的TCP流量:
*filter :INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
保存并退出编辑器。
sudo systemctl restart iptables.service
# 设置iptables开机自启
sudo systemctl enable iptables.service
编辑Redis配置文件以允许远程访问和设置密码:
sudo vi /usr/local/redis/redis.conf
进行以下修改:
bind 127.0.0.1
修改为 bind 0.0.0.0
以允许远程访问(生产环境中不建议设置为0.0.0.0)。protected-mode yes
修改为 protected-mode no
以允许远程连接。requirepass your_strong_password
。保存并退出编辑器。
使用以下命令启动Redis服务:
redis-server /usr/local/redis/redis.conf
可以使用以下命令检查Redis是否正在运行:
ps -ef | grep redis
使用Redis客户端连接Redis服务进行验证:
redis-cli -h your_redis_ip -p 6379 -a your_strong_password