tls

docker daemon的HTTP socket TLS加密连接

做~自己de王妃 提交于 2021-01-11 03:02:47
默认docker daemon是通过非网络的unix socket监听客户端连接的.如果我们需要客户端通过网络来安全的连接到docker daemon,则因该配置TLS加密方式,通过http的方式来连接. 使用openssl来创建ca证书,并签发密钥. [root@srv00 ~]# openssl genrsa -aes256 -out ca-key.pem 4096 Generating RSA private key, 4096 bit long modulus .........................................................................................................................................................................++ ........................++ e is 65537 (0x10001) Enter pass phrase for ca-key.pem: Verifying - Enter pass phrase for ca-key.pem: [root@srv00 ~]# openssl req -new -x509 -days 365 -key ca-key

SSL/TLS协议运行机制的概述

笑着哭i 提交于 2020-04-26 19:02:16
互联网的通信安全,建立在SSL/TLS协议之上。 本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运行过程,不涉及具体的实现细节。如果想了解这方面的内容,请参阅 RFC文档 。 一、作用 不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。 (1) 窃听风险(eavesdropping):第三方可以获知通信内容。 (2) 篡改风险(tampering):第三方可以修改通信内容。 (3) 冒充风险(pretending):第三方可以冒充他人身份参与通信。 SSL/TLS协议是为了解决这三大风险而设计的,希望达到: (1) 所有信息都是加密传播,第三方无法窃听。 (2) 具有校验机制,一旦被篡改,通信双方会立刻发现。 (3) 配备身份证书,防止身份被冒充。 互联网是开放环境,通信双方都是未知身份,这为协议的设计带来了很大的难度。而且,协议还必须能够经受所有匪夷所思的攻击,这使得SSL/TLS协议变得异常复杂。 二、历史 互联网加密通信协议的历史,几乎与互联网一样长。 1994年,NetScape公司设计了SSL协议(Secure Sockets Layer)的1.0版,但是未发布。 1995年,NetScape公司发布SSL 2.0版,很快发现有严重漏洞。 1996年,SSL 3.0版问世,得到大规模应用。 1999年

metrics-server TLS

空扰寡人 提交于 2020-04-05 18:51:56
下载metrics-server 准备证书 cat << EOF | tee /opt/kubernetes/ca_json/metrics-server.json { "CN": "metrics-server", "key": { "algo": "rsa", "size": 2048 }, "names": [ { "C": "CN", "ST": "Shanghai", "L": "Shanghai", "O": "k8s", "OU": "System" } ] } EOF 生成证书 cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes metrics-server.json | cfssljson -bare ./metrics-server kube-apiserver需添加的参数 --proxy-client-cert-file=/opt/kubernetes/ssl/metrics-server.pem --proxy-client-key-file=/opt/kubernetes/ssl/metrics-server-key.pem --requestheader-allowed-names=aggregator --requestheader

k8s高可用二进制部署使用Calico网络方案

好久不见. 提交于 2020-03-31 10:28:07
服务器规划 192.168.30.24 k8s-master1 192.168.30.25 k8s-master2 192.168.30.26 k8s-node1 192.168.30.30 k8s-node2 192.168.30.31 k8s-node3 192.168.30.32 k8s-slb1 192.168.30.33 k8s-slb2 生产环境高可用集群 规格:配置3/5/7个master, 3/5/7etcd集群,3/5/7个nginx对api做负载均衡,1个slb充当HA来访问k8s的API 参考阿里云配置: 节点规模 Master规格 1-5个节点 4C8G(不建议2C4G) 6-20个节点 4C16G 21-100个节点 8C32G 100-200个节点 16C64G 具体部署步骤 一、系统初始化 二、颁发ETCD证书 三、部署ETCD集群 四、颁发K8S相关证书 五、部署Master组件 六、部署Node组件 七、部署CNI插件(Calico插件) 八、部署Coredns插件 九、扩容Node节点 十、缩容Node节点 十一、部署高可用HA 一、系统初始化 关闭防火墙: # systemctl stop firewalld # systemctl disable firewalld 关闭selinux: # setenforce 0 # 临时 # sed

Centos7部署open*** (tun)

为君一笑 提交于 2020-03-26 22:52:38
添加EPEL源 yum install epel-release -y 替换阿里的源 sed -e 's,^#baseurl,baseurl,g' \ -e 's,^metalink,#metalink,g' \ -e 's,^mirrorlist=,#mirrorlist=,g' \ -e 's,http://download.fedoraproject.org/pub,https://mirrors.aliyun.com,g' \ -i /etc/yum.repos.d/epel.repo 更新软件 yum makecache yum update -y 修改sysctl参数 cat > /etc/sysctl.d/99-net.conf <<EOF # 二层的网桥在转发包时也会被iptables的FORWARD规则所过滤 net.bridge.bridge-nf-call-arptables=1 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 # 关闭严格校验数据包的反向路径,默认值1 net.ipv4.conf.default.rp_filter=0 net.ipv4.conf.all.rp_filter=0 # 设置 conntrack 的上限 net.netfilter

[笔记]web 性能权威指南

依然范特西╮ 提交于 2020-03-23 08:23:19
chaper1. 速度包括延迟和带宽 延迟:传播延迟,传输延迟,处理延迟,排队延迟 排队延迟:当今本地路由器缓冲区很大,导致tcp拥塞预防机制失效,CODEL主动队列管理算法,linux 内核3.5,解决该问题。 传播延迟:当前光纤传播的信息的速度约为20万公里每秒,主要是由一个介质折射率。 "最后一公里问题":用户接入点到运营商的主干路由器,FCC报告光纤入户的平均达到18ms 本地接入速度测试: http://www.speedtest.net/ chaper2 tcp三次握手加速方式: 长连接 tcp快速打开,tcp fast open;google的研究表明:TFO平均降低http事务网络延迟15%,页面加载时间10%以上,linux 内核3.7支持TFO. 流量控制: 1.接收窗口,rwnd,每个ack分组携带相应的最新的rwnd大小。 窗口缩放,开始tcp规范的窗口大小字段16位,最大值为65535字节。TCP Window scaling,在三次握手阶段商量,可以将接受窗口提高至1G。 sysctl net.ipv4.tcp_window_scaling sysctl -w net.ipv4.tcp_window_scaling=1 2.慢启动 拥塞窗口大小,cwnd, 最开始为1,RFC 2581调整为4,RFC 6928 拥塞窗口调整为10个TCP段。

SQL Server使用加密连接SSL/TLS (转载)

丶灬走出姿态 提交于 2020-03-20 20:17:39
说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险。在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令。 例如,当您使用以下连接字符串时,就可能存在这种风险: <connectionStrings> <add name="Test" connectionString="Data Source=210.10.20.10,1433; Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;" providerName="System.Data.SqlClient" /> </connectionStrings> 启用SSL/TLS加密连接 大部分数据库服务器都提供支持使用SSL/TLS来加密传输所有数据,您应当尽可能的使用它。在您的连接字符串上加上Encrypt=True即可。如果您的开发环境没有可信证书,加上TrustServerCertificate=True来取消验证证书是否受信。 <connectionStrings> <add name="Test" connectionString="Data Source=210.10.20.10,1433; Initial Catalog=myDataBase;User ID=myUsername

图解SSL/TLS协议

拟墨画扇 提交于 2020-03-20 14:03:26
我看了CloudFlare的说明( 这里 和 这里 ),突然意识到这是绝好的例子,可以用来说明SSL/TLS协议的运行机制。它配有插图,很容易看懂。 下面,我就用这些图片作为例子,配合我半年前写的 《SSL/TLS协议运行机制的概述》 ,来解释SSL协议。 一、SSL协议的握手过程 开始加密通信之前,客户端和服务器首先必须建立连接和交换参数,这个过程叫做握手(handshake)。 假定客户端叫做爱丽丝,服务器叫做鲍勃,整个握手过程可以用下图说明(点击看大图)。 握手阶段分成五步。 第一步,爱丽丝给出协议版本号、一个客户端生成的随机数(Client random),以及客户端支持的加密方法。 第二步,鲍勃确认双方使用的加密方法,并给出数字证书、以及一个服务器生成的随机数(Server random)。 第三步,爱丽丝确认数字证书有效,然后生成一个新的随机数(Premaster secret),并使用数字证书中的公钥,加密这个随机数,发给鲍勃。 第四步,鲍勃使用自己的私钥,获取爱丽丝发来的随机数(即Premaster secret)。 第五步,爱丽丝和鲍勃根据约定的加密方法,使用前面的三个随机数,生成"对话密钥"(session key),用来加密接下来的整个对话过程。 上面的五步,画成一张图,就是下面这样。 二、私钥的作用 握手阶段有三点需要注意。 (1

Fabric多通道网络实战

别来无恙 提交于 2020-03-17 22:25:45
某厂面试归来,发现自己落伍了!>>> Hyperledger Fabric支持在一组相同的机构之间的多通道部署,每个通道都相当于一个单独的区块链。Fabric的多通道特性不仅可以满足机构之间不同的数据共享需求,同时也可以提高整个Fabric网络的吞吐量。本文将演示如何使用Hyperledger Fabric 1.4.3搭建一个多通道的区块链网络、部署并访问链码。 1、Hyperledger Fabric多通道网络实验环境概述 我们将构造一个包含3个机构的Hyperledger Fabric网络:Org1、Org2和Org3,每个机构中包含一个节点Peer0。网络包含两个通道:由Org1、Org2和Org3组成的ChannelAll,以及由Org1和Org2组成的Channel12,因此这个Fabric网络是多通道的配置。在这两个Fabric通道上我们将部署同样的链码,即Fabrc-Samples中提供的Simple Asset链码: 2、Hyperledger Fabric多通道网络实验环境搭建 Step 1:在Hyperledger官方提供的fabric-samples目录下克隆本教程提供的示例代码: cd fabric-samples git clone https://github.com/kctam/3org2ch_143.git cd 3org2ch_143 Step 2

看完这篇 HTTPS,和面试官扯皮就没问题了

泄露秘密 提交于 2020-03-17 13:37:24
下面我们来一起学习一下 HTTPS ,首先问你一个问题,为什么有了 HTTP 之后,还需要有 HTTPS ?我突然有个想法,为什么我们面试的时候需要回答 标准答案 呢?为什么我们不说出我们自己的想法和见解,却要记住一些所谓的标准回答呢? 技术还有正确与否吗 ? HTTPS 为什么会出现 一个新技术的出现必定是为了解决某种问题的,那么 HTTPS 解决了 HTTP 的什么问题呢? HTTPS 解决了什么问题 一个简单的回答可能会是 HTTP 它不安全。由于 HTTP 天生明文传输的特性,在 HTTP 的传输过程中,任何人都有可能从中截获、修改或者伪造请求发送,所以可以认为 HTTP 是不安全的;在 HTTP 的传输过程中不会验证通信方的身份,因此 HTTP 信息交换的双方可能会遭到伪装,也就是 没有用户验证 ;在 HTTP 的传输过程中,接收方和发送方并 不会验证报文的完整性 ,综上,为了结局上述问题,HTTPS 应用而生。 什么是 HTTPS 你还记得 HTTP 是怎么定义的吗?HTTP 是一种 超文本传输协议(Hypertext Transfer Protocol) 协议, 它 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范 ,那么我们看一下 HTTPS 是如何定义的 HTTPS 的全称是 Hypertext Transfer