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实现高可用
相关推荐
sdm0704273 分钟前
yum和开发工具vim/gcc
linux·服务器·centos
耗子会飞10 小时前
小白学习固定VM虚拟机的centos服务器的IP
运维·服务器·centos
总要冲动一次11 小时前
离线安装 percona-xtrabackup-24
linux·数据库·mysql·centos
JavaGuide11 小时前
MiniMax M2.7 发布!Redis 故障排查 + 跨语言重构场景实测,表现如何?
redis·后端·ai·ai编程
weixin_4563216412 小时前
Java架构设计:Redis持久化方案整合实战
java·开发语言·redis
深蓝轨迹13 小时前
彻底删除VMware虚拟机并清理残留,解决虚拟网卡消失问题
windows·ubuntu·centos
苦瓜小生13 小时前
【黑马点评学习笔记 | 实战篇 】| 6-Redis消息队列
redis·笔记·后端
fy1216314 小时前
GO 快速升级Go版本
开发语言·redis·golang
czlczl2002092515 小时前
Redis数据编码
数据库·redis·缓存
Wpa.wk15 小时前
pb协议接口测试
数据库·redis·缓存