李全江(jokey),腾讯云工程师,热衷于云原生领域。目前主要负责腾讯云 TKE 的售中、售后的技术支持,根据客户需求输出合理技术方案与最佳实践。 原理概述 动态准入控制器 Webhook 在访问鉴权过程中可以更改请求对象或完全拒绝该请求,其调用 Webhook 服务的方式使其独立于集群组件,具有非常大的灵活性,可以方便的做很多自定义准入控制,下图为动态准入控制在 API 请求调用链的位置(来源于 Kubernetes 官网[1]): 从上图可以看出,动态准入控制过程分为两个阶段:首先执行 Mutat
出于测试的目的,有时候急需一张证书,一般申请的流程比较麻烦,而且泛域名证书收费,于是本文介绍一下自己制作一张自签名泛域名证书,设置一个比较长的期限,这样就可以方便测试啦~~
为了支持网格化 Pod 之间的 mTLS 连接, Linkerd 需要一个信任锚证书(trust anchor certificate)和一个带有相应 key 的颁发者证书(issuer certificate)。
在《基于Docker的持续集成方案(介绍) - Part.1》中,有一个安装和配置环节,即私有的docker镜像仓库,本文将对此进行介绍。
对于日常使用到的 ELK 组件的系统,默认在 ELK 部署的时候默认都是没有安装配置任何权限管控插件,这对于存储在 es 之中的数据无异于“裸奔”。没有任何防护的话,只要稍微会一点 ELK 知识,网络探测到暴露在域外的 es 数据库后,可以直接对数据进行“增删改查”,这是致命的安全问题。以下为例:
我们在使用共有云的时候,为了方便调试有时候会需要本地电脑访问到云上的vpc机器,但是云上vpc是网络隔离的,如果不加公网ip是无法直接本地访问vpc的,其实这里我们只需要在vpc内有一台机器可以访问公网,然后再这台集群上搭建openvpn,这样本地就可以通过openvpn去直接连接vpc内其他内网机器,不用每台机器都配置公网ip了,下面我们来说下如何在腾讯云的cvm上搭建openvpn。
随着HTTPS的火热,越来越多的小伙伴愿意去配置SSL证书(毕竟全浏览器绿标哦),上次发布了如何在IIS环境下配置SSL后,部分小伙伴留言说需要阿帕奇的教程,今天我们就为大家更新下哈。(上次也说了,HTTPS有什么样的好处,大家不会不知道吧)
是这样的一个事情:服务运行于kubernetes集群(腾讯云tke1.20.6)。日志采集到了elasticsearch集群and腾讯的cls日志服务中。小伙伴看日志觉得还是不太方便,还是想看控制台输出的。给他们分配过一台服务器(加入到集群中,但是有污点标签的节点)。为了方便他们测试一下东西。现在想让他们通过此work节点可以在控制台查看日志。正常的就是把master节点的/root/.kube/目录下的config配置文件copy过来就可以了。但是这权限也太大了!重新复习一遍kubeconfig配置文件以及 role rolebinding的知识!
腾讯云上的Elasticsearch service已经开始为我们提供基于HTTPS协议访问的Elasticsearch集群了;Elastic Cloud的Elasticsearch服务则一直都是默认使用的HTTPS安全协议。而我们自建的Elasticsearch集群,从8.0版本开始,也默认地简化了安全功能,为用户自动配置:用户认证、基于角色的访问控制进行用户授权、使用 TLS 加密的节点到节点通信、使用 HTTPS 与 Elasticsearch API 进行加密通信。
EPEL (Extra Packages for Enterprise Linux) 是由 Fedora Special Interest Group 为企业 Linux 创建、维护和管理的一个高质量附加包集合适用于但不仅限于 Red Hat Enterprise Linux (RHEL), CentOS, Scientific Linux (SL), Oracle Linux (OL)
dashboard是基于Web的Kubernetes用户界面。可以使用dashboard将容器化应用程序部署到Kubernetes集群,对容器化应用程序进行故障排除,以及管理集群资源。可以使用dashboard来概述群集上运行的应用程序,以及创建或修改单个Kubernetes资源(例如部署、任务、守护进程等)。可以使用部署向导扩展部署,启动滚动更新,重新启动Pod或部署新应用程序。
生成CA私钥(.key)–>生成CA证书请求(.csr)–>自签名得到根证书(.crt)(CA给自已颁发的证书)。
1. mqtt第三方库支持openssl a, 编译openssl库(我使用的是1.0.1),在mqtt源码目录下创建openssl文件夹,并拷贝编译完成的库文件与头文件到此文件夹下。 b, 修改mqtt(源码从git上获取https://github.com/eclipse/paho.mqtt.c.git )编译选项,PAHO_WITH_SSL,OPENSSL_SEARCH_PATH。修改后需要重新清除,重新编译。
最近在跨机房做一个部署,因为机房之间暂时没有专线,所以流量需要经过公网。对于经过公网的流量,我们一般需要做以下的安全措施: 只能允许已知的 IP 来访问; 流量需要加密; 第一项很简单,一般的防火墙,或者 Iptables 都可以做到。 对于加密的部分,最近做了一些实验和学习,这篇文章总结加密的实现方案,假设读者没有 TLS 方面的背景知识,会简单介绍原理和所有的代码解释。 TLS/SSL 的原理 TLS 是加密传输数据,保证数据在传输的过程中中间的人无法解密,无法修改。(本文中将 TLS 与 SSL 作为
最近在使用RC的时候碰到了一个问题:创建RC后无法自动创建Pod 网上搜索,得到出现该问题的原因是:身份认证。 解决的办法有两种:(1)跳过认证(2)解决认证 跳过认证 跳过认证的解决办法是
Harbor(港口,港湾)是一个用于存储和分发Docker镜像的企业级Registry服务器
本文部分参考: https://www.wosign.com/faq/faq2016-0309-03.htm https://www.wosign.com/faq/faq2016-0309-04.htm http://blog.csdn.net/hherima/article/details/52469674
openv** 版本:2.4.9-1.el7 ease-rsa 版本:3.0.7-1.el7 openv**-auth-ldap 版本:2.0.3-17.el7
Redis 6实现了通道加密,提高了redis的安全性。Redis作为缓存数据库,里面很有可能缓存重要的敏感信息,所以支持tls通道加密还是很有必要的,当然敏感信息还是建议加密保存。
辉哥在学习蚂蚁BAAS系统时,发现了一堆证书或者公私钥名称,包括trustCa,ca.crt,client.crt,client.key,pub.txt,MyPKCS12.p12等等文件,不知道干什么用,内心是奔溃的。后来在阿里专家孙善禄的指导下,输出了《蚂蚁区块链第8课 如何创建新的账户?》搞清楚了user.key和pub.txt文件的作用。 本文着重于介绍SSL/TLS工作原理,带着大家一起学习trustCa,ca.crt,client.key,client.crt,client.key等文件的作用。
下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下)
用于定义初始的主节点,确保主节点选举的有效性。这里面的名字要和node.name保持一致
因为公司开发都是内网环境,以往居家办公或非公司环境,都需要进行远程到公司电脑进行办公,为了方便部门同事出差驻场开发,搭建了虚拟专有网络
在现代企业环境中,保障数据的安全和完整是至关重要的。消息队列作为系统间通信的重要桥梁,其安全性直接关系到企业数据的安全。RabbitMQ作为一个广泛应用的消息中间件,提供了多种安全机制,其中SSL/TLS加密是非常重要的一环。为了保障消息传输的安全,我们计划为现有的RabbitMQ镜像集群配置SSL加密。
在上一篇文章里我们主要介绍制作ssl证书,这里我们主要介绍安装docker。这里我们采用yum的方式安装docker,安装完成之后开启tcp通讯并且开启双向ssl验证。默认docker client和docker server是通过unix sock通讯的(在同一台机器),在实际环境中要根据自己需要来决定是否开启tcp通讯。当开启tcp通讯之后也要根据自己实际需要来看是否要开启ssl,是开启单向ssl还是双向ssl。
tke集群默认会给每个子账号提供kubeconfig,子用户控制台就能获取到,为什么这里还要通过token生成tke的kubeconfig给子用户使用?
etcd通过客户端证书支持SSL/TLS以及身份验证,客户端到服务器以及对等(服务器到服务器/群集)通信。
下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下) 1.首先要生成服务器端的私钥(key文件): openssl genrsa -des3 -out server.key 1024 [root@airwaySSL openssl]# cd ssl/ [root@airwaySSL ssl]# pwd /home/openssl/ssl [root@airwaySSL ssl]# ls certs man misc openssl.cnf private server.csr server.key 运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施! 去除key文件口令的命令: openssl rsa -in server.key -out server.key 2.openssl req -new -key server.key -out server.csr -config openssl.cnf [root@airwaySSL bin]# openssl req -new -key server.key -out server.csr -config openssl.cnf Enter pass phrase for server.key:12345 You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:china Locality Name (eg, city) []:wuhan Organization Name (eg, company) [Internet Widgits Pty Ltd]:airway Organizational Unit Name (eg, section) []:airway Common Name (eg, YOUR name) []:airway Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: 生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可. 3.对客户端也作同样的命令生成key及csr文件: openssl genrsa -des3 -out client.key 1024 Generating RSA private key, 1024 bit long modulus ...........++++++ ..++++++ e is 65537 (0x10001) Enter pass phrase for client.key:12345 Verifying - Enter pass phrase for client.key:12345 openssl req -new -key client.key -out client.csr -config openssl.cnf [root@airwaySSL bin]# openssl req -new -key client.key -out client.csr -config openssl.cnf Enter pass phrase for client.key:1234
前提条件:已经准备好CA根证书(etcd在制作CA证书时需要CA根证书),并且把CA根证书文件ca.key和ca.crt拷贝到3个etcd节点的/etc/kubernetes/pki目录下。 3台主机的IP地址分别为192.168.3.135、192.168.3.136、192.168.3.137。 要安装的etcd版本:v3.4.13-linux-amd64。
user1作为server端,user2作为client端,即client端需要验证server端证书。
最近几个月,Elastic Stack发生了很多变化,并发布了许多免费的安全工具。由Comodo和Elastic Endpoint Security发布的OpenEDR。因此,我认为现在是查看Elastic的更改并尝试其新Endpoint Security的好时机。因此,对于这篇文章,我将展示如何从头开始安装Elastic SIEM和Elastic Endpoint Security。
Csr 是证书请求文件,用于申请证书。在制作csr文件的时,必须使用自己的私钥来签署申,还可以设定一个密钥。
在公网环境下,设备接入要保证安全性,server端既要验证设备的身份,设备也要验证server端的身份,这时就需要做双端互相认证。
Kubernetes 系统提供了三种认证方式:CA 认证、Token 认证 和 Base 认证。 CA 双向认证方式是最为严格和安全的集群安全配置方式,也是我们今天要介绍的主角。
利用OpenSSL生成库和命令程序,在生成的命令程序中包括对加/解密算法的测试,openssl程序,ca程序.利用openssl,ca可生成用于C/S模式的证书文件以及CA文件.
CSR:证书签名请求,即公钥,生成证书时需要将此提交给证书机构,生成 X509 数字证书前,一般先由用户提交证书申请文件,然后由 CA 来签发证书
从今天开始笔者打算和大家聊一聊http2这个协议,想要说清楚http2协议就必须亲手搭建一个http2的服务,并且对比http2和http1.1的特点,从而了解http2的一些新特性。
部署环境 Centos7.3 x64 docker-ce-17.06.0 docker-compose-1.15.0 Python-2.7.5(系统默认) 部署目标 使用HTTPS协议 支持Clair(在Harbor1.2版本会支持) 支持HTTPS 生产环境最好由权威CA机构签发证书(免费的推荐StartSSL),这里为了测试方便使用自签发的证书 创建CA证书 openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -day
SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道(Secure socketlayer(SSL),SSL安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能了)。即通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露。保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。 SSL网站不同于一般的Web站点,它使用的是“HTTPS”协议,而不是普通的“HTTP”协议。因此它的URL(统一资源定位器)格式为“https://www.baidu.com”。
创建自签名根根证书过程:生成CA私钥(.key)-->生成CA证书请求(.csr)-->自签名得到根证书(.crt)(CA给自已颁发的证书)
jenkins 连接低版本的k8s时,不需要验证。但是新版本的启用了https和角色管理
X.509 Certificate Signing Request (CSR) Management.
wget http://www.openssl.org/source/openssl-1.0.0a.tar.gz
a、在实际生产环境中,由于某些历史原因我们或许不能完美的实现所谓的一切皆“云原生”,例如有传统的jenkins和执行专有任务的slave节点
在以前搭建docker镜像私有仓库的时候,我都是使用registery搭建。本篇章来尝试另一个新的镜像仓库Harbor。
在go 1.15以上版本,必须使用SAN方式,否则会报"transport: authentication handshake failed: x509: certificate relies on legacy Common Name field, use SANs instead"
Harbor主页在:https://vmware.github.io/harbor/,Harbor是由Vmware中国团队开发并开源的Docker镜像仓库。
首先是觉得在 Service 文件里面引用环境变量的方式似乎没有什么特别的好处。因此丢弃了环境变量文件,直接把参数写入了 Service 文件。
F为签名函数。CA自己的私钥是唯一标识CA签名的,因此CA用于生成数字证书的签名函数一定要以自己的私钥作为一个输入参数。在RSA加密 系统中,发送端的解密函数就是一个以私钥作 为参数的函数,因此常常被用作签名函数使用。签名算法是与证书一并发送给接收 端的,比如apple的一个服务的证书中关于签名算法的描述是“带 RSA 加密的 SHA-256 ( 1.2.840.113549.1.1.11 )”。因此CA用私钥解密函数作为F,对C的摘要进行运算得到了客户数字证书的签名,好比大学毕业证上的校长签名,所有毕业证
注意,这里的 Organization Name (eg, company) [Internet Widgits Pty Ltd]: 后面生成客户端和服务器端证书的时候也需要填写,O和OU不要写成一样的!!!
领取专属 10元无门槛券
手把手带您无忧上云