站点图标 Linux-技术共享

什么是SSL证书?安装SSL证书有哪些优势?

您可能已经注意到,在过去几年中,您最喜欢的许多网站已从 HTTP 地址转移到 HTTPS。 HTTP->HTTPS只增加一个"S"字母,为网站和平台增加了巨大的价值和安全性。 拥有HTTPS 站点不仅会使您的企业更受访问者信赖,而且它在搜索中的排名也会更高。

什么是SSL证书?

 

SSL 证书可验证您网站的身份,并对在您的客户浏览器与您的网站之间传输的信息进行加密。 这可以防止网络犯罪分子窥探您与客户之间的互动。

SSL 证书可确保您的网站安全; 客户可以确保他们在安全页面上输入的信息是私密的,不会被网络犯罪分子看到。

SSL证书的重要性有哪些?

 

 

在线用户更关心自己的信息安全和隐私。 SSL 在 Web 安全方面发挥着重要作用,因为它使用加密技术在浏览器和服务器之间创建了安全隧道。 它激励您的客户充满信心地完成交易。

 

HTTPS与HTTP有哪些区别?

 

颁发数字证书并安装在服务器上,这会为不安全的 HTTP URL 添加额外的“S”。 HTTPS 意味着网站是安全的,可以安全地进行在线交易。 它是一种安全协议,可保护用户浏览器和服务器之间在网站上共享的信息。

要创建启用 HTTPS 的站点,您必须在 Web 服务器上安装 SSL 证书。 SSL 安全适用于 HTTPS 而不是不安全的 HTTP。 建议购买 SSL 证书,将您的站点从不安全的 HTTP 协议切换到安全的 HTTPS 协议。

SSL 证书有哪些类型?

无论您选择廉价的 DV SSL 还是昂贵的 OV 或 EV 证书,所有证书都为您的网站提供相同级别的安全性。 验证流程之间的唯一区别是为客户增加更多信任。

当下的互联网,包括网站、APP、小程序、API接口等都被要求HTTPS协议加密!同时,浏览器厂家对于依旧使用的http的网站直接标注为不安全网页!这会导致用户对网站的不信任,导致用户的流失。所以安装证书还是很有必要的,认证级别越高、覆盖范围越广的证书,价格越贵。今天给大家推荐一个免费的HTTPS证书 – Let's Encrypt,非常适合个人网站、以及个人博客。

安装Let’s Encrypt证书

获取certbot-auto

下载certbot-auto
wget https://dl.eff.org/certbot-auto

授权
chmod a+x certbot-auto

申请证书

关闭web服务器

生成证书前需要暂时关闭web服务器

service nginx stop
或
./nginx -s stop

注:Certbot 会启动一个临时服务器来完成验证(会占用80端口或443端口,因此需要暂时关闭 Web 服务器)

申请证书

常规申请

./certbot-auto certonly

快速申请

./certbot-auto certonly --standalone --email xxx@xxx.com --agree-tos -d xxx.com -d www.xxx.com

注:

--email 后面跟证书申请人的邮箱

-d 后面跟域名,多个域名请用多个-d,参上

配置证书

Let’s Encrypt的证书链文件和私钥文件默认是在/etc/letsencrypt/live目录下,并且按照申请的域名进行分类。

Nginx中配置SSL证书的配置文件参考如下:

server {
    listen  443 ssl;
    server_name xxx.com;
    location / {
        # ....
    }
    ssl_certificate /etc/letsencrypt/live/xxx.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/xxx.com/privkey.pem;
}
server {
    listen  80;
    server_name xxx.com;
     location / {
                # ...
        }
      #如果需要把http强制转换为https,需要配置以下内容
      if ($host = xxx.com) {
          return 301 https://$host$request_uri;
      } 
}

配置证书自动续期

Let’s Encrypt证书的有效期为3个月,手动续期太麻烦,所以可配置自动续期的定时任务。

操作linux系统自带的定时任务
sudo crontab -e

直接配置如下:
以下是每月的1号凌晨1点执行
0 1 1 * * /home/application/certbot-auto renew --renew-hook "sudo nginx -s reload"

查看是否配置成功
sudo crontab -l
退出移动版