Apache Tomcatは、Javaで記述されたWebアプリケーションを実行できるオープンソースのWebサーバーです。人気のあるApacheWebサーバーと同様に、Tomcatも無料の開発者コミュニティによって開発および保守されています。
要件
- 64ビットRHELLinuxサーバー、またはRocky、CentOS、AlmaLinuxなどのそれに基づくサーバー
- 要件に応じて2GB以上のメモリ
-
sudo
を使用したユーザーへのアクセス 権利 - CLIサーバーのSSHアクセス。コマンドを簡単にコピーして貼り付けることができます
AlmaLinux8にApacheTomcatをインストールして設定する手順
AlmaLinuxシステムを更新する
system updateコマンドを実行して、AlmaLinuxシステムにインストールされているすべてのパッケージの最新の安定状態を取得します。これがコマンドです-
sudo dnf update
JAVAのインストール
オープンソースのJavaJREとJDKはどちらもAlmaLinuxのリポジトリで利用でき、他の同様のLinuxサーバーディストリビューションでも同じことが言えます。ここでは、OpenJDK 11をインストールします。必要に応じて、バージョン8に移行することもできます。
OpenJDK11のコマンド
sudo dnf install java-11-openjdk.x86_64
開発者はOpenJDK11開発環境をインストールすることもできます
sudo dnf install java-11-openjdk-devel.x86_64
———————————オプション————————————–
OpenJDK 11が必要ない場合は、以前のバージョンの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
Tomcatのroot以外のユーザーを作成する
Tomcatのみにアクセスでき、システムにログインして何かをインストールまたは削除するなど、他の目的には使用できないグループとユーザーを作成しましょう。
Tomcatグループを追加-
sudo groupadd tomcat
ApacheTomcatファイルを保存するためのディレクトリを作成します
sudo mkdir /opt/tomcat
ユーザーを追加し、上記で作成したディレクトリをホームフォルダに設定し、以下のコマンドを使用してログイン権限を無効にします-
sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
AlmaLinux8.xに最新の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
AlmaLinuxファイアウォールでポート8080を開く
ローカルホストの外部でApacheTomcatWebインターフェースにアクセスするには、使用しているAlmaLinux、CentOS、またはRockyのファイアウォールでポート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をインストールしてアクセスするための完全なチュートリアルでした。
その他のチュートリアル:
- AlmaLinux 8にApache、MySQL、およびPHPをインストールする方法