GNU/Linux >> Linux の 問題 >  >> Rocky Linux

RockyLinux8にApacheTomcatをインストールする方法

Apache Tomcatは、Javaで記述されたWebアプリケーションを実行できるオープンソースのWebサーバーです。人気のあるApacheWebサーバーと同様に、Tomcatも無料の開発者コミュニティによって開発および保守されています。

Apacheと同様に、Apache TomcatはHTTPを提供するHTTPサーバーであり、サーブレットコンテナでもあります。 Apacheは、Tomcatがサポートしていないいくつかの高度なオプションをサポートする汎用HTTPサーバーです。 Tomcatは、主に開発目的のJavaテクノロジのサーブレットおよびJSPサーバーとして機能します。したがって、JavaサーブレットとJSPを提供するために使用できます。したがって、JavaプロジェクトにWARファイル(Webアプリケーションアーカイブ)を作成し、Tomcatデプロイメントディレクトリに保存するだけです。

ここでは、RockyLinux8にApacheTomcatをインストールして構成する方法を学びます… ただし、このチュートリアルで指定されている手順は、 CentOS 8、RHEL、およびAlmaLinux8…にも適用できます。

要件

  • 64ビットRHELLinuxサーバー、またはRocky、CentOS、AlmaLinuxなどのそれに基づくサーバー
  • 要件に応じて2GB以上のメモリ
  • sudoを使用したユーザーへのアクセス 権利
  • CLIサーバーへのSSHアクセス。これにより、コマンドを簡単にコピーして貼り付けることができます。

RockyLinuxシステムを更新する

system updateコマンドを実行して、RockyLinuxシステムにインストールされているすべてのパッケージの最新の安定状態を取得します。これがコマンドです-

sudo dnf update

OpenJDKランタイム環境のインストール

オープンソースのJavaJREとJDKはどちらもRockyLinuxのリポジトリで利用でき、他の同様のLinuxサーバーディストリビューションでも同じことが言えます。ここでは、OpenJDK 11をインストールします。必要に応じて、バージョン8に移行することもできます。

OpenJDK11のコマンド

sudo dnf install java-11-openjdk.x86_64

開発者はOpenJDK11開発環境をインストールすることもできます

sudo dnf install java-11-openjdk-devel.x86_64

または

OpenJDK8の場合

sudo dnf install java-1.8.0-openjdk.x86_64

OpenJDK11開発環境の場合

sudo dnf install java-1.8.0-openjdk-devel.x86_64

Javaバージョンの確認

上記のバージョンのいずれかのインストールが完了したら、以下のコマンドを使用してインストールを確認します。

java --version

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

openjdk 11.0.11 2021-04-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.11+9-LTS, mixed mode, sharing)

Tomcatのroot以外のユーザーを作成する

Tomcatのみにアクセスでき、システムにログインして何かをインストールまたは削除するなど、他の目的には使用できないグループとユーザーを作成しましょう。

Tomcatグループを追加-

sudo groupadd tomcat

ApacheTomcatファイルを保存するためのディレクトリを作成します

sudo mkdir /opt/tomcat

ユーザーを追加し、上記で作成したディレクトリをホームフォルダに設定し、以下のコマンドを使用してログイン権限を無効にします-

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

RockyLinuxに最新のApacheTomcat10をダウンロード

Tomcat 8、9、10など、Tomcatの複数のバージョンを利用できます。これら3つはすべて、Java8以降のバージョンをサポートしています。したがって、あなたはあなたの選択に従って1つをダウンロードすることができます。ただし、ここでは最新のApache Tomcat10バージョンをダウンロードしています。 これは、この記事の執筆中に利用可能でした。 公式ウェブサイトから入手してください。

ダウンロードするTomcatのバージョンを選択し、 Tar.gzを右クリックします。 ファイルを作成し、そのリンクをコピーします 。その後、 wgetで貼り付けます ターミナルを使用して直接ダウンロードするコマンド。

wget past-link

例- ここではTomcat10をダウンロードしているので、そのために利用可能なリンクをコピーします。

wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.5/bin/apache-tomcat-10.0.5.tar.gz

ファイルの抽出と移動

ダウンロードが完了したら、タールを抽出します ファイルを作成し、 / opt / tomcatにコピーします ディレクトリ、以前に作成しました。

sudo tar -zxvf apache-tomcat-*.tar.gz -C /opt/tomcat --strip-components=1

正常に抽出およびコピーされたかどうかを確認するには、次のように入力します-

ls /opt/tomcat

出力:

権限の設定

すでにTomcat専用のユーザーを作成しているので、Tomcatで使用可能なファイルを読み取ることを許可します。

sudo chown -R tomcat: /opt/tomcat

また、フォルダ内で利用可能なスクリプトの実行を許可します。

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

ApacheTomcatサービスファイルを作成する

デフォルトでは、ApacheサーバーのようなTomcat用のSystemdユニットファイルでサービスを停止、開始、有効化することはできません。したがって、簡単に管理できるように作成します。

sudo dnf install nano -y
sudo nano /etc/systemd/system/tomcat.service

次のコードを貼り付けます-

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

[Service]
Type=forking

User=tomcat
Group=tomcat

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

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

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

[Install]
WantedBy=multi-user.target

プレスを保存するにはCtrl+ X 、タイプ– Y Enterを押します キー。

サービスステータスの開始、有効化、確認

tomcatのsystemdユニットファイルが正常に作成されたら、以下のコマンドを使用してサービスを開始します-

開始

sudo systemctl start tomcat

有効にする

sudo systemctl enable --now tomcat

ステータスの確認

sudo systemctl status tomcat

出力

● tomcat.service - Tomcat webs servlet container
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset:>
Active: active (running) since Fri 2021-05-07 20:44:20 IST; 8s ago
Process: 17781 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SU>
Main PID: 17788 (java)
Tasks: 29 (limit: 20249)
Memory: 155.6M
CGroup: /system.slice/tomcat.service
└─17788 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/o>

May 07 20:44:20 demo.how2shout.local systemd[1]: Starting Tomcat webs servlet c>
May 07 20:44:20 demo.how2shout.local systemd[1]: Started Tomcat webs servlet co>
.....

RockyLinuxファイアウォールでポート8080を開く

ローカルホストの外部でApacheTomcatWebインターフェースにアクセスするには、使用しているRocky Linux、CentOS、またはAlmalinuxのファイアウォールでポート8080を開く必要があります。

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

ウェブインターフェースにアクセス

ブラウザを開きます。Tomcatをインストールしたのと同じシステムでブラウザを使用している場合は、単に-

を使用します。
http://localhost:8080

ただし 、Apache TomcatをインストールしたサーバーのIPアドレスにアクセスし、ポート番号8080のアドレスを入力できる他のシステムのブラウザ。

例-サーバーのIPアドレスはhttp://192.168.189.171/でポート番号は8080で、次のようになります-

http://192.168.189.171:8080

–他のPCで管理インターフェースにアクセスしているときに403エラーが表示されます。

Tomcat10/9/8エラーで403アクセスが拒否されました

サーバーステータス」をクリックすると 、「マネージャーアプリ 」と「ホストマネージャー403AccessDeniedエラーが表示されます。 以下のようなものが表示されます。

エラー-

403 Access Denied
You are not authorized to view this page.
By default the Host Manager is only accessible from a browser running on the same machine as Tomcat. If you wish to modify this restriction, you'll need to edit the Host Manager's context.xml file.
............................

このエラーを解決するには、次の手順を実行します…

1。ユーザー名とパスワードを追加する TomcatユーザーXMLファイルへ。

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

の直前の最後 次の行にタグを付けてコピーして貼り付けます。
ユーザー名を変更します およびパスワード 、Tomcatに設定したいものは何でも。

<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>

<user username="h2s" password="pwd" roles="admin,admin-gui,manager,manager-gui"/>

ファイルを保存して終了します-Ctrl+ X 、タイプ- Y、 Enterを押します キー。

2。 ManagerConextXMLファイルの編集

コンテキストファイルを編集する

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

ファイル内でスクロールして最後に移動し、コメントアウトします。 次のテキストブロック-

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

追加するだけです <!- 初めで および-> 終わり 、その後、これは次のようになります-

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

ファイルを保存して終了します-Ctrl+ X 、タイプ- Y、 Enterを押します キー。

下のスクリーンショットに示されているように見えるはずです…

3。 Host-ManagerContext.XMLファイルを編集します

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

上記と同様に、 <!-も追加します 最初に-> 以下のファイルのテキストの最後で、その後、これは次のようになります-

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

保存 ファイルと終了

-:コメントアウトすると、Tomcatはこれを読み取ることができなくなり、ユーザーはリモートPCを使用してManagerバックエンドにアクセスできるようになります。

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

sudo systemctl restart tomcat

TomcatWeb管理インターフェースにアクセスする

最後に、ブラウザを更新し、マネージャアプリをクリックしたときに更新します バックエンドにアクセスするためのボタンをクリックすると、ブラウザはユーザー名とパスワードを要求します TomcatUserXMLファイルで設定したもの 。それを提供し、ログインしてアクセスするだけです。

ユーザー名とパスワードを追加する

サーバーステータス

Webアプリケーションマネージャー

Tomcat仮想ホストマネージャー

したがって、これはRHELベースのLinux Rocky、AlmaLinux、およびCentOSにApacheTomcatをインストールしてアクセスするための完全なチュートリアルでした。


Rocky Linux
  1. Rocky Linux / AlmaLinux8にApacheMavenをインストールする方法

  2. RockyLinux8にApacheKafkaをインストールする方法

  3. Rocky Linux 8 に Redis をインストールする方法

  1. RockyLinux8にPython3.9をインストールする方法

  2. RockyLinux8にNginxを使用してApacheTomcat10をインストールする方法

  3. RockyLinuxにApacheSolrをインストールする方法

  1. Linux Mint 20 / LinuxMint19にApacheTomcat10をインストールする方法

  2. RockyLinux8.4のインストール方法

  3. RockyLinux8にDockerCEをインストールする方法