Redis 啟用 TLS 加密傳輸配置

Redis 啟用 TLS 加密傳輸配置

一、Redis TLS 加密概述

Redis 從 6.0 版本開始原生支持 TLS 加密傳輸,可以保護客戶端與服務器之間的通信安全,防止數據被竊聽或篡改。

二、準備工作

確認 Redis 版本?:

redis-server --version

確保版本 ≥ 6.0

安裝依賴?:

sudo apt-get install openssl

三、生成 TLS 證書

1. 創建證書目錄

mkdir -p /etc/redis/certs
cd /etc/redis/certs

2. 生成 CA 私鑰和證書

openssl genrsa -out ca.key 4096
openssl req -x509 -new -nodes -key ca.key -sha256 -days 3650 -out ca.crt
  1. 生成 Redis 服務器證書
# 生成私鑰
openssl genrsa -out redis.key 2048# 創建證書簽名請求 (CSR)
openssl req -new -key redis.key -out redis.csr# 使用 CA 簽署證書
openssl x509 -req -in redis.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out redis.crt -days 365 -sha256# 合并證書和私鑰
cat redis.key redis.crt > redis.pem

4. 設置權限

chown redis:redis /etc/redis/certs/*
chmod 600 /etc/redis/certs/*

四、配置 Redis 服務器 TLS

編輯 /etc/redis/redis.conf:

# 啟用 TLS
tls-port 6379
port 0  # 禁用非 TLS 端口# 證書配置
tls-cert-file /etc/redis/certs/redis.crt
tls-key-file /etc/redis/certs/redis.key
tls-ca-cert-file /etc/redis/certs/ca.crt# 安全設置
tls-auth-clients yes  # 要求客戶端使用證書
tls-protocols "TLSv1.2 TLSv1.3"
tls-ciphers DEFAULT:!MEDIUM
tls-ciphersuites TLS_CHACHA20_POLY1305_SHA256
tls-prefer-server-ciphers yes

五、重啟 Redis 服務

sudo systemctl restart redis-server

六、客戶端連接配置

###1. Redis CLI 連接

redis-cli --tls \--cert /etc/redis/certs/redis.crt \--key /etc/redis/certs/redis.key \--cacert /etc/redis/certs/ca.crt

2. 編程語言客戶端示例

PHP (Predis)

$client = new Predis\Client(['scheme' => 'tls','host'   => 'your.redis.host','port'   => 6379,'ssl'    => ['cafile'      => '/path/to/ca.crt','verify_peer' => true]
]);

Python (redis-py)

import redisr = redis.Redis(host='your.redis.host',port=6379,ssl=True,ssl_ca_certs='/path/to/ca.crt',ssl_cert_reqs='required'
)

七、高級配置選項

雙向認證?:

tls-auth-clients yes

僅允許特定密碼套件?:

tls-ciphers "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384"

會話緩存?:

tls-session-caching yes
tls-session-cache-size 1000000
tls-session-cache-timeout 300

八、測試與驗證

測試連接?:

openssl s_client -connect localhost:6379 -cert /etc/redis/certs/redis.crt -key /etc/redis/certs/redis.key -CAfile /etc/redis/certs/ca.crt

查看 TLS 信息?:

redis-cli --tls -a yourpassword --no-auth-warning --tls-ca-cert-file /etc/redis/certs/ca.crt INFO SECURITY

九、常見問題解決

證書錯誤?:

  1. 確保證書路徑正確
  2. 檢查證書權限 (redis 用戶可讀)
  3. 驗證證書有效期

連接失敗?:

sudo tail -f /var/log/redis/redis-server.log

性能調優?:

  1. 對于高并發場景,考慮啟用會話緩存
  2. 監控 TLS 握手性能

十、安全最佳實踐

  1. 定期輪換證書 (建議每年一次)
  2. 禁用舊版 TLS 協議 (如 TLS 1.0/1.1)
  3. 監控證書過期時間
  4. 考慮使用證書管理工具 (如 certbot)
  5. 在生產環境使用受信任的 CA 簽發證書

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/79400.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/79400.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/79400.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Linux】深入理解程序地址空間

🌟🌟作者主頁:ephemerals__ 🌟🌟所屬專欄:Linux 目錄 前言 一、什么是程序地址空間 二、深入理解程序地址空間 1. 引例 2. 理解地址轉化 3. 再談程序地址空間 4. 補充知識 總結 前言 在現代操作系…

【深度學習-Day 5】Python 快速入門:深度學習的“瑞士軍刀”實戰指南

Langchain系列文章目錄 01-玩轉LangChain:從模型調用到Prompt模板與輸出解析的完整指南 02-玩轉 LangChain Memory 模塊:四種記憶類型詳解及應用場景全覆蓋 03-全面掌握 LangChain:從核心鏈條構建到動態任務分配的實戰指南 04-玩轉 LangChai…

解決在 Linux 中 WPS 字體缺失問題

解決在 Linux 中 WPS 字體缺失問題 安裝方式 安裝方式 首先下載你所需要的字體文件 在字體文件所在的目錄下右鍵點擊在命令行中打開 或 Open in Terminal sudo mkdir /usr/share/fonts/myfontssudo cp ./* /usr/share/fonts/myfonts執行命令,更新字體緩存 sudo fc…

668SJBH報刊發行系統

1 前言 隨著我國信息產業的迅猛發展,手工管理方式已不適應社務管理的要求,報社的日常管理正面臨著信息化的挑戰,采用計算機管理以提高服務質量和管理水平勢在必行。發行管理是社務管理的一個重要組成部分,是報社和客戶聯系的紐帶…

K8S - 從零構建 Docker 鏡像與容器

一、基礎概念 1.1 鏡像(Image) “軟件的標準化安裝包” ,包含代碼、環境和配置的只讀模板。 技術解析 鏡像由多個層組成,每層對應一個Dockerfile指令: 應用代碼 → 運行時環境 → 系統工具鏈 → 啟動配置核心特性…

better_fbx 下載

目錄 v6.0.5下載: better_fbx 下載 v6.0.5下載: Blender FBX模型導入導出插件 Better FBX Importer & Exporter V6.0.5V5.4.10 For Blender 2.8 | 齲齒一號GFXCamp better_fbx 下載 How To Install Launch Blender, navigate to Edit->User P…

Spring AOP 典型應用場景

AOP 典型應用場景 1. 日志記錄(Logging)代碼實現 2. 權限校驗(Authentication)代碼實現 3. 性能監控(Performance Monitoring)代碼實現 4. 緩存處理(Caching)代碼實現 5. 重試機制&a…

開始一個vue項目-day2

這次新增的功能有: 1、使用cookie存儲token 參考網站:https://vueuse.org/ 安裝包: npm i vueuse/integrations npm i universal-cookie^7 2、cookie的設置讀取和刪除,代碼:composables/auth.js import { useCookies } from …

「Mac暢玩AIGC與多模態18」開發篇14 - 多字段輸出與結構控制工作流示例

一、概述 本篇在輸入變量基礎上,演示如何通過執行 LLM 節點輸出多個結構化字段,并傳遞至結束節點。開發人員將掌握如何配置結構化輸出格式,實現提示詞與字段的準確映射,為后續引入條件判斷、循環結構等邏輯控制建立結構輸出規范基礎。 二、環境準備 macOS 系統Dify 平臺已…

JWT解析

什么是JWT JSON Web Token (JWT) 是一種開放標準 (RFC 7519),它定義了一種緊湊且獨立的方式,用于在各方之間以 JSON 對象的形式安全地傳輸信息。此信息可以驗證和信任,因為它是經過數字簽名的。…

C語言中的自定義類型 —— 結構體.位段.聯合體和枚舉

自定義類型 1. 前言2. 結構體2.1 結構體的聲明2.2 結構體變量的定義和初始化2.3 結構體的特殊聲明2.4 結構體的自引用2.5 結構體的內存對齊2.6 修改默認對齊數2.7 結構體傳參 3. 位段4. 聯合體5. 枚舉6. 結言 1. 前言 在C語言中已經為用過戶提供了內置類型,如&…

StarRocks 查詢優化器深度解析

StarRocks 查詢優化器概覽 1. Development History of StarRocks 過去五年,StarRocks 發布了三個大版本: StarRocks 1.0:通過向量化引擎和 CBO,打造極速 OLAP 數據庫。 StarRocks 2.0:通過主鍵模型、數據湖分析和查詢…

如何提高情商?(優化版)

引言 提高情商(EQ)是一個需要長期練習和自我反思的過程,核心在于理解自己、管理情緒、共情他人并有效溝通。以下是一些具體且可操作的方法,結合理論和實際場景,幫助你逐步提升: 一、核心方法:…

Python爬蟲實戰:獲取好大夫在線各專業全國醫院排行榜數據并分析,為患者就醫做參考

一、引言 在當今醫療資源豐富但分布不均的背景下,患者在選擇合適的心血管內科醫院時面臨諸多困難。好大夫在線提供的醫院排行榜數據包含了醫院排名、線上服務得分、患者評價得分等重要信息,對患者選擇醫院具有重要的參考價值。本研究通過爬取該排行榜數據,并進行深入分析,…

【AI面試準備】電商購物車AI測試設計與實施

面試題:案例實踐: 為電商購物車設計AI測試:通過用戶行為日志訓練點擊路徑預測模型,動態生成邊界條件測試用例。 為了順利通過面試,回答應結構清晰、技術深入,并突出實際應用與創新。以下為分步解答&#…

Java 中使用 Callable 創建線程的方法

一、Callable 接口概述? Callable接口位于java.util.concurrent包中,與Runnable接口類似,同樣用于定義線程執行的任務,但它具有以下獨特特性:? 支持返回值:Callable接口聲明了一個call()方法,該方法會在…

2025-SMS短信驗證服務或存風險,小心賬號隱私“失守”

近期,火絨安全情報中心監測到一款偽裝成具備SMS短信驗證碼接收服務的程序。該程序通過部署持久化后門(即僵尸網絡節點)竊取敏感信息。火絨安全提醒廣大用戶務必從官方或可信渠道下載軟件,避免因使用來路不明的程序而導致賬號被盜或…

docker部署Open WebUI下載速度慢解決方法

docker pull ghcr.nju.edu.cn/open-webui/open-webui:main改成這個就可以了

氣泡圖、桑基圖的繪制

1、氣泡圖 使用氣泡圖分析某一年中國同歐洲各國之間的貿易情況。 氣泡圖分析的三個維度: ? 進口額:橫軸 ? 出口額:縱軸 ? 進出口總額:氣泡大小 數據來源:鏈接: 國家統計局數據 數據概覽(進出口總額&…

前端面經-VUE3篇(三)--vue Router(二)導航守衛、路由元信息、路由懶加載、動態路由

一、導航守衛 vue Router 中的 導航守衛(Navigation Guards) 是一個非常重要的功能,用于在路由切換過程中,攔截、控制、檢查或延遲頁面跳轉。 你可以理解為: 🔐 “進門前的保安”,控制哪些頁面…