nginx配置安装免费证书的方法步骤

来自:网络
时间:2024-09-10
阅读:

1 http和https的区别

HTTP(超文本传输协议)和HTTPS(超文本传输安全协议)都是用于在计算机网络上进行数据传输的协议。它们的主要区别在于安全性方面。

HTTP是一种不加密的协议,数据以明文形式传输,容易被黑客截获并窃取数据。而HTTPS则通过使用SSL/TLS协议进行加密,从而保证了数据在传输过程中的安全性,防止数据被窃取、篡改或伪造。

具体来说,HTTPS在HTTP之上添加了SSL/TLS协议,在客户端和服务器之间传输数据时先进行加密再传输,防止数据被窃听和篡改。而HTTP不具备这种加密功能,数据流经网络时以明文形式传输,容易被黑客窃取和篡改。。

2为啥要安装证书

在HTTPS协议中,为了确保SSL/TLS协议的安全性和可靠性,需要使用数字证书来验证服务器的身份。数字证书是由一家受信任的第三方机构(证书颁发机构或CA)颁发的电子文档,包含了服务器的公钥、证书持有者信息和数字签名等信息。

当客户端发起HTTPS请求时,服务器会将自己的数字证书发给客户端。客户端通过验证数字证书,可以确认服务器的真实身份,并且与服务器建立安全连接。因此,安装证书非常重要,它可以保障HTTPS协议的安全性和可靠性。

在一些情况下,比如在企业内部搭建HTTPS网站时,可以自行颁发数字证书。但是,在公网上发布的HTTPS网站,需要从受信任的第三方证书颁发机构处获取数字证书。这样才能使客户端信任服务器,确保数据传输过程中的安全性和可靠性。

3安装证书的步骤

环境是centos7 

1、安装acme:

curl https://get.acme.sh | sh1·

2、安装socat:

yum install socat

3、添加软链接:

ln -s  /root/.acme.sh/acme.sh /usr/local/bin/acme.sh

4、切换CA机构:(因为原来的机构颁发的证书速度太慢)

acme.sh --set-default-ca --server letsencrypt

5、申请证书:

acme.sh  --issue -d staryh.me --standalone -k ec-256

6、安装证书:

acme.sh --installcert -d staryh.me --ecc  --key-file  /home/ssl/server.key   --fullchain-file  /home/ssl/server.crt   -->  //其中staryh.me换成自己的域名   /home/ssl/server.crt 换成自己安装的路径 不换也可以默认在hone下

7、在nginx里面配置证书:

 修改nginx的默认配置文件 我的是 /etc/nginx/conf/defalut.conf

   listen 443 ssl;
   listen [::]:443 ssl; //指示服务器监听443端口,并启用SSL功能
   ssl_certificate       /home/ssl/server.crt; //指定SSL证书的路径
   ssl_certificate_key   /home/ssl/server.key; //指定SSL证书的密钥文件的路径,用于与证书配对进行加密和解密。
   ssl_session_timeout 1d;
   ssl_session_cache shared:MozSSL:10m; //
   ssl_session_tickets off;
   ssl_protocols         TLSv1.2 TLSv1.3; //指定支持的SSL/TLS协议版本,这里只允许TLSv1.2和TLSv1.3
   ssl_prefer_server_ciphers off;

然后访问自己域名: 

nginx配置安装免费证书的方法步骤

这样就出现了证书了 大概有三个月的时间,如果过期了再重新颁发一次证书就可以了。

返回顶部
顶部