简介
SSL证书是一种数字证书,遵守SSL协议,由受信任的数字证书颁发机构(CA)验证服务器身份后颁发。它具有服务器身份验证和数据传输加密的功能,能够确保数据在传输过程中的安全性和完整性。
具体来说,SSL证书在客户端浏览器和Web服务器之间建立一条SSL安全通道,即通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输。这样,可以防止数据信息的泄露,保证了双方传递信息的安全性。用户可以通过服务器证书验证其所访问的网站是否是真实可靠。
此外,SSL证书还提供了一种在网上进行身份验证的方法,类似于日常生活中的司机驾照或身份证,被称为数字签名。数字签名主要用于发送安全电子邮件、访问安全站点、网上招标与投标、网上签约、网上订购、网上公文安全传送、网上办公、网上缴费、网上缴税以及网上购物等安全的网上电子交易活动。
SSL证书根据验证级别不同分成域名型SSL证书、企业型SSL证书、增强型SSL证书三种类型,按照域名数量分成单域名SSL证书、多域名版SSL证书、通配符SSL证书三种类型。安装了SSL证书的网站,在浏览器上会有安全挂锁标识,向客户显示了受保护的状态。
那么SSL证书都有哪些作用呢?
首先,SSL证书使用加密技术对在互联网上传输的数据进行加密,确保数据在传输过程中不被窃取或篡改。这种加密技术使用对称和非对称加密算法,将明文数据转换为密文数据。服务器使用私钥对数据进行加密,而客户端则使用公钥进行解密。这样,即使数据在传输过程中被截取或窃取,也无法被解密,从而保护了数据的安全性。
其次,SSL证书还验证了网站的身份。当用户访问一个使用SSL证书的网站时,浏览器会检查该证书是否由权威的证书颁发机构颁发。如果证书有效,浏览器会显示一个锁形状的图标,并显示网站的名称和证书颁发机构的名称。比如我们肉眼可见的安装了SSL证书的网站在浏览地址栏会显示https前缀和绿色的安全锁,倘若安装的是安全级别最高的EV SSL证书,那么还会显示绿色的企业名,这些都会给用户一种可信赖的感觉,大大的提升了用户体验度和可信度。这样,用户也就可以确认他们正在访问的网站是真实的,从而避免了被假冒网站欺骗的风险。
如果网站不适用SSL证书的话,客户在浏览网站产品时,可能会看到“不安全”的警告,很多客户看到这样的字眼会停止访问网站,为了自身的财产安全更不会在这个网站上进行交易,所以不使用SSL证书会间接导致网站流量下降,随之而来的网站营销额也会逐渐流失。一但企业部署了SSL证书,网站就会有https加密,在验证网站的真实性同时,也树立了企业的品牌形象,增强可信度。
此外,SSL证书还可以防止中间人攻击。部署SSL证书后,HTTPS是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。通过SSL加密层,可以验证服务器身份,并确保数据在传输过程中的安全性和完整性。
最后,SSL证书还可以提高网站的搜索引擎排名。谷歌等搜索引擎已经将SSL证书作为评价网站安全性的一项重要指标。使用SSL证书可以向搜索引擎表明网站是安全的,从而获得更好的搜索排名。
如何部署SSL证书?
将SSL证书安装到服务器上。具体的安装方法可能会因服务器类型和操作系统而有所不同。一般来说,需要将证书文件上传到服务器上,并在服务器上配置相应的证书路径和文件权限。下面我们来介绍几种常见操作系统的安装方式。
2008系统部署:
第一步:
上传到服务器解压出来,证书格式的话是.pfx,.txt文本是证书的密码(后面有用),并且架设好对应网站
第二步:
双击IIS上面服务器证书
第三步:
选择导入
第四步:
导入对应证书,输入证书对应密码
第五步:
对应网站上绑定导入IIS的证书
第六步:
选择https,端口默认443,这样就完成IIS上证书绑定域名了。
如果需要http自动跳转到https的话,需要进行以下操作
右击C:inetpubcusterrzh-CN403.htm打开方式选择记事本
<HTML><HEAD><TITLE>该页必须通过安全通道查看</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=GB2312">
</HEAD><BODY>
<script type="text/javascript">
var url = window.location.href;if (url.indexOf("https") < 0) {url = url.replace("http:", "https:");window.location.replace(url);}
</script>
</BODY></HTML>
第七步:
IIS,SSL设置->把“要求SSL”勾选即可。
centos宝塔部署
第一步:
架设好网站,然后选择SSL证书部署
第二步:
在自己购买证书的机构后台点下载选择查看代码。下图以德迅云安全后台为例
第三步:
证书文件填写在证书(PEM格式),私钥文件填写在密钥(KEY),如果要强制http跳转https的话,选择强制HTTPS
Apache服务器部署
第一步:
解压已下载保存到本地的Apache证书文件。
解压后的文件夹中有3个文件:
密钥文件:以.key为后缀或文件类型。
证书链文件:以.crt为后缀或文件类型。
证书文件:以.crt为后缀或文件类型。
第二步:
在Apache安装目录中新建cert目录,并将解压的Apache证书、证书链文件和密钥文件拷贝到cert目录中。如果需要安装多个证书,需在Apache目录中新建对应数量的cert目录,用于存放不同的证书 。
说明:如果申请证书时选择了手动创建CSR文件,请将手动生成创建的密钥文件拷贝到cert目录中并命名为domain name.key。
第三步:
修改httpd.conf配置文件。
在Apache安装目录下,打开Apache/conf/httpd.conf文件,并找到以下参数,按照下文中注释内容进行配置。
#LoadModule ssl_module modules/mod_ssl.so #删除行首的配置语句注释符号“#”加载mod_ssl.so模块启用SSL服务,Apache默认是不启用该模块的。
#Include conf/extra/httpd-ssl.conf #删除行首的配置语句注释符号“#”。
说明:如果您在httpd.conf文件中没有找到以上配置语句,请确认您的Apache服务器中是否已经安装mod_ssl.so模块。可执行yum install -y mod_ssl命令安装mod_ssl模块。
保存httpd.conf文件并退出。
第四步:
修改httpd-ssl.conf配置文件。
打开Apache/conf/extra/httpd-ssl.conf文件并找到以下参数,按照下文中注释内容进行配置。
说明:根据操作系统的不同,http-ssl.conf文件也可能存放在conf.d/ssl.conf目录中。
<VirtualHost *:443>
ServerName #修改为申请证书时绑定的域名www.dexunyun.com。
DocumentRoot /data/www/hbappserver/publicSSLEngineonSSLProtocolall-SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM # 修改加密套件。
SSLHonorCipherOrderonSSLCertificateFile cert/domainname1_public.crt # 将domainname1_public.crt替换成您证书文件名。
SSLCertificateKeyFile cert/domainname1.key # 将domainname1.key替换成您证书的密钥文件名。
SSLCertificateChainFile cert/domainname1_chain.crt # 将domainname1_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。
</VirtualHost>
#如果证书包含多个域名,复制以上参数,并将ServerName替换成第二个域名。
<VirtualHost *:443>
ServerName #修改为申请证书时绑定的第二个域名www.dexunyun2.com。
DocumentRoot /data/www/hbappserver/publicSSLEngineonSSLProtocolall-SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM # 修改加密套件。
SSLHonorCipherOrderonSSLCertificateFile cert/domainname2_public.crt # 将domainname2替换成您申请证书时的第二个域名。
SSLCertificateKeyFile cert/domainname2.key # 将domainname2替换成您申请证书时的第二个域名。
SSLCertificateChainFile cert/domainname2_chain.crt # 将domainname2替换成您申请证书时的第二个域名;证书链开头如果有#字符,请删除。
</VirtualHost>
说明:需注意您的浏览器版本是否支持SNI功能。如果不支持,多域名证书配置将无法生效。
保存httpd-ssl.conf文件并退出。
第五步:
重启Apache服务器使SSL配置生效。
在Apache的bin目录下执行以下命令:
停止Apache服务。
apachectl -kstop
开启Apache服务。
apachectl -kstart
第六步:
可选:修改httpd.conf文件,设置HTTP请求自动跳转HTTPS。
在httpd.conf文件中的<VirtualHost *:80> </VirtualHost>中间,添加以下重定向代码。
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]
后续操作
证书安装完成后,您可通过登录证书的绑定域名验证该证书是否安装成功。
https://domainname #domainname替换成证书绑定的域名。