配置HTTPS加密的快速参考指南

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:

Nginx

ssl_protocols TLSv1 TLSv1.1 TLSv1.2
阿帕奇

SSLProtocol All -SSLv2 -SSLv3
密码套房

选择密码套件可能很困难,它们的名称可能看起来很复杂,但可以很容易地分解成它们的组件。采取以下套房:

TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

组件是:

TLS - the protocol used
    ECDHE - the key exchange mechanism
    ECDSA - the algorithm of the authentication key
    AES - the symmetric encryption algorithm
    128 - the key size of the above
    GCM - the mode of the above
    SHA256 - the MAC used by the algorithm

密钥交换机制

您应该只支持使用ECDHE和DHE(也称为EECDH和EDH)进行密钥交换的套件。EC变体更快,并且都提供完美前向保密(PFS),这是必不可少的。用ECDHE支持ECDHE和DHE的一个例子是首选。

 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_DHE_RSA_WITH_AES_256_GCM_SHA384

注意: TLSv1.3仅支持PFS密钥交换。
认证

绝大多数网络将使用RSA作为身份验证密钥,因为它得到了广泛的支持,但ECDSA的速度要快得多(来源)。您可以同时为两个世界提供RSA和ECDSA证书(教程)。通过在身份验证段中检查RSA和/或ECDSA,仅支持适合您情况的套件。

有RSA证书:

 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

使用ECDSA证书:

    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

使用混合RSA和ECDSA证书:

    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

在上面的示例中,AES_128_GCM形成密码。AES是首选算法,使用128位密钥大小是可以接受的。出于性能原因,您可以选择128位密钥而不是256位密钥。GCM段是密码的模式,表示这是AEAD(带有关联数据的经过身份验证的加密)。GCM套件应优先于非GCM套件。同一套件的GCM和非GCM版本的示例。

     TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    TLS_ECDHE_RSA_WITH_AES_128_SHA256
    TLS_ECDHE_RSA_WITH_AES_256_SHA384

注意: TLSv1.3仅支持AEAD套件。
Nginx

ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"
阿帕奇

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
首选服务器订单

当我们按照首选顺序指定密码列表时,我们需要告诉服务器强制执行该订单,否则不会。

Nginx的

ssl_prefer_server_ciphers on;

阿帕奇

SSLHonorCipherOrder On

HTTP严格传输安全性

HSTS是一个HTTP响应标头,允许您将访问者的浏览器配置为仅通过HTTPS与您通信,无论发生什么。如果没有配置HSTS,则不会完成HTTPS的部署。您可以在HSTS中阅读更多内容- 传输层安全性中缺少的链接,我有很多文章涉及HSTS。

Nginx的

add_header Strict-Transport-Security "max-age=600; includeSubDomains";

阿帕奇

Header always set Strict-Transport-Security "max-age=600; includeSubDomains"

随着您对策略越来越有信心,您可以增加max-age的大小并考虑HSTS预加载。
原文地址:https://www.wosign.com/news/news_2018112002.htm

相关文章
|
9天前
|
安全 应用服务中间件 网络安全
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
|
11天前
|
安全 网络安全 数据安全/隐私保护
内网IP地址实现HTTPS加密访问教程
在内网环境中,为确保数据传输的安全性,绑定SSL证书搭建HTTPS服务器至关重要。本文介绍了内网IP地址的前期准备、申请SSL证书的步骤以及客户端配置方法。具体包括选择合适的CA、注册账号、提交申请、下载证书,并在客户端导入根证书,确保通信数据的安全加密。推荐使用JoySSL提供的技术解决方案,确保内网设备通信安全。
内网IP地址实现HTTPS加密访问教程
|
14天前
|
域名解析 算法 安全
免费申请https加密全攻略
访问JoySSL官网注册账号,申请免费SSL证书。选择证书类型,填写域名信息,生成CSR文件,验证域名所有权。下载并部署证书至服务器,测试HTTPS连接。注意定期续期,确保兼容性和安全性。如有问题,可联系JoySSL客服。
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
2月前
|
安全 网络安全 数据安全/隐私保护
HTTPS中的加密算法
HTTPS中的加密算法
|
1月前
|
安全 网络协议 网络安全
【HTTPS】对称加密和非对称加密
【HTTPS】对称加密和非对称加密
32 0
|
Java 数据安全/隐私保护
Java中请求HTTPS加密的源代码
 HTTPS访问方法的代码,抄一个能用的DEMO吧,我测试过的,可以用、,希望对大家也有用   import java.io.*;import java.net.*;import java.security.*;import java.security.cert.*;import java.util.*;import javax.net.ssl.*;public class Http
1047 0
|
Java 数据安全/隐私保护
Java中请求HTTPS加密的源代码
import java.io.*;import java.net.*;import java.security.*;import java.security.
777 0
|
2月前
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性
|
1月前
|
安全 网络协议 算法
HTTPS网络通信协议揭秘:WEB网站安全的关键技术
HTTPS网络通信协议揭秘:WEB网站安全的关键技术
152 4
HTTPS网络通信协议揭秘:WEB网站安全的关键技术