• 在linux下的apache配置https协议,开启ssl连接


    环境:linux

    配置https协议,需要2大步骤:

    一、生成服务器证书

      1、安装openssl软件

        yum install -y openssl mod_ssl

      2、生成服务器私匙,生成server.key文件

        openssl genrsa -des3 -out server.key 1024

      3、填写证书信息,生成server.csr文件

        openssl req -new -key server.key -out server.csr

      4、为证书签证,生成server.crt文件

        openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.crt

      5、移动生成的server.key文件,server.crt文件移到Apache的conf目录下

    二、修改配置文件

      1、修改httpd.conf文件,去掉下面两行代码的注释

        LoadModule ssl_module modules/mod_ssl.so
        Include conf/extra/httpd-ssl.conf

      2、修改httpd-ssl.conf文件,增加下面这些代码

        <VirtualHost 192.169.20.1:443>                               ------配置虚拟主机
                DocumentRoot /apache/htdoc                            ------要与httpd.conf的DocumentRoot的文件路一样
                ServerName www.xxoo.com                              -------在浏览器里输入的域名
                SSLEngine on                  -------开启ssl连接
                SSLCertificateFile /etc/httpd/conf/server.crt     ------与第一大步骤的第5小步骤的文件路径对应
                SSLCertificateKeyFile /etc/httpd/conf/server.key    ------与第一大步骤的第5小步骤的文件路径对应
        </VirtualHost>

      3、把httpd-ssl.conf文件中所有的apache的路径替换为当前安装的APACHE的路径(挺重要的)

      4、修改httpd-ssl.conf的代码

        SSLMutex  "/usr/local/Apache2/logs/ssl_mutex"

        改成

        SSLMutex default

    完成以上两个步骤后,重启Apache服务器。这时会要求输入密码(生成server.key时的密码)。最坑的是,密码输入正确了,但apache还是没开启,这个问题可以这样解决:问题解决,照做以下步骤即可:

      cp server.key server.key.tmp

      openssl rsa -in server.key.tmp -out server.key   --------  这时会要求你输入密码,输入生成server.key时的密码时就行

    好了,现在重启apache就不会有输入密码的提示了。(其实,是清空了密码)。现在在浏览器输入:  https://www.xxoo.com。就会出现跟http协议不一样的神奇页面了

  • 相关阅读:
    Asp.Net生成二维码(中间加logo)
    简单的图片上传
    C#读取路径
    Asp.Net读取配置文件
    C#监听服务
    jQuery 遍历--siblings() 方法、each() 方法
    Window 6大内置对象
    MySQL中几个重要的参数
    DNS构建实战(下篇)
    DNS构建实战(上篇)
  • 原文地址:https://www.cnblogs.com/sustudy/p/4184079.html
Copyright © 2020-2023  润新知