首页 > 其他分享 >基于 Traefik 的激进 TLS 安全配置实践

基于 Traefik 的激进 TLS 安全配置实践

时间:2022-12-24 11:00:14浏览次数:155  
标签:TLS cn 证书 Traefik ewhisper 激进 example

前言

Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易。

Traefik可以与现有的多种基础设施组件(Docker、Swarm模式、Kubernetes、Marathon、Consul、Etcd、Rancher、Amazon ECS...)集成,并自动和动态地配置自己。

今天我们基于 Traefik on K8S 来详细说明如何对 TLS 安全进行「激进」配置。

环境基本信息

  1. K8S 集群;
  2. 域名:ewhisper.cn(由 DNSPod 进行 DNS 管理,已指向 K8S 集群的 Traefik Ingress 的 LoadBalancer 公网地址)
  3. 使用 cert-manager 自动管理的证书 *.ewhisper.cn 作为 Traefik 的默认证书;cert-manager 位于 cert-manager NameSpace 下
  4. Traefik 2.4.8 安装于 K8S 集群的 kube-system NameSpace 下,且使用 CRDs 进行配置。

「激进」的 TLS 配置

全站受信证书 + HTTPS。具体如下:

  1. 全站 HTTPS 443 端口配置;
  2. 证书来自 Let's Encrypt(由 cert-manager 自动申请)(⚡激进,生产慎用!)
  3. 监听 HTTP 请求,并重定向到 HTTPS;(⚡激进,生产慎用!)
  4. 启用 HSTS 功能(⚡激进,生产慎用!)
  5. TLS 版本限定在 TLS 1.3(⚡激进,生产慎用!)

配置实践

TLS 版本限定在 TLS 1.3

使用 Traefik 的 CRD - TLSOption 配置如下:

apiVersion: traefik.containo.us/v1alpha1
kind: TLSOption
metadata:
  name: default
  namespace: kube-system

spec:
  minVersion: VersionTLS13

标签:TLS,cn,证书,Traefik,ewhisper,激进,example
From: https://blog.51cto.com/ewhisper/5967095

相关文章

  • 基于 Traefik 的激进 TLS 安全配置实践
    前言Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易。Traefik可以与现有的多种基础设施组件(Docker、Swarm模式、Kubernetes、Marathon、Consul、Etcd......
  • HTTPS加密原理和证书及SSL/TLS握手过程
    HTTPS概述:(FromWikipedia)    安全超文本传输​​协议( HTTPS )是超文本传输​​协议(HTTP)的扩展。它用于计算机网络上的安全通信,并在Internet上广泛使用。在......
  • HTTPS 中 SSL/TLS 协议基本流程(转)
    SSL/TLS 协议基本流程:客户端向服务器索要并验证服务器的公钥。双⽅协商⽣产「会话秘钥」。双⽅采⽤「会话秘钥」进⾏加密通信。前两步也就是 SSL/TLS 的建⽴过程,也......
  • 基于 Traefik 的 Basic Auth 配置
    前言Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易。Traefik可以与现有的多种基础设施组件(Docker、Swarm模式、Kubernetes、Marathon、Consul、Etcd......
  • 基于 Traefik 的 Basic Auth 配置
    前言Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易。Traefik可以与现有的多种基础设施组件(Docker、Swarm模式、Kubernetes、Marathon、Consul、Etcd......
  • Ubuntu16.04 TLS 提高工作效率的办公软件
    Ubuntu装机软件安装,搜狗输入法安装截屏工具,Shutter安装Markdown阅读器,Typora安装VirtualBox,sudoaptinstallvirtualbox安装Ubuntu通信协议,sudoaptinstallopenss......
  • Ubuntu18.04TLS系统下用Pycharm打开conda虚拟环境编译py文件
    首先找到conda的虚拟环境所在的位置,输入命令行​​condaenvlist​​​,效果如下:绿色为创建虚拟环境的命令,蓝色为虚拟环境的名称,紫色为虚拟环境在Ubuntu18.04TLS系统下的......
  • Python 3 既是激进的又是克制的,这些提议被否决了
    [译]PEP3099--Python3中不会改变的事情导语:Python3.8已经发布了,引进了不少变更点。关于3.9预计引入的修改,也披露了一些。我们之前还关注过​​GIL的移除计划​​......
  • uitls
    1.当前星期几*@params无*@returnsStringexportfunctiongetWeekDate(){varnow=newDate();varday=now.getDay();varweeks=newArray("周日","周一",......
  • C# 解决“请求被中止: 未能创建 SSL/TLS 安全通道”的问题
    解决办法:让客户端启用该协议。具体就是在发起网络请求之前确保ServicePointManager.SecurityProtocol中含有服务端所用的安全协议,如果不知道或希望客户端健壮一点,当然最简......