redis.conf详解之tls-dh-params-file

2021-12-06  本文已影响0人  小易哥学呀学

用法

tls-dh-params-file redis.dh

 

用途

设置密钥交换协议文件
迪菲-赫尔曼密钥交换(英语:Diffie–Hellman key exchange,缩写为DH
使用DH后TLS握手中的第三个随机数不在网络上传输(原来是加密传输),加强了安全性。
迪菲-赫尔曼密钥交换-原理概要
 

生成dh文件

openssl dhparam -5 -out redis.dh 2048
或
openssl dhparam -2 -out redis.dh 2048

 

注意事项:

暂无
 

redis源码

https://github.com/redis/redis/blob/6.2.6/src

 331     if (ctx_config->dh_params_file) {
 332         FILE *dhfile = fopen(ctx_config->dh_params_file, "r");
 333         DH *dh = NULL;
 334         if (!dhfile) {
 335             serverLog(LL_WARNING, "Failed to load %s: %s", ctx_config->dh_params_file, strerror(errno));
 336             goto error;
 337         }
 338
 339         dh = PEM_read_DHparams(dhfile, NULL, NULL, NULL);
 340         fclose(dhfile);
 341         if (!dh) {
 342             serverLog(LL_WARNING, "%s: failed to read DH params.", ctx_config->dh_params_file);
 343             goto error;
 344         }
 345
 346         if (SSL_CTX_set_tmp_dh(ctx, dh) <= 0) {
 347             ERR_error_string_n(ERR_get_error(), errbuf, sizeof(errbuf));
 348             serverLog(LL_WARNING, "Failed to load DH params file: %s: %s", ctx_config->dh_params_file, errbuf);
 349             DH_free(dh);
 350             goto error;
 351         }
 352
 353         DH_free(dh);
 354     }

 

原生注释

# Configure a DH parameters file to enable Diffie-Hellman (DH) key exchange:
#
# tls-dh-params-file redis.dh
上一篇下一篇

猜你喜欢

热点阅读