全て。
最近、セキュリティ コンテンツを提供するために、Linux プラットフォームで HTTPS サービスを構築したいと考えています。
最初に、ガイド Apache Tomcat 7 (7.0.42) - SSL Configuration HOW-TO.htm を TOMCAT 公式 Web サイトで見つけました。HTTPS サービスをインストールするための 2 つのソリューションがあります。( http://www.cjsdn.net/Doc/Tomcat7/ssl-howto.html )
(1) JSSE: JDK の keytool を使用して、キーストアと証明書を生成します。TOMCAT の CONF フォルダにあるserver.xmlファイルに次のコードを挿入します。実装されているプロトコルは「org.apache.coyote.http11.Http11NioProtocol」です。
< Connector SSLEnabled="true" acceptCount="800" clientAuth="false"
disableUploadTimeout="true" enableLookups="false" maxThreads="400"
port="8443" keystoreFile="/home/jsse/sslserverkeys" keystorePass="123456"
protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
secure="true" sslProtocol="TLS" />
TOMCAT サービスを開始し、すべての手順は OK です。ブラウザを使用して、「 https://XX.XX.XX.XX:8443/SSLpages/Resource_mp.xml 」を開くことができます。
(2) APR: OPENSSL をインストールし、APR パッケージをインストールし、TOMDAT-NATIVE をインストールして、server.xml に次のコードを挿入します。実装されているプロトコルは「org.apache.coyote.http11.Http11AprProtocol」です。OPENSSL コマンドで以下の KEY & 証明書を生成します。
CA - キーと証明書
- openssl genrsa -out ca-key.pem 1024
- openssl req -new -out ca-req.csr -key ca-key.pem
- openssl x509 -req -in ca-req.csr -out ca-cert.pem -signkey ca-key.pem -days 3650
- openssl pkcs12 -export -clcerts -in ca-cert.pem -inkey ca-key.pem -out ca.p12
サーバー - キーと証明書
- openssl genrsa -out server-key.pem 1024
- openssl req -new -out server-req.csr -key server-key.pem (10.180.26.156)
- openssl x509 -req -in server-req.csr -out server-cert.pem -signkey server-key.pem -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -days 3650
- openssl pkcs12 -export -clcerts -in server-cert.pem -inkey server-key.pem -out server.p12
< Connector protocol="org.apache.coyote.http11.Http11AprProtocol" SSLEnabled="true" acceptCount="800" maxThreads="400" enableLookups="false" disableUploadTimeout="true" port="8443"
SSLProtocol="TLSv1" SSLCipherSuite="ALL" scheme="https" secure="true" SSLCertificateFile="/home/apr/ssl/server-cert.pem" SSLCertificateKeyFile="/home/apr/ssl/server-key.pem" SSLCACertificateFile=" /home/apr/ssl/ca-cert.pem" SSLCACertificatePath="/home/apr/ssl" SSLPassword="123456" />
TOMCAT サービスを開始します。すべての手順 (OPENSSL コンポーネントを含む) は OK です。ブラウザを使用して、「 https://XX.XX.XX.XX:8443/SSLpages/Resource_mp.xml 」を開くことができます。
次に、HTTPS がインストールされたら、パフォーマンス テストの手順を開始する必要があります。
「ページ訪問の並行性」をテストするための多くのツールを見つけましたが、ついに「Siege」は素晴らしく使いやすいです。Linux では次のように動作します。
siege -c 500 -r 50 -u " https://XX.XX.XX.XX:8443/SSLpages/Resource_mp.xml "
(1) TOMCAT - JSSE モデル 上記のコマンドを Linux で実行すると、正しい結果リストが得られます。
トランザクション: 25000
hitsAvailability: 100.00 %
secsトランザクション率: 677.51
トランス/秒スループット: 2.36 MB/秒
同時実行: 16.90
成功したトランザクション: 25000
失敗したトランザクション: 0
(2) TOMCAT - APR モデル
siege -c 50 -r 10 -u " https://XX.XX.XX.XX:8443/SSLpages/Resource_mp.xml "
Linux で上記のコマンドを実行した後、正しい結果リストを取得できません。
成功したトランザクション: 0
失敗したトランザクション: 500
なぜ ?包囲ツールはエラー メッセージを LOG に書き込みませんでした。
CA 証明書を OPENSSL デフォルト フォルダに挿入する必要がありますか?
信頼する CA 証明書に関する信頼ファイルを生成し、どこかに配置する必要がありますか?
しかし、JSSE モデルでは、Tomcat でインポートできる JDK でのみキーストアを生成します。包囲はうまく機能します。
どんな助けや提案も大歓迎です!!!