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实现高可用
相关推荐
摇滚侠1 小时前
阿里云安装的 Redis 在什么位置,如何找到 Redis 的安装位置
redis·阿里云·云计算
啦啦啦_99992 小时前
Redis-2-queryFormat()方法
数据库·redis·缓存
forestsea4 小时前
深入理解Redisson RLocalCachedMap:本地缓存过期策略全解析
redis·缓存·redisson
佛祖让我来巡山4 小时前
Redis 为什么这么快?——「极速快递站」的故事
redis·redis为什么快?
威迪斯特5 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
啦啦啦_99996 小时前
Redis-0-业务逻辑
数据库·redis·缓存
自不量力的A同学7 小时前
Redisson 4.2.0 发布,官方推荐的 Redis 客户端
数据库·redis·缓存
fengxin_rou7 小时前
[Redis从零到精通|第四篇]:缓存穿透、雪崩、击穿
java·redis·缓存·mybatis·idea·多线程
是阿楷啊8 小时前
Java大厂面试场景:音视频场景中的Spring Boot与微服务实战
spring boot·redis·spring cloud·微服务·grafana·prometheus·java面试
承渊政道8 小时前
Linux系统学习【Linux基础开发工具】
linux·运维·笔记·学习·centos·编辑器