Redis 6实现了通道加密,提高了redis的安全性。Redis作为缓存数据库,里面很有可能缓存重要的敏感信息,所以支持tls通道加密还是很有必要的,当然敏感信息还是建议加密保存。
唯一不好的是PHP的phpredis扩展还有跟上,没找到办法链接有tls的redis服务器。
创建证书:
mkdir -p redis-tls
cd redis-tls
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -sha256 -key \
ca.key -days 3650 -subj \
'/O=Redis TLS Test/CN=Certificate Authority' \
-out ca.crt
openssl genrsa -out redis.key 2048
openssl req -new -sha256 \
-key redis.key \
-subj '/O=Redis TLS Test/CN=Server' | \
openssl x509 \
-req -sha256 -CA ca.crt -CAkey ca.key \
-CAserial ca.txt -CAcreateserial \
-days 365 -out redis.crt
openssl dhparam -out redis.dh 2048
编译Redis
make BUILD_TLS=yes -j8
具体编译请查看:《在 Centos Stream 9 上手动编译安装Web服务器》
启动Redis
redis-server --tls-port 6379 --port 0 \
--tls-cert-file ./redis.crt \
--tls-key-file ./redis.key \
--tls-ca-cert-file ./ca.crt
客户端连接
redis-cli --tls \
--cert redis.crt \
--key redis.key \
--cacert ca.crt
文章评论