如何在 Rocky Linux 8 或 AlmaLinux 8 上安裝 Redis


Redis 是一種流行的內存鍵值存儲,可用作 NoSQL 鍵值數據庫、消息代理和緩存解決方案。它以其靈活性、可擴展性、無縫複製、簡單性和易用性而聞名。 Redis 廣泛用於許多領域,例如機器學習、實時分析、聊天、消息傳遞和遊戲排行榜。

Redis 本身並不是很強大,但您可以對其進行調整以提高安全性並阻止未經授權的用戶。

在本教程中,您將學習如何: 安裝和保護 Redis 存在 洛基 Linux 8阿爾瑪Linux 8.

第 1 步:在 Rocky Linux 或 AlmaLinux 8 上安裝 Redis

Redis 在 AppStream 存儲庫中可用,並且可以使用 DNF 包管理器進行安裝。

通過運行以下 DNF 命令安裝 Redis:

$ sudo dnf install redis

安裝後,您需要通過對其配置文件進行小的更改來更改 Redis 的運行方式。 訪問 Redis 配置文件。

$ sudo vim /etc/redis.conf

滾動查找 監督 指導。這允許您使用您的 init 系統來運行 Redis 並有效地管理它。默認情況下這是 不要做. Rocky/AlmaLinux 運行在 systemd init 系統上,所以值為 系統 如圖所示。

在 Rocky Linux 上配置 Redis

而已。因此,保存您的更改並退出文本編輯器。默認情況下,Redis 不會自動啟動,因此您必須像這樣啟動它:

$ sudo systemctl start redis

此外,每次打開或重新啟動系統時啟用該服務。

$ sudo systemctl enable  redis

要驗證 Redis 是否正在運行,請運行以下命令:

$ sudo systemctl status redis
在 Rocky Linux 上檢查 Redis 狀態

作為 Redis 安裝是否成功的測試,發送 ping 消息顯示 ‘乒乓球‘ 回复。

第 2 步:密碼保護 Redis

安全性是任何數據庫系統的重中之重,Redis 也不例外。在這一步中,我們更進一步,啟用身份驗證以保護 Redis 並阻止未經授權的各方。

再次訪問配置文件。

$ sudo vim /etc/redis.conf

出現 申請通行證 指導。這是一個指令,將客戶端配置為在訪問數據庫之前需要身份驗證。

取消註釋指令並指定您自己的密碼。

requirepass  strong_password
密碼保護 Redis

重新啟動 Redis 數據庫以應用更改。

$ sudo systemctl restart  redis

要測試是否啟用了身份驗證,請訪問您的 Redis 客戶端。

$  redis-cli

嘗試將鍵設置為值。

$ set keystudent Mike

這會導致指示的錯誤。這表明需要進行身份驗證。

(error) NOAUTH Authentication required.
Redis 需要身份驗證

要進行身份驗證,請調用 批准 密碼跟在關鍵字後面。 Redis 將檢查您的密碼並允許您繼續。

在 Redis 中調用身份驗證

通過身份驗證後,您可以使用 set 命令指定鍵值對。要獲取分配給鍵的值,請調用:

get keystudent
在 Redis 中設置鍵值對

要退出 Redis,請鍵入 quit 並按 ENTER。

 quit

步驟 3:設置正確的數據目錄所有權和權限

要考慮的另一個重要方面是您需要牢記所有權和權限,以確保您的 Redis 安裝是健壯的。這包括確保只有需要訪問 Redis 的人才有權讀取其數據。在這種情況下,用戶是 重複 用戶。

首先,您可以檢查 Redis 數據目錄是否具有正確的目錄所有權和權限。

$ ls -l /var/lib | grep redis

從輸出中,我們可以看到 Redis 數據目錄歸 Redis 用戶所有,並且可以訪問 Redis 組。此外,目錄權限設置為八進制 750。這些是推薦的 Redis 文件夾所有權和權限設置。

如果 Redis 數據目錄權限不安全(例如,全局用戶可讀),則只有 Redis 用戶和組應該能夠訪問該文件夾及其內容。

為此,請運行以下命令:

$ sudo chmod 750 /var/lib/redis

此外,請確保 Redis 配置文件歸 Redis 所有。 重複 具有輔助組 root 的用戶。還要確保你有八進制權限 640 如圖所示。

$ ls -l /etc/redis.conf

640 的八進製表示法 重複 什麼時候 用戶可以讀取配置文件。這很重要,因為我們在第 2 步中使用了它。 申請通行證 指導。這意味著除了 Redis 和 Root 用戶之外沒有其他人可以讀取文件並訪問密碼。

為了獲得額外的安全性,請確保您的配置文件歸 Redis 用戶和組所有。

$ sudo chown  redis:redis /etc/redis.conf

此外,設置配置文件的權限,以便只有 Redis 所有者可以對其進行讀寫。

$ sudo chmod 600  /etc/redis.conf

要應用您所做的更改,請重新啟動您的 Redis 服務器。

$ sudo systemctl restart redis

第 4 步:配置 Redis 以進行遠程訪問

在某些情況下,您可能需要從另一個系統遠程訪問您的 Redis 實例。為此,請轉到配置文件。

$ sudo vim  /etc/redis.conf

出現 指導。默認情況下,它設置為在 localhost 上偵聽。

bind 127.0.0.1

註釋掉並指定遠程服務器的私有 IP。

bind private_ip

對於通過公共互聯網訪問,您可以設置: 0.0.0.0 綁定到公共 IP 地址。

bind 0.0.0.0

下一個變化 protected-mode yes 到達 protected-mode no

protected-mode no

然後重新啟動您的 Redis 服務器以應用更改。

$ sudo systemctl restart redis

剩下的另一個步驟是配置您的防火牆以允許訪問您的 Redis 服務器。

第五步:為redis配置防火牆

如果 Firewalld 處於活動狀態且正在運行,請考慮將其配置為允許端口 6379,這是 Redis 偵聽的端口。

$ sudo firewall-cmd --add-port=6379/tcp --permanent
$ sudo firewall-cmd --reload

完美的!現在,要測試是否可以遠程訪問 Redis 實例,請使用 -h 選項,後跟 Redis 服務器的 IP 地址。

$ redis-cli  -h  server_IP

在這種情況下:

$ redis-cli  -h  10.128.0.44
遠程訪問 Redis

結論是

您已在 Rocky Linux 8 或 AlmaLinux 8 上成功安裝並保護了 Redis。我們歡迎您對本指南提供反饋。