CentOS8にTomcat9をインストールする方法

Apache Tomcatは、Java Servlet、JavaServer Pages、Java Expression Language、およびJavaWebSocketテクノロジーのオープンソース実装です。これは、世界中で広く使用されているアプリケーションおよびWebサーバーです。 Tomcatは非常にシンプルで使いやすく、強力なエコシステムを備えています。

このガイドでは、CentOS8にTomcat9.0をインストールする方法について説明します。

1つは、Javaをインストールする##

Tomcat9にはJavaSE8以降が必要です。 Javaプラットフォームのオープンソース実装であるOpenJDK11をインストールします。

rootまたはsudo権限を持つ別のユーザーとして次のコマンドを実行して、Javaをインストールします。

sudo dnf install java-11-openjdk-devel

インストールが完了したら、Javaのバージョンを確認して確認します。

java -version

出力は次のようになります。

openjdk version "11.0.5"2019-10-15 LTS
OpenJDK Runtime Environment 18.9(build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9(build 11.0.5+10-LTS, mixed mode, sharing)

2つ目は、システムユーザーを作成する##

ルートユーザーとしてTomcatを実行すると、セキュリティ上のリスクがあります。システムユーザーとグループを作成し、ホームディレクトリ / opt / tomcatを作成します(ここでTomcatサービスを実行します)。これを行うには、次のコマンドを入力します。

sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat

3、Tomcatをダウンロード##

Tomcatバイナリインストールパッケージは、[Tomcatダウンロードページ](https://tomcat.apache.org/download-90.cgi)からダウンロードできます。

執筆時点では、Tomcatの最新バージョンは 9.0.30です。次の手順に進む前に、Tomcat 9のダウンロードページに移動して、新しいバージョンが利用可能かどうかを確認してください。

wgetコマンドを使用して、Tomcatzipファイルを / tmpフォルダーにダウンロードします。

VERSION=9.0.30
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz -P /tmp

ダウンロードが完了したら、tarファイルを / opt / tomcatフォルダーに解凍します。

sudo tar -xf /tmp/apache-tomcat-${VERSION}.tar.gz -C /opt/tomcat/

Tomcatは、通常のプロセスに従って更新をリリースします。 Tomcatのバージョンとアップグレードをより適切に制御するために、Tomcatのインストールディレクトリを指す latestという名前のソフトリンクを作成します。

sudo ln -s /opt/tomcat/apache-tomcat-${VERSION}/opt/tomcat/latest

システムユーザーは以前に作成されており、このユーザーはTomcatインストールディレクトリにアクセスできる必要があります。ディレクトリアトリビューションを変更して、ユーザーとユーザーグループをtomcatにします。

sudo chown -R tomcat:/opt/tomcat

binの下のすべてのディレクトリを実行可能にします。

sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'

これらのスクリプトは、Tomcatを開始および停止するために使用されます。

第四に、Systemdユニットファイルを作成します##

Tomcatを手動で開始および停止する代わりに使用され、サービスとして設定します。テキストエディタを開き、 / etc / systemd / system /ディレクトリに tomcat.serviceユニットファイルを作成します。

sudo nano /etc/systemd/system/tomcat.service

次のコンテンツを貼り付けます。

[ Unit]
Description=Tomcat 9 servlet container
After=network.target

[ Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh

[ Install]
WantedBy=multi-user.target

ファイルを保存して閉じます。

新しいサービスが作成されたことをsystemdに通知するには、次のように入力します。

sudo systemctl daemon-reload

Tomcatサービスを有効にして開始します。

sudo systemctl enable --now tomcat

サービスステータスの確認:

sudo systemctl status tomcat

出力には、Tomcatサービスが有効で実行されていることが示されます。

 tomcat.service - Tomcat 9 servlet container
 Loaded:loaded(/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled)
 Active:active(running) since Wed 2020-01-1520:38:07 UTC; 30s ago
 Process:3957 ExecStart=/opt/tomcat/latest/bin/startup.sh(code=exited, status=0/SUCCESS)...

5、ファイアウォールを構成します##

サーバーがファイアウォールの背後にあり、外部ネットワークからtomcatにアクセスする場合は、ポート 8080を開く必要があります。次のコマンドを使用して、必要なポートを開きます。

sudo firewall-cmd --permanent --zone=public--add-port=8080/tcp
sudo firewall-cmd --reload

6. TomcatWeb管理インターフェイスを構成します##

この時点で、ブラウザのポート 8080でTomcatにアクセスできるはずです。まだユーザーを作成していないため、現在Web管理インターフェイスにアクセスできません。

Tomcatのユーザーと役割は、 tomcat-users.xmlファイルで定義されています。

ファイルを開くと、このファイルの構成方法に関するコメントと例がファイルに含まれていることがわかります。

sudo nano /opt/tomcat/latest/conf/tomcat-users.xml

Tomcatユーザーは、 tomcat-users.xmlファイルで定義されています。 tomcat Webインターフェイス(manager-guiおよびadmin-gui)にアクセスするための新しいユーザーを作成する場合は、以下のプロンプトに従って質問を編集してください。安全を確保するために、必ずユーザー名とパスワードを変更してください。

< tomcat-users><!--
 Comments
- - >< role rolename="admin-gui"/><role rolename="manager-gui"/><user username="admin" password="admin_password" roles="admin-gui,manager-gui"/></tomcat-users>

デフォルトでは、Tomcat Web管理インターフェイスは、ローカルlocalhostからのアクセスのみを許可するように構成されています。

どこからでもWebインターフェイスにアクセスする必要がある場合は、次のファイルを開いてコメントするか、次の行を削除できます: / opt / tomcat / latest / webapps / manager / META-INF / context.xml

< 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>

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

< 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からWebインターフェイスにアクセスする場合は、コードブロックをコメントアウトする代わりに、パブリックネットワークIPをリストに追加できます。

パブリックネットワークIPが 41.41.41.41の場合、次のIPからのアクセスを許可します: / opt / tomcat / latest / webapps / manager / META-INF / context.xml

< 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|41.41.41.41"/></Context>

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

< 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|41.41.41.41"/></Context>

許可されるIPアドレスは、縦棒 |で区切られます。別のIPアドレスを追加するか、通常の式を使用できます。

完了したら、Tomcatサービスを再起動して、変更を有効にします。

sudo systemctl restart tomcat

7、テストインストール##

Webブラウザーを開き、次のように入力します。 http://<your_domain_or_IP_address> :8080

インストールが正常に完了すると、次のような画面が表示されます。

Tomcat Web管理のバックグラウンドを使用すると、アプリケーションを展開、展開解除、開始、停止、および再ロードできます。次のアドレスからアクセスします。

http://<your_domain_or_IP_address>:8080/manager/html

Tomcat仮想ホスト管理のバックグラウンドを使用すると、Tomcat仮想ホストを作成、削除、および管理できます。次のアドレスからアクセスします。

http://<your_domain_or_IP_address>:8080/host-manager/html

8、要約##

CentOS8にTomcat9.0をインストールする方法と、Tomcat管理インターフェイスにアクセスする方法を示します。

Apache Tomcatの詳細については、[公式ドキュメントページ](https://tomcat.apache.org/tomcat-9.0-doc/index.html)にアクセスしてください。

Recommended Posts

CentOS8にTomcat9をインストールする方法
[グラフィック]セントスにtomcatをインストールする方法
centosにtomcatをインストールおよびアンインストールする方法
centOS7にjdk1.8をインストールする方法
CentOS8にMySQLをインストールする方法
CentOS8にRをインストールする方法
CentOS8にFFmpegをインストールする方法
CentOS8にVirtualboxをインストールする方法
CentOS8にTensorFlowをインストールする方法
CentOS8にTeamViewerをインストールする方法
CentOS8にGradleをインストールする方法
CentOS8にElasticsearchをインストールする方法
CentOS8にJenkinsをインストールする方法
CentOS8にGoをインストールする方法
CentOS8にGCCをインストールする方法
CentOS8にYarnをインストールする方法
CentOS8にNginxをインストールする方法
CentOS7にAsteriskをインストールする方法
CentOS8にJenkinsをインストールする方法
CentOS8にVagrantをインストールする方法
CentOS8にWebminをインストールする方法
CentOS8にRubyをインストールする方法
CentOS8にSkypeをインストールする方法
CentOS8にhtopをインストールする方法
CentOS8にPythonをインストールする方法
CentOS8にElasticsearchをインストールする方法
CentOS8にPostgresqlをインストールする方法
CentosにWordpressをインストールする方法
CentOS8にhtopをインストールする方法
CentOS8にTeamViewerをインストールする方法
CentOS8にMariaDBをインストールする方法
CentOS7にMongoDBをインストールする方法
CentOS8にOdoo13をインストールする方法
CentOS8にApacheをインストールする方法
CentOS8にOpenCVをインストールする方法
CentOS8にPHPをインストールする方法
CentOS8にMongoDBをインストールする方法
CentOS8にApacheMavenをインストールする方法
CentOS7にApacheKafkaをインストールする方法
R&D:CentOS7にPython3をインストールする方法
Ubuntu16.04にApacheTomcat8をインストールする方法
CentOS7にGCCコンパイラをインストールする方法
centos7.0にオフラインJDK1.8をインストールする方法
TomcatをインストールするCentos7.6メソッド-8.5.39
CentOS7にElasticsearchをインストールして構成する方法
CentOS8にVisualStudioコードをインストールする方法
CentOS7にDockerをインストールして使用する方法
CentOSLinuxにRPMパッケージをインストールする方法
CentOS8にVNCをインストールして構成する方法
CentOS8にComposerをインストールして使用する方法
CentOS8にRedisをインストールして構成する方法
CentOS8にNode.jsとnpmをインストールする方法
centos7.2.1511にjdk1.8.0_151とmysql5.6.38をインストールする方法
CentOS6にphpMyAdminをインストールして構成する方法
CentOS8にCurlをインストールして使用する方法
CentOS8にOwncloudをインストールして構成する方法
CentOS8にVirtualBoxクライアント拡張機能をインストールする方法
RHEL 8 / CentOS8にDockerCEをインストールする方法
CentOS8にRedmineをインストールして構成する方法
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にMemcachedをインストールする方法