RHEL 8 に Apache Tomcat をインストールする方法
Apache Tomcat は、Apache Foundation によって開発および保守されているオープンソースの軽量かつ強力な、広く使用されている Web サーバーです。これはJava サーブレット、JavaServer Pages (JSP)、Java Expression Language (EL)、およびJava WebSocketの実装です。 Strong> テクノロジーを利用し、Java Web ベースのアプリケーションを実行するための Pure Java HTTP サーバーを提供します。
この記事では、RHEL 8 Linux 上の Web インターフェイスへのリモート アクセスによる Apache Tomcat 9 のインストールと構成について説明します。
RHEL/CentOS 7 で Tomcat を使用することを検討している場合は、この記事に従って Apache Tomcat を RHEL/CentOS 7 にインストールしてください。
ステップ 1: RHEL 8 に Java をインストールする
RHEL 8 に Java をインストールするには、まずシステム パッケージを更新し、Java 8 または Java 11< のデフォルトの利用可能なバージョンをインストールします。 以下に示すように、次の dnf コマンドを使用します。
dnf update
dnf install java-1.8.0-openjdk-devel #install JDK 8
OR
dnf install java-11-openjdk-devel #install JDK 11
インストールが完了したら、次のコマンドを使用して、システムにインストールされている Java バージョンを確認できます。
java -version
サンプル出力
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)
ステップ 2: RHEL 8 への Apache Tomcat のインストール
JAVA がシステムにインストールされたら、Apache Tomcat の最新バージョン (9.0.24 など) をダウンロードします。この記事の執筆時点での最新の安定バージョン。
バージョンを確認したい場合は、公式の Apache ダウンロード ページにアクセスし、ダウンロードできる新しいバージョンがあるかどうかを確認してください。
- https://tomcat.apache.org/download-90.cgi
あるいは、次の wget コマンドを使用してApache Tomcat の最新バージョンをダウンロードし、次のようにセットアップすることもできます。
cd /usr/local
wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
tar -xvf apache-tomcat-9.0.24.tar.gz
mv apache-tomcat-9.0.24 tomcat9
注: 新しいApache Tomcat バージョンが利用可能な場合は、上記のバージョン番号を最新バージョンに置き換えてください。
Apache Tomcat サーバーは /usr/local/tomcat9
ディレクトリにデプロイされています。pwd コマンドを実行して内容を確認し、ディレクトリの内容も一覧表示できます。
pwd tomcat9/
ls -l tomcat9/
以下はApache Tomcat のインストール ディレクトリ内の各サブディレクトリについて説明します。
- bin – 実行可能ファイルが含まれます。
- conf – 設定ファイルが含まれています。
- lib – ライブラリ ファイルを保存します。
- ログ – ログ ファイルを保存します。
- temp – 一時ファイルが含まれます。
- webaaps – Web アプリケーション ファイルを保存します。
ステップ 3: RHEL 8 の Systemd で Apache Tomcat を実行する
Apache Tomcat デーモンを簡単に管理するには、systemd (システムおよびサービス マネージャー) の下でサービスとして実行する必要があります。このサービスは、useradd コマンドを使用して作成する必要があるtomcat というシステム ユーザーの権限で実行されます。
useradd -r tomcat
tomcat ユーザーが作成されたら、次の chown コマンドを使用して、Tomcat インストール ディレクトリとそのすべてのコンテンツに対するアクセス許可と所有権を付与します。
chown -R tomcat:tomcat /usr/local/tomcat9
ls -l /usr/local/tomcat9
次に、好みのテキスト エディタを使用して、/etc/systemd/system/ ディレクトリに tomcat.service
ユニット ファイルを作成します。
vi /etc/systemd/system/tomcat.service
次の設定をコピーして、tomcat.service
ファイルに貼り付けます。
[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment=CATALINA_PID=/usr/local/tomcat9/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat9
Environment=CATALINA_BASE=/usr/local/tomcat9
ExecStart=/usr/local/tomcat9/bin/catalina.sh start
ExecStop=/usr/local/tomcat9/bin/catalina.sh stop
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
ファイルを保存し、次のコマンドを使用して systemd 構成を再ロードし、最近の変更を適用します。
systemctl daemon-reload
次に、tomcat サービスを開始し、システム起動時の自動開始を有効にし、次のコマンドを使用してステータスを確認します。
systemctl start tomcat.service
systemctl enable tomcat.service
systemctl status tomcat.service
Tomcat は、HTTP リクエストと HTTPS リクエストにそれぞれポート 8080 と 8443 を使用します。 netstat コマンドを使用して、システム上のすべてのリスニング ポートの中の HTTP ポートをチェックすることによって、デーモンが起動してリスニングしていることを確認することもできます。
netstat -tlpn
firewalld サービスを実行している場合は、次のように firewall-cmd コマンドを使用して、Tomcat の Web インターフェイスにアクセスする前に、ポート 8080 と 8443 を開く必要があります。
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --zone=public --permanent --add-port=8443/tcp
firewall-cmd --reload
ステップ 4: Apache Tomcat Web インターフェイスにアクセスする
Tomcat をサービスとしてインストール、設定、開始し、ファイアウォール経由でデーモンへのリクエストを許可したので、URL を使用して Web インターフェイスにアクセスしてインストールをテストできます。
http://localhost:8080
OR
http://SERVER_IP:8080
スクリーンショットに示されているページが表示されたら、Tomcat が正常にインストールされています。
Tomcat には、Manager と呼ばれる Web アプリケーションが含まれており、WAR ファイルのアップロードされたコンテンツから新しい Web アプリケーションをデプロイしたり、新しい Web アプリケーションをデプロイしたりするために使用されます。現在デプロイされている Web アプリケーション、それらの Web アプリケーションに対して現在アクティブなセッションなどをリストします。
また、Tomcat 内の仮想ホストを管理 (作成、削除など) するために使用される ホスト マネージャー アプリケーションも提供します。
ステップ 5: Tomcat Manager と Host Manager の HTTP 認証を有効にする
運用環境でマネージャー アプリとホスト マネージャー アプリへのアクセスを制限するには、/usr/local/tomcat9/conf で基本的な HTTP 認証を構成する必要があります。 /tomcat-users.xml設定ファイル。
vi /usr/local/tomcat9/conf/tomcat-users.xml
スクリーンショットに示すように、次の設定をコピーして
タグと タグ内に貼り付けます。この設定では、admin-gui ロールと manager-gui ロールを、「admin」 という名前のユーザー、「tomhost@」というパスワードを持つユーザーに追加します。 80 インチです。
<role rolename="admin-gui,manager-gui"/>
<user username="admin" password="tomhost@80" roles="admin-gui,manager-gui"/>
変更をファイルに保存して終了します。
ステップ 6: Tomcat Manager および Host Manager へのリモート アクセスを有効にする
デフォルトでは、マネージャー アプリとホスト マネージャー アプリへのアクセスは、Tomcat が存在するサーバーであるローカルホスト に制限されています。がインストールされて実行されています。ただし、特定の IP アドレスまたはネットワーク (LAN など) へのリモート アクセスを有効にすることができます。
マネージャー アプリへのリモート アクセスを有効にするには、構成ファイル /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml< を開いて編集します。。
vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml
次に、次の行を探します。
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
これをこれに変更して、IP アドレス 192.168.56.10 からの Tomcat アクセスを許可します。
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.10" />
ローカル ネットワーク 192.168.56.0 からの Tomcat アクセスを許可することもできます。
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.*" />
または、任意のホストまたはネットワークからの Tomcat アクセスを許可します。
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |.*" />
次に、ファイルの変更を保存して閉じます。
同様に、上に示すように、ファイル /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml で ホスト マネージャー アプリへのリモート アクセスを有効にします。 。
次に、tomcat サービスを再起動して、最近の変更を適用します。
systemctl restart tomcat.service
ステップ 7: Tomcat Manager Web アプリにアクセスする
Tomcat Manager Web アプリにアクセスするには、スクリーンショットに示されているリンクをクリックするか、URL を使用します。
http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager
認証を求められます。スクリーンショットに示すように、前に作成したユーザー名とパスワードを入力してマネージャー アプリにログインします。
次のスクリーンショットは、WAR ファイルのアップロードされたコンテンツから新しい Web アプリケーションをデプロイしたり、新しい Web アプリケーションをデプロイしたり、既存のアプリを一覧表示したりできるマネージャー アプリの HTML インターフェイスを示しています。
ステップ 8: Tomcat Host Manager Web アプリにアクセスする
ホスト マネージャーにアクセスするには、次のいずれかの URL にアクセスします。
http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager
おめでとう! RHEL 8 サーバーに Apache Tomcat が正常にインストールされ、設定されました。詳細については、Apache Tomcat 9.0 のドキュメントを参照してください。