服务器安装ssl证书

·  阅读 75

今天在阿里云客服打电话说可以申请免费的ssl证书,趁着在家休息就给服务器装了安装了一下,在安装之前我们先了解一下ssl证书(部分图片没有放出来,详细请参考www.xiaoxiaohong.cn/2022/01/14/…

什么是ssl证书?

ssl证书是一种资料加密协议,我理解为类似我们的驾驶证,只不过这个证书是安装在服务器上的,可以在互联网上证明自己的身份,有了ssl证书之后,服务器会通过这个证书来告诉用户,这个服务器是值得信赖的。

  • ssl证书可以保证数据传输过程中的完整性。

  • 可以将加密的文件资料安全的送达目的地。

  • 通过ssl证书里的公钥加密资料传送到服务器,服务器再用私钥来解密证明自己的身份。

    没有ssl证书就会显示不安全的服务器链接,在浏览器里我们最容易见到的就是

所有很有必要对服务器安装ssl证书。

申请ssl证书

以我的阿里云服务器为例,进入工作台搜索ssl证书,右侧:

  • 数字证书管理服务>ssl证书>免费证书>立即购买,进入购买界面,如下图可以免费购买20个证书。

  • 创建证书

  • 在菜单下方点击证书申请

  • 填写申请,输入域名信息、手机号等等

  • 验证,提交审核,大概三四个小时之内就会审核通过。审核通过之后,我们点击下载,根据自己的服务器下载对应的证书,以我的nginx为例

  • 服务器安装ftp服务-vsftpd

     yum install -y vsftpd
    复制代码
  • 2.修改配置文件

     vim /etc/vsftpd/vsftpd.conf
     ​
     anonymous_enable=No     #禁止匿名用户登录
    复制代码
  • 下载到本地之后,我们需要通过Filezilla软件来连接到服务器,然后上传ssl证书,打开服务器所在的目录(右边),然后在我们本机上(右边)找到刚才下载的包,双击即可

    部署ssl证书

    1. 找到刚才文件上传的地方

       cd /home/chenxiaohong
       ll
       unzip 文件名 
      复制代码
    2. 解压之后会有两个文件一个是~.key结尾的一个是~.pem结尾的

    3. 分别将这两个文件copy到/etc/ssl目录下,任何目录都可以,自己知道即可方

       cp ~.pem /etc/ssl/
       cp ~.key /etc/ssl/
      复制代码
    4. 进入ssl目录下,将~.pem修改为~.crt

       cd /etc/ssl/
       mv ~.pem ~.crt 
      复制代码
    5. 打开nginx配置文件进行配置

       vim /etc/nginx/nginx.conf
      复制代码
    6. 这是我的配置,将~.crt和~.key改为自己的目录即可,将location中root改为自己站点的目录,同时指定网站首页

       server {
                  listen       443 ssl;
       ​
          #        listen       [::]:443 ssl http2 default_server;
       ​
                  server_name  xiaoxiaohong.cn;
                  root         /home/hexo;
              
                  ssl_certificate "/etc/ssl/7094406_www.xiaoxiaohong.cn.crt";
                  ssl_certificate_key "/etc/ssl/7094406_www.xiaoxiaohong.cn.key";
                  ssl_session_cache shared:SSL:1m;
                  ssl_session_timeout  10m;
                  ssl_ciphers PROFILE=SYSTEM;
                  ssl_prefer_server_ciphers on;
       ​
          #        # Load configuration files for the default server block.
       ​
                  include /etc/nginx/default.d/*.conf;
              
                  location / {
                  root /home/hexo;
                  index index.html;
                  }
      复制代码
    7. 通过nginx -t 命令来查看是否配置正确,正确之后通过 systemctl restart nginx.service 命令重启nginx服务器。

    8. 这时候通过https方式访问域名一般是不会打开站点的,阿里云为了安全,在工作台做了限制,我们需要通过修改设置防火墙来通过。

    9. 设置完成后,还需要到服务器上查看防火墙服务的开放端口有没有443

       firewall-cmd --zone=public --list-ports #看开放了哪些端口
       firewall-cmd --zone=public --add-port=443/tcp --permanent #没有则将443添加进去
       systemctl restart firewalld #重启防火墙服务
      复制代码
    10. 再次访问https开头的域名即可打开~

分类:
开发工具
标签:
收藏成功!
已添加到「」, 点击更改