一、安装redis
1、下载Redis安装包
wget http://download.redis.io/releases/redis-7.4.1.tar.gz
2、解压
tar -zxvf redis-7.4.1.tar.gz
3、yum安装gcc依赖
yum install gcc
4、编译安装
#跳转到redis解压目录下
cd redis-7.4.1
#编译安装
make MALLOC=libc
#将/usr/local/redis-7.4.1/src目录下的文件加到/usr/local/bin目录
cd src
make install
二、启动redis
1、以后台进程方式启动redis
1)修改redis.conf文件
将daemonize no
修改为daemonize yes
2)指定redis.conf文件启动
[root@aewraeJKD src]# ./redis-server /usr/local/redis-7.4.1/redis.conf
3)关闭redis进程
首先使用ps -aux | grep redis查看redis进程
[root@aewraeJKD src]# ps -aux | grep redis
root 19384 0.0 0.1 141752 2008 ? Ssl 14:17 0:00 ./redis-server 127.0.0.1:6379
root 19389 0.0 0.0 112644 968 pts/0 R+ 14:19 0:00 grep --color=auto redis
使用kill命令杀死进程
[root@aewraeJKD src]# kill 19384
2、设置redis开机自启动
1)在/etc目录下新建redis目录
mkdir -p /etc/redis
2)将/usr/local/redis-7.4.1/redis.conf
文件复制一份到/etc/redis
目录下,并命名为6379.conf
cp /usr/local/redis-7.4.1/redis.conf /etc/redis/6379.conf
3)将redis的启动脚本复制一份放到/etc/init.d
目录下
cp /usr/local/redis-7.4.1/utils/redis_init_script /etc/init.d/redisd
4)编辑redisd文件
编辑redisd文件,在第一行加入如下两行注释,保存退出
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
5)设置redis开机自启动
先切换到/etc/init.d
目录下,然后执行自启命令
chkconfig redisd on
启动操作
service redisd start
关闭操作
方法1:service redisd stop
方法2:redis-cli SHUTDOWN
二、安全配置
1. 专职低权限用户启动redis
. 创建专门的redis用户和组来运行redis
2. 限制redis配置文件的访问权限
. redis配置文件 redis.conf
的权限不高于600
3. 更改默认端口
修改redis.conf
文件 Port 16379
(端口自定),修改后重启redis服务
4. 开启redis密码认证,设置强口令
在 redis.conf
配置文件中,使用requirepass
开启密码认证
1、打开 redis.conf
配置文件,找到 requirepass
,然后修改配置如下:requirepass yourpassword
,其中 yourpassword
即 redis 验证密码,设置密码后即可登录,但无法执行命令。
2、重启 redis,使用授权命令进行授权:auth youpassword
,进行以上操作后即不报错。
3.、设置的密码应符合密码复杂度要求,即采用由数字、大写字母、小写字母、特殊字符中至少三种组合而成的长度为 8 位字符以上口令。
5. 禁用或者重命名危险命令
应当禁用或重命名以下命令
# redis.conf
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command CONFIG ""
rename-command KEYS ""
rename-command SHUTDOWN "" rename-command DEL ""
rename-command EVAL ""
此处列举一些重要命令,可根据实际情况进行禁用或重命名:FLUSHDB, FLUSHALL, KEYS, PEXPIRE, DEL, CONFIG, SHUTDOWN, BGREWRITEAOF, BGSAVE, SAVE, SPOP, SREM, RENAME, DEBUG, EVAL
保存之后,重启生效。
6. 禁止监听在公网IP
. 禁止redis监听在 0.0.0.0 或公网IP
1 # redis.conf
2 bind 127.0.0.1
3 # OR
4 bind <内网IP>
7. 开启保护模式
开启保护模式后,若没有指定bind和密码,则只能本地访问redis
1 # redis.conf
2 protected-mode yes