centos7安装Redis6并设置密码

1. 安装依赖包

bash 复制代码
sudo yum update -y
sudo yum install epel-release -y
sudo yum install gcc make tcl -y

2. 下载并编译Redis 6

bash 复制代码
# 下载Redis 6.2.x(以6.2.13为例)
cd /usr/local/src
sudo wget https://download.redis.io/releases/redis-6.2.13.tar.gz
sudo tar xzf redis-6.2.13.tar.gz
cd redis-6.2.13

# 编译安装
sudo make
sudo make install

3. 创建Redis系统用户和目录

bash 复制代码
# 创建Redis用户
sudo groupadd redis
sudo useradd -r -g redis -s /bin/false redis

# 创建目录
sudo mkdir -p /etc/redis
sudo mkdir -p /var/lib/redis
sudo mkdir -p /var/log/redis
sudo mkdir -p /var/run/redis

# 设置权限
sudo chown -R redis:redis /var/lib/redis
sudo chown -R redis:redis /var/log/redis
sudo chown -R redis:redis /var/run/redis

4. 配置Redis

bash 复制代码
# 复制配置文件
sudo cp redis.conf /etc/redis/redis.conf

# 备份原始配置
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak

# 编辑配置文件
sudo vi /etc/redis/redis.conf

在配置文件中修改以下内容:

ini 复制代码
# 绑定IP(0.0.0.0表示允许所有IP访问,生产环境建议指定IP)
bind 0.0.0.0

# 端口
port 6379

# 设置密码(重要!取消注释并设置你的密码)
requirepass your_strong_password_here

# 以守护进程方式运行
daemonize yes

# 数据目录
dir /var/lib/redis

# 日志文件
logfile /var/log/redis/redis.log

# 最大内存
maxmemory 256mb
maxmemory-policy allkeys-lru

# 开启AOF持久化
appendonly yes
appendfilename "appendonly.aof"

# 保护模式(如果设置了密码和bind,可以关闭)
protected-mode no

# 设置进程文件
pidfile /var/run/redis/redis.pid

5. 创建Systemd服务文件

bash 复制代码
sudo vi /etc/systemd/system/redis.service

添加以下内容:

ini 复制代码
[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
Type=forking
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
LimitNOFILE=10032

[Install]
WantedBy=multi-user.target

6. 启动Redis服务

bash 复制代码
# 重新加载systemd
sudo systemctl daemon-reload

# 启动Redis服务
sudo systemctl start redis

# 设置开机自启
sudo systemctl enable redis

# 检查服务状态
sudo systemctl status redis

温馨提示:到这一步已经完成安装!

7. 验证安装和密码设置

bash 复制代码
# 测试连接(会要求输入密码)
redis-cli
# 在redis-cli中执行:
AUTH your_strong_password_here
# 或者连接时直接指定密码
redis-cli -a your_strong_password_here

# 测试命令
ping
# 应该返回 PONG

# 查看Redis信息
info

8. 防火墙配置(如果需要远程访问)

bash 复制代码
# 开放Redis端口
sudo firewall-cmd --permanent --add-port=6379/tcp
sudo firewall-cmd --reload

# 或者仅允许特定IP访问
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="your_ip_here" port protocol="tcp" port="6379" accept'
sudo firewall-cmd --reload

9. 安全加固建议

A. 修改默认端口(可选)

ini 复制代码
# 在redis.conf中修改
port 6380

B. 重命名危险命令

ini 复制代码
# 在redis.conf中添加
rename-command FLUSHDB ""
rename-command FLUSHALL ""
rename-command CONFIG ""
rename-command SHUTDOWN SHUTDOWN_SAVE

C. 使用SSL/TLS加密(Redis 6支持)

bash 复制代码
# 生成SSL证书
cd /etc/redis
sudo openssl genrsa -out redis.key 2048
sudo openssl req -new -key redis.key -out redis.csr
sudo openssl x509 -req -days 365 -in redis.csr -signkey redis.key -out redis.crt

# 在redis.conf中配置
tls-port 6380
tls-cert-file /etc/redis/redis.crt
tls-key-file /etc/redis/redis.key

10. 常用管理命令

bash 复制代码
# 重启Redis
sudo systemctl restart redis

# 查看日志
sudo tail -f /var/log/redis/redis.log

# 停止Redis
sudo systemctl stop redis

# 查看Redis进程
ps aux | grep redis

# 测试性能
redis-benchmark -a your_password -q

注意事项:

  1. your_strong_password_here 替换为强密码
  2. 生产环境建议绑定特定IP而不是0.0.0.0
  3. 定期备份Redis数据
  4. 监控Redis内存使用情况
  5. 考虑使用Redis Sentinel或Cluster实现高可用
相关推荐
cui_win3 小时前
Prometheus实战教程 - Redis 监控
数据库·redis·prometheus
@淡 定6 小时前
Redis持久化机制
数据库·redis·缓存
@淡 定8 小时前
主流缓存中间件对比:Redis vs Memcached
redis·缓存·中间件
阿佳举世无双8 小时前
快速启动redis
数据库·redis·缓存
星辰_mya9 小时前
redis主从同步-概览
数据库·redis·缓存
Mr.朱鹏10 小时前
超时订单处理方案实战指南【完整版】
java·spring boot·redis·spring·rabbitmq·rocketmq·订单
xiaoshujiaa12 小时前
Java大厂面试实录:谢飞机硬刚互联网医疗微服务架构,Spring Cloud+Redis+Kafka全踩坑
spring boot·redis·微服务·kafka·flyway·java面试·互联网医疗
云和数据.ChenGuang12 小时前
openeuler下的git指令集合
linux·运维·数据库·centos
我爱娃哈哈13 小时前
告别Redis瓶颈:Caffeine本地缓存优化实战指南
数据库·redis·缓存