Java8のSSLSocket/SSLServerSocketの使い方を紹介するサンプルJavaアプリケーションです。SSL/TLS通信を使ったEchoクライアントとEchoサーバ、およびHTTPSでGETリクエストを送るだけのシンプルなHTTPSクライアントが含まれています。
株式会社セキュアスカイ・テクノロジーのSSTtechblog の連載記事で詳しい使い方やソースコードの説明をしています。
-
SSTtechlog 05 JavaでSSL/TLS接続アプリケーションを作ってみよう(1):SSL版Echoサーバ/クライアントの作成と脆弱性テスト(testssl.sh,Nmap)
-
SSTtechblog 連載記事一覧 : https://www.securesky-tech.com/column/techlog/index.html
- jdk >= 11
- Java 11 Security Developer's Guide
- Java 11 セキュリティ開発者ガイド
-Djava.security.properties=<URL or file>
- Javaのセキュリティ・プロパティをカスタマイズ
- see:
<java.home>/conf/security/java.security
or<java.home>/jre/lib/security/java.security
- RHEL8/CentOS(-Stream-)8 系の場合は
-Djava.security.disableSystemPropertiesFile=true
を追加すること。 (see also :update-crypto-policies(8)
)
java.security.debug
システムプロパティ- see: java11 セキュリティ開発者ガイド, "1 一般的なセキュリティ" -> セキュリティのトラブルシューティング
- ↑には載っていないが、セキュリティプロパティ設定ファイルの読み込み状況をデバッグ出力する
properties
という値があり、動作した。 - 使用例 :
java -Djava.security.debug=properties ...
javax.net.debug
システムプロパティ- see: java11 セキュリティ開発者ガイド, "8 Java Secure Socket Extension (JSSE)リファレンス・ガイド" -> JSSEのトラブルシューティング -> デバッグ・ユーティリティ
- 使用例 :
java -Djavax.net.debug=ssl:handshake ...
- 2021-10
mvn -N io.takari:maven:0.7.7:wrapper
適用- java 11 以上に対応
- TLSv1.3 対応
dump_props
,dump_ciphers
コマンド追加