« 上一篇下一篇 »

如何判断服务器部署是否安全,快速部署SSL证书和网站安全检测方法

  对于站长来说,部署SSL证书(http:/ssl.idcspy.net/)来迁移到HTTPS是一个现实和重要的问题,那么,对于Apache系统来说,如何部署SSL证书实现HTTPS协议呢?下面就讲述一下具体的实现方法。

 一、如何判断服务器部署是否安全

现在的网站通常开启SSL已经是标配了,不过,配置好了SSL后,还需要判断一下服务器部署的是否安全,如果没有配置好的话,会带来很多安全隐患。

  SSL/TLS 系列中有六种版本:SSL v2,SSL v3,TLS v1.0,TLS v1.1、TLS v1.2、TLS v1.3:

  SSL v2 是不安全的,不能使用。

  当与 HTTP(POODLE 攻击)一起使用时,SSL v3 是不安全的,当与其他协议一起使用时,SSL v3 是弱的。它也是过时的,不应该被使用。

  TLS v1.0 也是不应该使用的传统协议,但在实践中通常仍然是必需的。其主要弱点(BEAST)在现代浏览器中得到缓解,但其他问题仍然存在。

  TLS v1.1 、v1.2、v1.3 都没有已知的安全问题,应该是网站的主要协议。

  检测SSL安全

  目前,检测SSL安全的网站主要有两个:最常用的是SSLLabs,还有一个是国内企业做的MySSL,检测的评级如果是A,就是合格的,如果为F,就是不合格。

 

  SSL安全配置

  对于Windows Server服务器来说,通过修改注册表可以完成SSL安全配置,此外,还有一个简单的自动配置工具IISCrypto,下载该工具后,使用推荐配置即可完成安全设置,使用起来非常简单。

 二、快速部署SSL证书方法

方法/步骤
  安装好Apache, 并且确认是否安装ssl模块,如果没安装的话,使用yum install mod_ssl openssl来安装ssl模块。

  之后,申请并下载SSL证书文件。通常来说有四个文件,分别是:证书文件ca.pem、证书私钥文件ca.key、证书公钥文件public.pem、证书链文件chain.pem。

  ( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为ca.key;

  ( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:

  #LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)

  #Include conf/extra/httpd-ssl.conf

  ( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:

  # 添加 SSL 协议支持协议,去掉不安全的协议

  SSLProtocol all -SSLv2 -SSLv3

  # 修改加密套件如下

  SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM

  SSLHonorCipherOrder on

  # 证书公钥配置

  SSLCertificateFile cert/public.pem

  # 证书私钥配置

  SSLCertificateKeyFile cert/ca.key

  # 证书链配置,如果该属性开头有 '#'字符,请删除掉

  SSLCertificateChainFile cert/chain.pem

  ( 4 ) 设置虚拟主机

  如果要设置http和https同时生效,那么需要为 http 在端口 80 上设立 VirtualHost,同时为 https 在端口 443 上作类似的设置。在端口 80 上的网站的 VirtualHost 例子如下

  AllowOverride All

  DocumentRoot /var/www/vhosts/yoursite.com/httpdocs

  ServerName yoursite.com

  在端口 443 上增加一个HTTPS网站,需要在文件加入如下内容

  NameVirtualHost *:443

5
  然后再加入一个类似如下的 VirtualHost 记录:

  SSLEngine on

  SSLCertificateFile /etc/pki/tls/certs/ca.crt

  SSLCertificateKeyFile /etc/pki/tls/private/ca.key

  AllowOverride All

  DocumentRoot /var/www/vhosts/yoursite.com/httpsdocs

  ServerName yoursite.com

  最后,使用如下指令重新启动 Apache , 即可实现网站的HTTPS功能。

  /etc/init.d/httpd restart

 

HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版。谷歌已经制定了一项长远的计划,它的最终目标是将所有通过HTTP协议呈现的网页标为“不安全”,