1概要
簡単に言うと、Apache TomcatはWebサーバーであり、リンク:/intro-to-servlets[サーブレットコンテナ]はJava Webアプリケーションの配備と提供に使われます。
この簡単な記事では、Tomcatのインストール方法、Tomcat Manager用のユーザーの設定方法、およびTomcatがHTTPSコンテンツを処理できるようにするためのSSL証明書の作成方法について説明します。
** 2 WindowsにTomcatをインストールする
**
** 2.1. ダウンロードして準備する
**
まず、https://tomcat.apache.org/download-80.cgi[Tomcatのダウンロード]を実行します。
サーバーをWindows用のzipファイルとしてダウンロードします。
リンク:/uploads/1-Download-Tomcat.png%20701w[]
次に、Tomcatをそのディレクトリに解凍します。
** 2.3. インストール
**
Windowsでは、迅速な追加インストールが必要です。 Windowsターミナルを開き、Tomcatのインストール bin ディレクトリから開きます。
C:\Java\Apache Tomcat 8.5.9\bin>
次のコマンドでサービスをインストールします。
C:\Java\Apache Tomcat 8.5.9\bin>service install
出力は次のようになります。
Installing the service 'Tomcat8' ...
Using CATALINA__HOME: "C:\Java\Apache Tomcat 8.5.9"
Using CATALINA__BASE: "C:\Java\Apache Tomcat 8.5.9"
Using JAVA__HOME: "C:\Java\jdk1.8.0__40"
Using JRE__HOME: "C:\Java\jre1.8.0__40"
Using JVM: "C:\Java\jre1.8.0__40\bin\client\jvm.dll"
The service 'Tomcat8' has been installed.
** 2.4. Tomcatサービスを起動します.
**
次のコマンドでサービスを開始します。
C:\Java\Apache Tomcat 8.5.9\bin>sc start Tomcat8
次のような出力が得られるはずです。
SERVICE__NAME: Tomcat8
TYPE : 10 WIN32__OWN__PROCESS
STATUS : 2 START__PENDING
(NOT__STOPPABLE, NOT__PAUSABLE, IGNORES__SHUTDOWN)
WIN32__OUTPUT__CODE : 0 (0x0)
SERVICE__OUTPUT__CODE: 0 (0x0)
CHECK-POINT : 0x0
START-INDICATOR : 0x7d0
PID : 5552
MARKS :
URLでブラウザを開きます。
そしてTomcatのWelcome画面が表示されるはずです。
** 3 LinuxへのTomcatのインストール(Debian)
**
私たちはUbuntu Linux 16.06にTomcatをインストールするつもりですが、この手順はあらゆるDebianベースのLinuxディストリビューションでうまくいくはずです。
** 3.1. ダウンロードして解凍する
**
同様に、https://tomcat.apache.org/download-80.cgi[download]にアクセスしてTomcatを解凍します。
sudo mkdir/opt/tomcat
sudo tar xvf apache-tomcat-8.5.9.tar.gz -C/opt/tomcat --strip-components=1
** 3.2. Javaがインストールされていることを確認する
**
システムにJavaがインストールされていて利用可能であることも確認しましょう。
java -version
次のような出力が得られるはずです。
リンク:/uploads/4-Java-Version.png%20512w[]
** 3.3. ユーザーとグループを作成する
**
サーバーは別のグループとユーザーの下で実行します。まずグループを作成しましょう。
sudo groupadd tomcat
そして、rootユーザーを使わないようにTomcatユーザーを作成しましょう。
sudo useradd -s/bin/false -g tomcat -d/opt/tomcat tomcat
新しいユーザーとグループでそれらを使用するために、サーバーの権限も更新しましょう。
cd/opt/tomcat
sudo chgrp -R tomcat conf
sudo chmod g+rwx conf
sudo chmod g+r conf/**
sudo chown -R tomcat work/temp/logs/----
最後に、Tomcatが単純なUpstartスクリプトで自動的に起動するようにします。
[source,bash,gutter:,true]
vi/etc/init/tomcat.conf
__tomcat.conf__スクリプトは、ブート時にTomcatサービスを開始するために運用システムによって使用されます。 このスクリプトは、必要に応じてサービスを開始および停止するために使用されます。 [source,bash,gutter:,true]
description "Tomcat Server" start on runlevel[2345] stop on runlevel[!2345] setuid tomcat setgid tomcat env JAVA HOME=/opt/jdk1.8.0 77/jre/ env CATALINA HOME=/opt/tomcat exec $CATALINA HOME/bin/catalina.sh run
==== ** 3.4. 開始 ** opt/tomcat/binディレクトリに移動して、次のコマンドを実行します。 [source,bash,gutter:,true]
次のような出力が表示されるはずです。 [source,bash,gutter:,true]
Using CATALINA BASE: /opt/tomcat Using CATALINA HOME: /opt/tomcat Using CATALINA TMPDIR:/opt/tomcat/temp Using JRE HOME: /usr Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar Tomcat started.[email protected]:/opt/tomcat/bin#
今こそ、私たちのサーバーをテストする時です。 URLでブラウザを開きます。 http://localhost:8080 そして、あなたは次のページを見るべきです: link:/uploads/5-Tomcat-Welcome-Linux.png%20792w[] === 4. Tomcat Manager Tomcatマネージャにアクセスするには、それを実行する権限を持つユーザを作成する必要があります。 ** Windowsの場合** [source,bash,gutter:,true]
C:\Java\Apache Tomcat 8.5.9\conf\tomcat-users.xml
** Linuxの場合:** [source,bash,gutter:,true] ----/opt/tomcat/conf/tomcat-users.xml
このファイルでは、Tomcatマネージャにアクセスするためのユーザを定義します。
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0">
<user username="admin" password="admin" roles="manager-gui,admin-gui"/>
</tomcat-users>
<user> タグでは、ロール "manager-gui"と "admin-gui"を持つパスワード "admin"を持つユーザー "admin"を定義しています。
それではサーバーを再起動してURLをもう一度開きます。
今度は「Manager App」ボタンをクリックすると、サーバーは認証情報を要求します。提供された資格情報を入力すると、次の画面が表示されます。
リンク:/uploads/6-Tomcat-Manager.png%20747w[]
5. SSL証明書
次のコマンドを実行して証明書を生成します。
-
Windowsの場合**
keytool -genkey -alias tomcat -keyalg RSA -keystore C:\Java\apache-tomcat-8.5.9\keystore\tomcat
-
Linuxの場合:**
keytool -genkey -alias tomcat -keyalg RSA -keystore/opt/tomcat/keystore/tomcat
ツールは証明書を入力するためにいくつかの質問をします。証明書はフォルダ内にあり、証明書の名前は「tomcat」です。証明書は次の方法で確認できます。 Windowsの場合:
keytool -list -keystore C:\Java\apache-tomcat-8.5.9\keystore\tomcat
-
Linuxの場合:**
keytool -list -keystore/opt/tomcat/keystore/tomcat
** 5.1. 証明書を使用する
**
ファイルを編集します。
-
Windowsの場合**
C:\Java\Apache Tomcat 8.5.9\conf\server.xml
-
Linuxの場合:**
----/opt/tomcat/conf/server.xml
----
SSLコネクタを追加します。
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="C:\Java\apache-tomcat-8.0.23\keystore\tomcat"
keystorePass="changeit"/>
Tomcatを再起動すれば完了です。これでTomcatのHTTPSでアプリケーションを実行できます。
6. 結論
このクイックチュートリアルの最後に、開発中に使用するためのLinuxとWindowsで動作するTomcatが完成しました。
本番環境でTomcatを使用するには、もちろん、それに応じてサーバーを構成し調整する必要があります。