HTTPS基本原則
CA認証センター(/発行された証明書を失効さ) / \ \ CA認証局(CA公開鍵) / WEBのCA証明書の要求で、\ \を送る / 証明書の\ \の クライアント <デジタル証明書-------- ------ WEB
(CA秘密鍵(署名))、WEBアイデンティティ、WEB公開鍵)
1台の.webサーバ、非対称暗号鍵ペア(公開ウェブ、ウェブプライベート)を生成する
2 証明書要求ウェブサーバ.webサーバを生成するために、ウェブのウェブ+パブリックアイデンティティ情報を使用して、CAにサーバ証明書要求
。3 、CA WebサーバーのCAの秘密鍵証明書を使用してサーバーは、Webサーバーのデジタル証明書を取得するためにデジタル署名を要求し、Webサーバ、Webサーバのデジタル証明書を授与されます。
4 .clientウェブデジタル証明書をダウンロードし、Webサーバ、要求https接続にアクセスする
5 (上位CAによって発行されたCA + CA公開鍵の識別情報は、また、自己署名発行できます).clientダウンロードCAデジタル証明書を、ウェブ、デジタル証明書(CAの検証デジタル証明書、CA秘密鍵署名を使用してデジタル証明書ウェブ)とCAの公開鍵
。6 ウェブと.client対称暗号化アルゴリズムのネゴシエーション、およびクライアントが使用してWebサーバーに送信された公開鍵暗号ウェブ、Webサーバを使用して対称暗号鍵を生成し、秘密鍵ウェブ解読するための
7対称暗号鍵を使用して送信されるデータの整合性を、そしてデータをチェック
私たちは、クライアントとサーバーの間で、この認証モードをシミュレートします。
実験前の準備:; CAサーバと1つのためのサーバ、クライアント我々は、試験すべき2台の仮想マシンを使用します。
まずCA +サーバーの設定します。
1.設定CA、CA自身の公開鍵、秘密鍵を生成し、CA証明書は、自分の署名を行うためにあります
[ルートの@ host4を〜]#のVimの/etc/pki/tls/openssl.cnf
2.自己署名証明書を生成します
[ルート@ host4を〜]#は/ etc / PKI / TLS /その他/ CAの-newca
/etc/pki/CA/private/cakey.pem CA私钥 /etc/pki/CA/cacert.pem CA自签数字证书 /etc/pki/CA/careq.pem CA证书请求
3.配置WEB服务器
[root@sxb-1 httpd]# openssl genrsa -des3 -out /etc/httpd/conf.d/server.key Generating RSA private key, 2048 bit long modulus ........................+++ .......+++ e is 65537 (0x10001) Enter pass phrase for /etc/httpd/conf.d/server.key: Verifying - Enter pass phrase for /etc/httpd/conf.d/server.key:
4.生成证书请求(使用身份表示+公钥)
[root@host4 ~]# openssl req -new -key /etc/httpd/conf.d/server.key -out /etc/httpd/conf.d/server.csr
5.将证书请求发给CA(这里我们用的私同一台虚拟机),CA服务器对证书进行数字签名;将签字后数字证书颁发给WEB
[root@host4 ~]# openssl ca -keyfile /etc/pki/CA/private/cakey.pem -cert /etc/pki/CA/cacert.pem -in /etc/httpd/conf.d/server.csr -out /etc/httpd/conf.d/server.crt
6.配置WEB支持ssl实现https
[root@host4 ~]# yum install mod_ssl
[root@host4 ~]# vim /etc/httpd/conf.d/ssl.conf
7.重启服务
[root@sxb-1 CA]# systemctl restart httpd Enter SSL pass phrase for fe80::20c:29ff:fe88:9d40:443 (RSA) : ******
[root@sxb-1 CA]# ss -anplt | grep 443 LISTEN 0 128 :::443 :::* users:(("httpd",pid=20066,fd=6),("httpd",pid=20065,fd=6),("httpd",pid=20064,fd=6),("httpd",pid=20063,fd=6),("httpd",pid=20062,fd=6),("httpd",pid=20060,fd=6))
8.client下载CA证书并导入到浏览器,然后访问www服务器;