GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 8 /RHEL8にApacheTomcat10/9をインストールする方法

Apache Tomcatは、Apache Software Foundation(ASF)によって開発されたオープンソースのJavaHTTPWebサーバーです。 Tomcatは、JavaサーブレットとJavaServer Pages(JSP)のデプロイを支援し、HTTPWebサーバーのように機能します。

この投稿では、CentOS 8 /RHEL8にApacheTomcat10/9をインストールする方法を説明します。

前提条件

Javaのインストール

Tomcatには、Java8以降がマシンにインストールされている必要があります。 OracleJDKまたはOpenJDKの安定バージョンをインストールできます。

読む :CentOS 8 /RHEL8にOracleJAVAをインストールする方法

この投稿では、OpenJDKを使用しています。

yum install -y java curl tar

次のコマンドを発行して、Javaのインストールを確認します。

java -version

出力:

openjdk version "1.8.0_275"
OpenJDK Runtime Environment (build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)

Tomcatサービスアカウントを作成する

ベストプラクティスとして、Tomcatサービスをrootユーザーとして実行しないでください。したがって、Tomcatサービスを実行するための通常のLinuxユーザーを作成します。

useradd -d /opt/tomcat -s /bin/nologin tomcat

ApacheTomcatをインストールする

Tomcatをダウンロード

公式WebサイトからApacheTomcatをダウンロードし、作業ディレクトリに保存します。

この記事の執筆時点では、Tomcatv9.0.22をインストールできます。

ブラウザ

ApacheTomcat10をダウンロード

ApacheTomcat9.0をダウンロード

ターミナル

### Apache Tomcat 10.x

curl https://downloads.apache.org/tomcat/tomcat-10/v10.0.4/bin/apache-tomcat-10.0.4.tar.gz -o apache-tomcat-10.0.4.tar.gz

### Apache Tomcat 9.x

curl https://downloads.apache.org/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz -o apache-tomcat-9.0.44.tar.gz
>

Tomcatのセットアップ

Tomcat tarballを抽出し、目的の(/ opt / tomcat)ディレクトリに移動します。

tar -zxvf apache-tomcat-*.tar.gz

mv apache-tomcat-*/* /opt/tomcat/

ディレクトリの所有権をtomcatユーザーに変更します。

chown -R tomcat:tomcat /opt/tomcat/

Systemdファイルの作成

Tomcatサービスを開始するようにsystemdを構成できます。また、システムの開始時にApacheTomcatサービスを自動開始するのにも役立ちます。

Tomcatのsystemdサービスファイルには、Javaのインストール場所が必要です。したがって、次のコマンドを使用して、システムで使用可能なJavaバージョンを一覧表示します。

alternatives --list  | grep ^java

出力:

java                    auto    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java

現時点では、システムにはJava1.8しかありません。

tomcatsystemdサービスファイルを作成します。

vi /etc/systemd/system/tomcat.service

以下の情報をsystemdサービスファイルに追加します。 環境に応じて値を変更します。

[Unit]
Description=Apache Tomcat Web Application Container
Wants=network.target
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre

Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true'
Environment='JAVA_OPTS=-Djava.awt.headless=true'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
SuccessExitStatus=143

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

SELinux

tomcatの起動をブロックする場合は、SELinuxを無効にすることを検討してください。

setenforce 0

sed -i 's/ELINUX=enforcing/ELINUX=disabled/g' /etc/selinux/config

ApacheTomcatを起動する

systemdデーモンをリロードします。

systemctl daemon-reload

Tomcatサービスを開始するには;実行:

systemctl start tomcat

Tomcatのステータスを確認し、実行します:

systemctl status tomcat

システムの起動時にTomcatサービスが自動起動するようにします。

systemctl enable tomcat

デフォルトでは、Tomcatはポート8080で実行されます。netstatコマンドを使用して、サービスがポート8080でリッスンしているかどうかを確認します。

netstat -antup | grep 8080

出力:

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      2904/java

ファイアウォール

外部ネットワークからApacheTomcatにアクセスできるように、ファイアウォールでポート8080を許可します。

firewall-cmd --permanent --add-port=8080/tcp

firewall-cmd --reload

Apache TomcatWebUIを構成する

Apache Tomcatは、WebManagerを介して管理できます。

Web Managerを使用すると、次のことができます

  • 新しいアプリケーションを導入する
  • 指定されたコンテキストで新しいアプリケーションをデプロイする
  • アクティブまたは非アクティブなアプリケーションを一覧表示する
  • Webアプリケーションを開始および停止します

また、Tomcatには仮想ホストを管理するためのホストマネージャーがあります。

ユーザー管理

WebとHostManagerはどちらもパスワードで保護されており、アクセスするにはユーザー名とパスワードが必要です。

ma​​nager-gui」を持つユーザーのみ 」および「admin-gui 」ロールは、それぞれWebマネージャーとホストマネージャーにアクセスできます。

これらのユーザーとロールは、 tomcat-users.xmlで定義されています。 。

vi /opt/tomcat/conf/tomcat-users.xml

次の2行を最後の行のすぐ上に配置します。

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

アクセスを許可する

セキュリティ上の理由から、WebとHost Managerはどちらも、ローカルホストから、つまりサーバー自体からのみアクセスできます。

リモートシステムからWebおよびホストマネージャーへのアクセスを有効にするには、ネットワークを許可リストに追加する必要があります。

これを行うには、手順に従います。

Webマネージャー

vi /opt/tomcat/webapps/manager/META-INF/context.xml

以下の行を、WebおよびホストマネージャーにアクセスしているソースIPで更新します。

全員に許可

。* 誰もがWebマネージャーにアクセスできるようになります。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
組織ネットワークを許可する

組織ネットワークのみを許可することもできます。 例:192.168.1.0 / 24ネットワークのみを許可するには、以下の値を使用できます。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />

ホストマネージャー

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

以下の行を、ホストマネージャーにアクセスしているソースIPで更新します。

全員に許可

。* 誰もがホストマネージャーにアクセスできるようになります。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
組織ネットワークを許可する

組織ネットワークのみを許可することもできます。 例:192.168.1.0 / 24ネットワークのみを許可するには、以下の値を使用できます。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />

Tomcatサービスを再起動します。

systemctl restart tomcat

Tomcatにアクセス

Webブラウザーを開き、次のポイントを指定します。

http://ip.add.re.ss:8080

これで、Tomcatのデフォルトページが表示されます。

マネージャーアプリ(manager-gui):–ログインが必要です。ユーザー名:admin、パスワード:tomcat。

ここでは、アプリケーションのデプロイ、指定されたコンテキストでのアプリケーションのデプロイ、アプリケーションの開始、停止、リロード、およびアンデプロイを行うことができます。

また、 Tomcatを見ることができます サーバーステータス

ホストマネージャー(admin-gui):–ログインが必要です。ユーザー名:admin、パスワード:tomcat。

ここでは、Tomcatの仮想ホストを管理できます。

結論

それで全部です。これで、Tomcat10/9をCentOS8 /RHEL8にインストールする方法を学んだことを願っています。これで最初のWebアプリケーションの準備が整いました。セキュリティの推奨事項として、TomcatにSSL/TLSを実装することを検討してください


Cent OS
  1. Apache Maven CentOS 7 /RHEL7をインストールする方法

  2. CentOSにApacheTomcat8をインストールする方法

  3. CentOS7にApacheTomcatをインストールする方法

  1. Linux RHEL 8 /CentOS8にapachetomcatをインストールする方法

  2. RHEL 8 / CentOS8LinuxにApacheをインストールする方法

  3. CentOS7.3にApacheTomcat8.5をインストールする方法

  1. CentOSにTomcatをインストールする方法

  2. CentOS 7 /RHELにApacheSVN(Subversion)をインストールする方法

  3. CentOS 6 /RHEL6にApacheTomcat9.0/8.5をインストールする方法