LoginSignup
20
27

More than 5 years have passed since last update.

Tomcat7 でのWebアプリケーションをHTTPS通信に対応させる

Posted at

背景

LANからインターネットに出る際にプロキシ経由となっている環境で、外部に立てたTomcat上のWebアプリにHTTPS通信ができるようにしたい。
諸事情(プロキシによるブロック)あって、外部のサーバーに直接接続できなかったので、まずはローカル環境で試した。

結果

事前確認

まずはHTTPでちゃんとアプリが起動しているか確認。
サービスで動かしているので、サービスを起動して、ブラウザでURLにアクセス。接続OK。

TomcatへのSSL対応処理

  • keystoreファイルの作成

コマンドでTomcatが使えるkeystoreを作成する。

"%JAVA_HOME%\bin\keytool" -genkey -alias tomcat -keyalg RSA

対話形式であれこれ聞かれるので、適宜入力。パスワードはあとで使うので忘れないように。
これで.keystoreファイルがローカルユーザーのフォルダ配下にできる。

  • server.xmlのHTTPS通信設定

先ほどのコマンドで作成された.keystoreのパスと、設定した鍵パスワードをHTTPSのConnector定義の箇所に追記する。

 <Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="[keystore_dir]\.keystore" keystorePass="[key_password]" />

HTTPSでの接続確認

ブラウザにて、https://[tomcat_server_URL]:8443/ にアクセスして、Tomcatの管理画面が開けばOK。
これでTomcatに構成してるアプリがHTTPSで接続できる。

参考

20
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
27