资讯专栏INFORMATION COLUMN

常用的Nginx/Apache引擎服务器配置HTTPS SSL证书示范

call_me_R / 3307人阅读

摘要:昨天我们看到百度发布百度烽火算法升级,提到网站如果被劫持或者拦截可能会降低网站的权重和排名等问题。这次机遇百度文章发布之后,可以看到大家应该还在犹豫的话会新增证书实现访问。第一引擎安装证书在当前网站下服务器配置文件的文件中添加。

昨天我们看到百度发布"百度烽火算法升级",提到网站如果被劫持或者拦截可能会降低网站的权重和排名等问题。这使得我们网站需要使用HTTPS SSL证书来减少被拦截劫持的风险。其实在早些时候我们已经看到很多浏览器都强制要求网站使用SSL证书,如果不使用的会被提示不安全网站URL。这次机遇百度文章发布之后,可以看到大家应该还在犹豫的话会新增SSL证书实现HTTPS访问。

目前,大部分网站都会采用的是NGINX、APACHE等WEB架构,所以我们只需要学习这两个架构技术就可以。这里我们需要注意的,SSL证书的安装分两种, 一种是我们服务器自带的一键安装免费SSL证书。比如let"s encrypt证书是免费的。对于个人网站或者小型网站是可以使用的,而且大部分浏览器也是支持的。但是作为商业网站,我们总不能去使用免费证书吧。所以如果是购买第三方的付费证书,我们需要做的就是配置到服务器中。

在这篇文章中,笔者将会分享在常规的NGINX、APCHE中如何配置SSL证书。其实配置SSL证书不难的,只要我们认真看下过程就可以。如果我们个人网站可以使用免费证书,一般LAMP或者LNMP脚本都是自带免费证书的。具体可以参考:

1、LNMP环境一键安装免费Let"s Encrypt SSL证书

2、宝塔面板不同PHP版本、伪静态设置且一键免费安装Let"s Encrypt

但是,如果我们是购买的付费证书则不可以这么自动化安装SSL,我们需要手工安装。

第一、NGINX WEB引擎安装SSL证书

在当前网站下服务器配置文件的.conf文件中添加。

server {
listen 443;
server_name www.domain.com; #填写绑定证书的域名
ssl on;
ssl_certificate 1_www.domain.com_bundle.crt;
ssl_certificate_key 2_www.domain.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
location / {
root html; #站点目录
index index.html index.htm;
}
}

安装完毕之后,我们需要命令检查是否生效。

nginx -t

检测没有报错重启NGINX。

service nginx reload

重启NGINX后生效。

第二、Apache WEB引擎安装SSL

我们需要先在Apache根目录下 conf/httpd.conf 文件,找到 #LoadModule ssl_module modules/mod_ssl.so 和 #Include conf/extra/httpd-ssl.conf,去掉前面的#号注释;编辑Apache根目录下 conf/extra/httpd-ssl.conf 文件。

修改如下内容:


DocumentRoot "/var/www/html"
ServerName www.domain.com
SSLEngine on
SSLCertificateFile /usr/local/apache/conf/2_www.domain.com_cert.crt
SSLCertificateKeyFile /usr/local/apache/conf/3_www.domain.com.key
SSLCertificateChainFile /usr/local/apache/conf/1_root_bundle.crt

配置完成后,重新启动 Apache 就可以使用HTTPS网址访问。相对来说好像NGINX比较简单一些。

第三、实例参考安装SSL过程

1、购买证书后合并证书

我们在购买证书后会看到.crt和.ca-bundle文件,需要将这2个文件合并到一个文件.crt中。

2、上传证书

我们需要将上面的CRT文件和KEY文件上传到网站服务器目录中,这个具体放到哪里没事。因为我们可以在引用的时候调用对应自己的路径。

3、引用CONF文件路径

listen 443 ssl http2;
  ssl_certificate /usr/local/nginx/conf/ssl/网站域名.crt;
  ssl_certificate_key /usr/local/nginx/conf/ssl/网站域名.key;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
  ssl_prefer_server_ciphers on;
  ssl_session_timeout 10m;
  ssl_session_cache builtin:1000 shared:SSL:10m;
  ssl_buffer_size 1400;
  add_header Strict-Transport-Security max-age=15768000;
  ssl_stapling on;
  ssl_stapling_verify on;

这里我们将配置文件贴到conf文件中,然后检测Nginx,后没有问题就重启生效。

4、收尾工作

如果我们需要强制HTTP跳转至HTTPS,则需要在conf配置文件中设置301强制跳转。

这样,我们才可以完成整个的SSL证书安装,是不是也不是很难?

本文可以参考的文献:

1、申请腾讯云免费DV SSL证书及Apache/Nginx/IIS/Tomcat证书安装

2、手动配置安装SSL证书实现HTTPS加密网址

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/35988.html

相关文章

  • 常用Nginx/Apache引擎务器配置HTTPS SSL证书示范

    摘要:昨天我们看到百度发布百度烽火算法升级,提到网站如果被劫持或者拦截可能会降低网站的权重和排名等问题。这次机遇百度文章发布之后,可以看到大家应该还在犹豫的话会新增证书实现访问。第一引擎安装证书在当前网站下服务器配置文件的文件中添加。 昨天我们看到百度发布百度烽火算法升级,提到网站如果被劫持或者拦截可能会降低网站的权重和排名等问题。这使得我们网站需要使用HTTPS SSL证书来减少被拦截劫持...

    crelaber 评论0 收藏0
  • 给网站配置免费HTTS证书

    摘要:最近看到网上说的网站会优先收录,所以就抽时间记录下配置博客的过程。使用证书作为博客的实现方式。内容格式对应证书内容后缀私钥格式对应证书内容后缀最后点击强制访问开启后用户的请求会强制跳转到协议进行访问。 最近看到网上说 https 的网站 Google 会优先收录,所以就抽时间记录下配置博客的过程。 ACME 使用 LetEncrypt 证书作为博客的 https 实现方式。 acme...

    Soarkey 评论0 收藏0
  • 使用 Let's Encrypt 证书部署 HTTPS

    摘要:为了推广协议,电子前哨基金会成立了,提供免费证书。部署,包含申请域名部署应用,并开启服务。安装使用获取证书对于,使用的插件获取。 为了推广HTTPS协议,电子前哨基金会EFF成立了 Lets Encrypt,提供免费证书。 Lets Encrypt一个于2015年三季度推出的数字证书认证机构,将通过旨在消除当前手动创建和安装证书的复杂过程的自动化流程,为安全网站提供免费的SSL/TLS...

    he_xd 评论0 收藏0
  • 使用 acme.sh 制作 HTTPS 证书

    摘要:实现了协议,可以从生成免费的证书。更推荐使用方式来验证,简单。经过一系列的操作,如果成功了,会在生成对应的证书。证书到或者其他服务不要直接复制证书。更新证书目前证书在天以后会自动更新,你无需任何操作。原文阅读使用制作证书 acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书。 安装 acme.sh 生成证书 copy 证书到 nginx/apach...

    newsning 评论0 收藏0

发表评论

0条评论

call_me_R

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<