zoukankan      html  css  js  c++  java
  • 配置httpd支持https

    1、首先为192.168.108.159创建私有CA

    #cd /etc/pki/CA

    # (umask 077;openssl genrsa -out private/cakey.pem 2048)

    #ls private/

    #touch index.txt

    #echo 01 > serial

    2、在服务器上创建自签证书

    #openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 7300

    3、在web服务器上生成证书签署请求,在192.168.108.160虚拟机上

    #cd /etc/httpd   

    #mkdir ssl

    #cd ssl/

    # (umask 077;openssl genrsa -out httpd.key 1024)//生成密钥

    # openssl req -new -key httpd.key -out httpd.csr  //生成证书签署请求

    #scp httpd.csr root@192.168.108.159:/tmp/  //把httpd.csr放到服务器192.168.108.159的tmp目录下

    4、在服务器上为wei服务器CA签证

    #cd /etc/pki/CA

    #openssl ca -in /tmp/httpd.csr -out certs/web1.magedu.com.crt -days 356

    #ls newcerts/  在这个目录下有01.pem

    #ls certs/   

    #scp certs/web1.magedu.com.crt root@192.168.108.160:/etc/httpd/ssl/

    5、接下来开始配置httpd服务可以支持https

    #httpd -M | grep ssl   //查看160主机即httpd服务器是否支持mod_ssl

    #yum install mod_ssl //如果不存在就安装

    #rpm -ql mod_ssl  

    /etc/httpd/conf.d/ssl.conf  //主配置文件
    /usr/lib64/httpd/modules/mod_ssl.so
    /var/cache/mod_ssl
    /var/cache/mod_ssl/scache.dir
    /var/cache/mod_ssl/scache.pag
    /var/cache/mod_ssl/scache.sem

    #cd /etc/httpd/conf.d/

    #cp ssl.conf{,.bak}//在修改配置文件之前应该先做备份

    #vim /etc/httpd/conf.d/ssl.conf

     修改<VirtualHost _default_:443>为<VirtualHost  *:443>

    DocumentRoot "/var/www/html"//需要开启,并对其做响应的修改,比如/vhosts/web1/htdocs
    ServerName www.example.com:443//   服务器名字为web1.magedu.com

    SSLEngine on这一项一定要开启

    修改SSLCertificateFile /etc/pki/tls/certs/localhost.crt为SSLCertificateFile /etc/httpd/ssl/web1.magedu.com.crt//这个文件是当前httpd服务拿来给别的客户机验证的证书文件

    修改SSLCertificateKeyFile /etc/pki/tls/private/localhost.key与上面匹配的私钥文件SSLCertificateKeyFile /etc/httpd/ssl/httpd.key

    不应该验证客户端证书,因为客户端大多都没有证书

    #ss -tnl //查看是否监听了443端口

    测试基于https访问相应的主机;

     # openssl s_client [-connect host:port] [-cert filename] [-CApath directory] [-CAfile filename]

    #openssl s_client  -connect 192.168.108.160:443 -CAfile /etc/pki/CA/cacert.pem

    GET / HTTP/1.1

    Host:web1.magedu.com回车两次,就可以看到请求的页面

  • 相关阅读:
    C#中的委托,匿名方法和Lambda表达式
    模式化窗口问题![window.dialogArguments]
    js动态改变HiddenField值,后台不能获取值的问题
    将DataTable进行分页并生成新的DataTable
    出错提示为:该行已经属于另一个表 的解决方法
    如何在服务器端获得showModalDialog传递的参数
    Synchronized和SyncRoot与 集合类 的同步
    Oracle中数据出现####的问题
    如何防止多次提交按钮造成重复提交
    Invoke and BeginInvoke
  • 原文地址:https://www.cnblogs.com/hanshanxiaoheshang/p/9142521.html
Copyright © 2011-2022 走看看