云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

虚拟主机_中间件公司_优惠

小七 141 0

介绍CFSSL 1.2

继续我们对高质量开源软件的承诺,我们很高兴宣布我们的TLS/PKI瑞士军刀CFSSL的1.2版本。自从我们在2014年开放了CFSSL项目以来,我们在这里没有写太多关于CFSSL的内容,所以我们想我们会提供一个更新。在过去的20个月里,我们添加了大量优秀的特性,CFSSL吸引了活跃的用户和贡献者社区。用户范围从大型SaaS提供商(Heroku)到游戏公司(Riot Games)和最新的证书颁发机构(让我们加密)。对于他们和CloudFlare来说,CFSSL已经成为自动化证书和TLS配置的核心工具。CFSSL增加了对配置扫描、通过传输包进行自动配置、撤销、证书透明性和PKCS#11的支持,CFSSL现在更强大了。我们也很高兴宣布CFSSL的新家:cfssl.org网站. 在那里,您可以试用CFSSL的用户界面,下载二进制文件,并测试它的一些特性。动机许可:公共领域这张2013年美国国家安全局(NSA)的幻灯片描述了情报机构如何从谷歌内部网络收集数据,这让许多科技公司大开眼界,也令人震惊。攻击者可以读取服务之间传递的消息这一想法在技术上并不具有突破性,但它确实揭示了许多分布式系统设计中存在的安全缺陷。许多公司只将数据加密到数据中心的边界,而不是内部。幻灯片显示,私有物理网络正在被颠覆,以提取通过它们的数据。而且,仅仅因为网络有一个安全边界,并不意味着数据可以在不加密的应用程序之间安全地发送。简而言之:把你自己的关系网当作敌对的。这种心态帮助形成了CloudFlare保护内部服务的理念,并形成了一个简单的规则:服务之间应该只使用加密和相互认证的协议进行通信。考虑到这一点,我们开始解决如何管理这些服务的加密密钥这一难题。为了解决服务到服务加密的问题,我们使用CFSSL构建了自己的公钥基础设施。我们在这篇文章中介绍的许多新特性都是源于我们努力使这个系统健壮。我们还努力使用符合标准和可互操作的技术。通过合并对证书透明性、OSCP和CRL的支持,公共互联网使用的标准现在可以在您的私有基础设施中使用。现在,来看看新功能。扫描现在,SSL-CFTLS扫描程序具有完整的功能。仅仅因为服务器使用加密,并不意味着它是安全的。TLS中存在一系列只影响某些配置的漏洞。要使服务器及其访问者免受几乎每月一次的新攻击,您需要选择正确的配置。保持安全需要针对最新漏洞测试配置,并针对新威胁更新配置。SSL/TLS中的漏洞历史记录测试网站TLS配置的黄金标准是Ivan Ristić的SSL实验室。它为您的站点配置提供了一个简单的字母级别(顺便说一句,使用CloudFlare的站点将获得a,如果您启用HSTS,则获得a+)。SSL实验室的缺点是它只在公共网站上工作:不能将其用于内部服务。在CloudFlare,我们需要一种简单的方法来检查我们服务的配置以及客户的来源(通常不公开访问)。为了解决这个问题,CloudFlare向CFSSL添加了扫描TLS端点的功能,以评估其配置的安全性。通过它,我们可以检查内部服务的配置和受保护的客户来源,以了解以下配置问题:IPv4/IPv6连接证书有效性(过期、信任链、主机名等)支持的密码套件和算法续会吊销的证书每次扫描都提供"好"或"坏"的等级。CFSSL扫描还可以用于扫描整个IP范围或主机列表。它可以用作CLI或API驱动的服务器。使用CLI是一个简单的命令:$cfssl扫描cloudflare.com网站{"连通性":{"DNSLookup":{"grade":"好","输出":["198.41.215.162","198.41.214.162","2400:cb00:2048:1::c629:d6a2","2400:cb00:2048:1::c629:d7a2"]},"TCPDial":{"grade":"好"},"TLSDial":{"grade":"好"}},"PKI":{"链过期":{"grade":"好","输出":"2016-11-30T23:59:59Z"},"链验证":{"grade":"警告","输出":["COMODO ECC扩展验证安全服务器CA的证书有效期太长"]},"多个端口":{"grade":"好"}},"TLSHandshake":{"CertsByCiphers":{"grade":"好","输出":{"TLS_ECDHE_RSA_3DES_EDE_CBC_SHA":"SHA256WithRSA","TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA":"SHA256WithRSA","TLS_ECDHE_RSA_AES_128_CBC_SHA256":"SHA256WithRSA","TLS_ECDHE_RSA_AES_128_GCM_SHA256":"SHA256WithRSA","TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA":"SHA256WithRSA","TLS_ECDHE_RSA_AES_256_CBC_SHA384":"SHA256WithRSA","TLS_ECDHE_RSA_AES_256_GCM_SHA384":"SHA256WithRSA","TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256":"SHA256WithRSA","TLS_RSA_WITH_3DES_EDE_CBC_SHA":"SHA256WithRSA","TLS_RSA_WITH_AES_128_CBC_SHA":"SHA256WithRSA","TLS_RSA_WITH_AES_128_CBC_SHA256":"SHA256WithRSA","TLS_RSA_WITH_AES_128_GCM_SHA256":"SHA256WithRSA","TLS_RSA_WITH_AES_256_CBC_SHA":"SHA256WithRSA","TLS_RSA_WITH_AES_256_CBC_SHA256":"SHA256WithRSA","TLS_RSA_WITH_AES_256_GCM_SHA384":"SHA256WithRSA"}}}}CFSSL扫描也可以作为新的CFSSL UI的一部分访问。运输包装安全缺省是安全工程中一个重要的设计模式。开发人员想要编写安全的软件,而且并不总是安全专家,更不用说加密专家了。部署使用TLS的应用程序最棘手的两个部分是:配置密钥管理简单性是授权开发人员在其服务中使用加密的关键。我们创建了CFSSL传输包,使这两个任务对我们的Go开发人员来说很容易。Transport是一个Go库,它接受常规HTTP或TCP连接,并透明地将它们转换为加密连接。Transport处理所有的粘滞点,这样开发人员就不必这样做了。这包括创建一个私钥,使用cfsslca为其获取证书,在证书过期之前更新证书,以及选择正确的加密参数。如果你在Go中编写一个服务,你就不再需要知道PKI是如何工作的。使用CFSSL CA颁发证书传输不仅处理设置和旋转证书,还自动检查以确保服务所连接的服务使用的是有效的证书,包括检查吊销(稍后将详细介绍)。使用CFSSL CA检查OCSP内部CA可用于在服务之间设置粗粒度授权。例如,如果您同时拥有一个API服务器和一个数据库,那么您可以为它们分别设置一个专用的CA。在下面的示例中,API服务器CA为橙色,DB CA为红色。然后可以将数据库配置为只信任来自API服务器的连接,反之亦然。这种类型的设置可以为应用程序提供基线级别的授权强制。传输包允许您自动设置这些相互验证的连接。这种类型的设置已经在以前的博客文章中讨论过了。一旦cfsslca(或多根CA)启动并运行,只需几行代码就可以在Go应用程序中开始使用TLS。交换你的标准网络拨号或者net.Listen/接受与传送。拨号以及传输。侦听/接受.在此之前:连接,错误:=网络拨号("tcp",地址)如果出错!等于零{//处理错误}After(conf变量中存储的配置文件位置):var id=新(核心。身份)数据,错误:=ioutil.ReadFile文件(形态)如果出错!等于零{//处理错误}错误=json.json解组(数据,id)如果出错!等于零{//处理错误}//到期前5分钟更新tr,错误:=运输。新的(5*时间。分钟,id)如果出错!等于零{//处理错误}连接,错误:=传送。拨号(地址:tr)如果出错!等于零{//处理错误}您可以从Github的一些示例开始使用传输包:https://github.com/cloudflare/cfssl/tree/master/transport/example撤销和PostgreSQL支持CC Creative Commons属性共享相似3.0未导入CFSSL的一个优点是,您可以轻松地将其放入基础设施中并拥有证书颁发机构。运行PKI的风险之一是基础设施受损。如果证书的私钥材料落入坏人之手,则需要有机制使系统的其他部分知道不再信任该证书。要知道哪些证书是可信的,第一步是知道已经颁发了哪些证书。为了解决这个问题,我们添加了在持久数据库中跟踪哪些证书已颁发以及哪些证书已被吊销的功能。我们是PostgreSQL的忠实拥趸,因此我们在PostgreSQL中为CFSSL构建了一个数据库后端,但其他后端如MySQL正在开发中。现在,您可以设置CFSSL来使用证书数据库,只需很少的工作,我们利用这种集成来创建一个自动吊销系统。表示证书不再受信任的两种标准机制是证书吊销列表(CRL)和联机证书状态协议(OCSP)。CFSSL现在完全支持这两种机制。CRL只是被吊销证书序列号的列表。它覆盖由CA颁发的所有尚未过期的证书,并由CA的私钥进行数字签名。当客户机获得证书时,它可以简单地查看这个列表来检查证书是否已被吊销。如果有很多ce文件,CRL文件会增长很多