Redis 是一種流行的內存鍵值存儲,可用作 NoSQL 鍵值數據庫、消息代理和緩存解決方案。它以其靈活性、可擴展性、無縫複製、簡單性和易用性而聞名。 Redis 被廣泛應用於許多領域,例如機器學習、實時分析、聊天、消息傳遞和遊戲排行榜。
Redis 本身並不強大,但您可以對其進行調整以提高安全性並阻止未經授權的用戶。
在本教程中,您將學習如何: 安裝和保護 Redis 存在 洛奇 Linux 8 再次 阿爾瑪 Linux 8.
第一步:在 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系統上,所以值為 系統 如圖所示..

就是這樣。保存更改並退出文本編輯器。默認情況下 Redis 不會自動啟動,所以你必須像這樣啟動它:
$ sudo systemctl start redis
此外,每次打開或重新啟動系統時都啟用該服務。
$ sudo systemctl enable redis
要驗證 Redis 是否正在運行,請運行以下命令:
$ sudo systemctl status redis

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

第 2 步:密碼保護 Redis
安全是任何數據庫系統的重中之重,Redis 也不例外。在此步驟中,我們更進一步,啟用身份驗證以保護 Redis 並將未經授權的人拒之門外。
再次訪問配置文件。
$ sudo vim /etc/redis.conf
出現 請求路徑 指導。這是一個將客戶端配置為在訪問數據庫之前需要身份驗證的指令。
取消註釋該指令並指定您自己的密碼。
requirepass strong_password

重新啟動 Redis 數據庫以應用更改。
$ sudo systemctl restart redis
要測試身份驗證是否已啟用,請訪問您的 Redis 客戶端。
$ redis-cli
現在嘗試將值設置為鍵。
$ set keystudent Mike
這會導致指示的錯誤。這表明需要進行身份驗證。
(error) NOAUTH Authentication required.

要進行身份驗證,請致電 領有牌照 密碼跟在關鍵字後面。 Redis 將檢查您的密碼並允許您繼續。

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

要退出 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
出現 綁定 指導。默認情況下,這設置為在本地主機上偵聽。
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

結論是
您已在 Rocky Linux 8 或 AlmaLinux 8 上成功安裝並保護 Redis。我們歡迎您對本指南提出反饋意見。