Redis是一個(gè)開(kāi)源的內(nèi)存中鍵值數(shù)據(jù)存儲(chǔ),用作緩存、數(shù)據(jù)庫(kù)和消息代理等。Stunnel是一個(gè)開(kāi)源代理工具,可以在服務(wù)器之間創(chuàng)建安全的TLS/SSL連接隧道。它可以與redis-cli集成,并通過(guò)TLS提供與托管Redis集群的安全連接。本文主要介紹下如何使用Stunnel和redis-cli創(chuàng)建到Redis的安全連接。
本文以Vultr云服務(wù)器為例,首先使用SSH訪問(wèn)服務(wù)器,然后運(yùn)行以下命令開(kāi)始安裝Stunnel和Redis-CLI。
一、安裝Stunnel和Redis-CLI
1、安裝stunnel4
在Ubuntu/Debian上安裝stunnel4。
$ sudo apt install stunnel4
在CentOS/Rocky Linux上安裝stunnel4。
$ sudo dnf install stunnel4
2、安裝redis-cli工具
Ubuntu/Debian
$ sudo apt install redis-tools
CentOS/Rocky Linux
$ sudo dnf install redis-tools
3、使stunnel服務(wù)在引導(dǎo)時(shí)啟動(dòng)
$ sudo systemctl enable stunnel4
4、啟動(dòng)stunnel
$ sudo systemctl start stunnel4
5、驗(yàn)證stunnel服務(wù)是否處于活動(dòng)狀態(tài)并運(yùn)行
$ sudo systemctl status stunnel4
二、配置Stunnel
1、在可訪問(wèn)的位置創(chuàng)建一個(gè)新的stunnel進(jìn)程目錄
$ sudo touch /tmp/stunnel-pid
2、更改目錄所有權(quán)
$ sudo chown -R nobody:nogroup /tmp/stunnel-pid
3、使用文本編輯器創(chuàng)建新的配置文件etc/stunnel/stunnel.conf
$ sudo nano /etc/stunnel/stunnel.conf
4、將以下指令添加到文件中
fips = no
setuid = nobody
setgid = nogroup
pid = /tmp/stunnel-pid/stunnel.pid
debug = 7
delay = no
[redis-cli]
client = yes
accept = 127.0.0.1:4000
connect = example-address-vultr-prod.vultrdb.com:16752
保存并關(guān)閉文件。
5、重啟stunnel以加載更改
$ sudo systemctl restart stunnel4
6、驗(yàn)證用戶noboday擁有正在運(yùn)行的stunnel進(jìn)程
$ ps aux | grep stunnel
默認(rèn)情況下,Stunnel會(huì)加密TLS上的所有連接,要連接到Vultr Redis集群,請(qǐng)使用redis-cli工具,如以下步驟所述。
使