Debian 10 に Apache Tomcat 9 をインストールする方法
Apache Tomcat は、Java ベースのアプリケーションを提供するために使用される、無料で成熟した堅牢な人気のある Web アプリケーション サーバー ソフトウェアです。これは、Apache Software Foundation (ASF) によって開発された、Java Servlet、JavaServer Pages (JSP)、Java Expression Language、および Java WebSocket テクノロジのオープンソース実装です。
こちらもお読みください: Ubuntu に Apache Tomcat をインストールする方法
このチュートリアルでは、Tomcat 9 の最新リリースを Debian 10 Linux サーバーにインストールして構成するプロセスについて説明します。
このチュートリアルを始める前に、サーバー上で sudo 権限を持つ非 root ユーザー アカウントがあることを確認してください。そうでない場合は、「Ubuntu/Debian で新しい Sudo ユーザーを作成する方法」のガイドを使用してセットアップできます。
ステップ 1: Debian 10 に Java をインストールする
Tomcat 9 の最新リリースを Debian 10 サーバーにインストールするには、Java Web を実行できるようにサーバーに Java がインストールされている必要があります。アプリケーションコード。
まず、次のように apt コマンドを使用してシステム ソフトウェア パッケージ インデックスを更新します。
sudo apt update
次に、apt コマンドを使用してJava 開発キットパッケージをインストールします。
sudo apt install default-jdk
Java のインストールが完了したら、次のコマンドを使用してシステムにインストールされている Java のバージョンを確認します。
java -version
ステップ 2: Debian 10 に Tomcat をインストールする
セキュリティ上の理由から、Tomcat は特権のないユーザー (つまりroot ではない) によってインストールおよび実行される必要があります。新しいtomcat グループとユーザーを作成して、/opt/tomcat ディレクトリ (Tomcat インストール) の下に Tomcat サービスを実行します。
sudo mkdir /opt/tomcat
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Tomcat ユーザーを設定したら、Tomcat 9 ダウンロード ページから Tomcat 9 の最新バージョン (つまり 9.0.30) をダウンロードするか、次のコマンドを使用します。次のcurlコマンドラインツールを使用してtarballをダウンロードし、アーカイブを/opt/tomcatディレクトリに抽出します。
curl -O http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
次に、Tomcat インストールの /opt/tomcat ディレクトリにアクセスできるように、tomcat ユーザーに権限を割り当てます。
cd /opt/tomcat
sudo chgrp -R tomcat /opt/tomcat
sudo chmod -R g+r conf
sudo chmod g+x conf
sudo chown -R tomcat webapps/ work/ temp/ logs/
ステップ 3: Tomcat systemd サービス ファイルを作成する
新しいsystemdサービス ファイルを作成して、Tomcatをsystemd下のサービスとして管理および実行します。サービス ファイルを作成するには、Java がインストールされている場所 (次のコマンドを使用すると JAVA_HOME
と呼ばれます) がどこにインストールされているかを知っておく必要があります。
sudo update-java-alternatives -l
上記の出力から、JAVA_HOME
は次のようになります。
/usr/lib/jvm/java-1.11.0-openjdk-amd64
JAVA_HOME
がわかったら、tomcat.service
という systemd サービス ファイルを /etc/systemd/system< に作成できます。 ディレクトリを実行します。
sudo nano /etc/systemd/system/tomcat.service
次の内容を tomcat.service
ファイルに貼り付けます。
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
次に、systemd をリロードして新しい変更を適用し、tomcat.service
ファイルについて認識できるようにします。
sudo systemctl daemon-reload
最後に、次のコマンドを実行してTomcat サービスを開始してステータスを確認できます。
sudo systemctl start tomcat
systemctl status tomcat
systemctl enable tomcat
ステップ 4: Tomcat Manager と Host Manager のログインを有効にする
Tomcat に付属の manager-gui および admin-gui Web アプリにアクセスするには、Tomcat へのログインを有効にする必要があります。図のようにtomcat-users.xml ファイルを編集してサーバーを削除します。
sudo nano /opt/tomcat/conf/tomcat-users.xml
以下の構成を
タグ内に追加し、示されているように正しいユーザー名とパスワードを使用します。
<role rolename="admin-gui,manager-gui"/>
<user username="admin" password="password" roles="admin-gui,manager-gui"/>
上記の設定は、パスワード「admin」を持つユーザー「admin-gui」に admin-gui ロールと manager-gui ロールを追加することを意味します。 >tecmint123 」。
ステップ 5: Tomcat Manager および Host Manager へのリモート ログインを有効にする
セキュリティ上の理由から、Tomcat マネージャー アプリとホスト マネージャー アプリへのアクセスは、デフォルトではローカルホスト (デプロイされているサーバー) にロックダウンされています。
ただし、以下で説明するように、特定の IP アドレス、または任意のホストやネットワークからTomcat マネージャー アプリとホスト マネージャー アプリへのリモート アクセスを有効にすることができます。
Tomcat マネージャー アプリの場合は、次のように入力します。
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
ホスト マネージャー アプリの場合は、次のように入力します。
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
内部で、IP アドレス制限をコメントアウトして、任意のネットワークからのアクセスを許可します。
<Context antiResourceLocking="false" privileged="true" >
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
</Context>
あるいは、リストに IP アドレスを追加して、自分の IP アドレス 192.168.0.103 またはネットワーク (192.168.0.0) からのリモート アクセスを有効にします。
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.103" />-->
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />-->
ファイルを保存し、Tomcat サービスを再起動して変更を有効にします。
sudo systemctl restart tomcat
ステップ 6: Tomcat Web インターフェイスにアクセスする
任意のブラウザから Tomcat Web インターフェイスにアクセスするには、次のように入力して8080 ポートを開いて、ファイアウォール上の Tomcat サービスへのトラフィックを許可する必要があります。
sudo ufw allow 8080
次に、ブラウザでサーバーのドメイン名または IP アドレスに続いてポート 8080 に移動し、Tomcat Web 管理インターフェイスにアクセスします。
http://server_domain_or_IP:8080
以下の URL でマネージャー アプリにアクセスしてみましょう。アカウントの認証情報を入力する必要があります。
http://server_domain_or_IP:8080/manager/html
以下の URL でホスト マネージャーにアクセスしてみましょう。アカウントの認証情報を入力する必要があります。
http://server_domain_or_IP:8080/host-manager/html/
それだけです! Tomcat のインストールが完了したので、Java Web アプリケーションをデプロイして実行できるようになりました。ご質問やご意見がございましたら、以下のコメント フォームからお問い合わせください。