您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 纺织服装 > https那些你知道和不知道的事儿剖析
HTTPS那些你知道的和你不知道的事儿演讲人:酸酸哥什么是HTTPS在说HTTPS之前先说说什么是HTTP,HTTP(超文本传输协议)就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(SecureSocketsLayer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS(超文本传输安全协议)。https是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定https使用的默认端口是443.https是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSLHTTPS的工作原理HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL中使用了非对称加密,对称加密以及HASH算法SSL的握手过程1.浏览器将自己支持的一套加密规则发送给网站。2.网站从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给浏览器。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。获得网站证书之后浏览器要做以下工作:a)验证证书的合法性(颁发证书的机构是否合法,证书中包含的网站地址是否与正在访问的地址一致等),如果证书受信任,则浏览器栏里面会显示一个小锁头,否则会给出证书不受信的提示。b)如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码,并用证书中提供的公钥加密。c)使用约定好的HASH计算握手消息,并使用生成的随机数对消息进行加密,最后将之前生成的所有信息发送给网站。网站接收浏览器发来的数据之后要做以下的操作:a)使用自己的私钥将信息解密取出密码,使用密码解密浏览器发来的握手消息,并验证HASH是否与浏览器发来的一致。b)使用密码加密一段握手消息,发送给浏览器。浏览器解密并计算握手消息的HASH,如果与服务端发来的HASH一致,此时握手过程结束,之后所有的通信数据将由之前浏览器生成的随机密码并利用对称加密算法进行加密搭建HTTPS服务/$PATH/nginx-1.0.6/sbin/nginx-V查看nginx有没有装http_ssl_module模块,如果没有装那么需要装一个该模块apt-getinstallopenssl要设置安全服务器,使用公共钥创建一对公私钥对。大多数情况下,发送证书请求(包括自己的公钥),你的公司证明材料以及费用到一个证书颁发机构(CA).CA验证证书请求及您的身份,然后将证书返回给您的安全服务器。但是内网实现一个服务器端和客户端传输内容的加密,可以自己给自己颁发证书,只需要忽略掉浏览器不信任的警报即可!cd/$PATH/nginx/conf/生成SSL证书[root@vmssl]#opensslgenrsa-des3-outserver.key1024Enterpassphraseforserver.key:提示输入密码,此密码用于加密key文件.以后每当需读取此key文件都需输入此密码Verifying-Enterpassphraseforserver.key:[root@vmssl]#lsserver.key一般情况下,制作证书要经过几个步骤,如上图所示。首先用opensslgenrsa生成一个私钥,然后用opensslreq生成一个签署请求,最后把请求交给CA,CA签署后就成为该CA认证的证书了。如果在第二步请求时加上-x509参数,那么就直接生成一个self-signed的证书,即自己充当CA认证自己。opensslgenrsa-des3-outserver.key1024opensslreq-new-keyserver.key-outserver.csrcpserver.keyserver.key.orgopensslrsa-inserver.key.org-outserver.keyopensslx509-req-days365-inserver.csr-signkeyserver.key-outserver.crt配置nginxserver{server_nameYOUR_DOMAINNAME_HERE;listen443;sslon;ssl_certificate/usr/local/nginx/conf/server.crt;ssl_certificate_key/usr/local/nginx/conf/server.key;}OK,完成了。但这样证书是不被信任的,自己玩玩还行,要被信任请看下面。受浏览器信任的StartSSL免费SSL证书StartSSL(网址:,公司名:StartCom)是一家CA机构,它的根证书很久之前就被一些具有开源背景的浏览器支持(Firefox浏览器、谷歌Chrome浏览器、苹果Safari浏览器等)。StartSSL竟然搞定了微软:微软在升级补丁中,更新了通过Windows根证书认证程序(WindowsRootCertificateProgram)的厂商清单,并首次将StartCom公司列入了该认证清单,这是微软首次将提供免费数字验证技术的厂商加入根证书认证列表中,现在,在Windows7或安装了升级补丁的WindowsVista或WindowsXP操作系统中,系统会完全信任由StartCom这类免费数字认证机构认证的数字证书,从而使StartSSL也得到了IE浏览器的支持。注册成为StartSSL()用户,并通过邮件验证后,就可以申请免费的可信任的SSL证书了。HiXXXX,CongratulationsonyournewStartSSL™account!Thingsyoushouldknowbeforeproceeding:Duringenrollmentaclientcertificatehasbeeninstalledintoyourbrowserforauthenticationpurpose.Thiscertificateallowsyoutosecurelyaccessyouraccountinthefuture.Makesureto*backup*thiscertificateincludingtheprivatekeytoanexternalmedia!Failingtodosomayresultinthelossofyouraccount.Seealso=25#4formoreinformationabouthowtobackupyourclientcertificates.EventhoughStartSSL™providescertificatesgenerallyfreeofcharge,revocationsthereofmaycarryahandlingfee.Takegreatcareofyourprivatekeys,saveandbackupallfilesallthetime!TakeaminuteofyourtimeandvisittheToolBoxsectionofyourcontrolpanel,whichprovidesyouwithmanytoolsandutilities.Theymighthelpyouduringthevarioustasksofvalidation,creationandinstallationofyourcertificates.ThankyouforchoosingStartSSL™!First,usetheStartSSL™ControlPaneltocreateaprivatekeyandcertificateandtransferthemtoyourserver.Thenexecutethefollowingsteps(ifyouuseaclass2certificatereplaceclass1byclass2intheinstructionsbelow):Decrypttheprivatekeybyusingthepasswordyouenteredwhenyoucreatedyourkey:opensslrsa-inssl.key-out/etc/nginx/conf/ssl.keyAlternativelyyoucanalsousetheToolBoxdecryptiontoolofyourStartSSL™account.Protectyourkeyfrompryingeyes:chmod600/etc/nginx/conf/ssl.keyFetchtheRootCAandClass1IntermediateServerCAcertificates:wget://:catssl.crtsub.class1.server.ca.pemca.pem/etc/nginx/conf/ssl-unified.crtConfigureyournginxservertousethenewkeyandcertificate(intheglobalsettingsoraserversection):sslon;ssl_certificate/etc/nginx/conf/ssl-unified.crt;ssl_certificate_key/etc/nginx/conf/ssl.key;Tellnginxtoreloaditsconfiguration:killall-HUPnginx谢谢大家:)分享拓宽见识,人人为我,我为人人–酸酸哥–2014-11-06
本文标题:https那些你知道和不知道的事儿剖析
链接地址:https://www.777doc.com/doc-3654011 .html