はじめに
Apache Tomcat は、JavaベースのWebアプリケーションに使用される無料のオープンソースの軽量アプリケーションサーバーです。開発者はこれを使用して、JavaサーブレットおよびJavaServer Pagesテクノロジー(Java式言語およびJava WebSocketを含む)を実装します。
Ubuntu18.04にApacheTomcatをインストールして構成する方法については、このガイドをお読みください。
前提条件
- Ubuntuベースのディストリビューション(Ubuntu 18.04など)
- sudoのユーザーアカウント 特権
- ターミナルウィンドウ( Ctrl – Alt – T )
- デフォルトで含まれているaptパッケージマネージャー
UbuntuにTomcat9をインストールする手順
Javaがインストールされているかどうかを確認する
Tomcatをダウンロードしてインストールする前に 、Ubuntuに必要なJavaインストールがあることを確認してください( OpenJDK 。
ターミナルを開きます( Ctrl + Alt + T )そして次のコマンドを使用してJavaのバージョンを確認します:
java -version
出力には、システムで実行されているJavaバージョンが表示されます。現在、最新リリースは OpenJDK 11.0.3 :
OpenJDKをインストールする
OpenJDKをお持ちでない場合、またはJava 8より古いバージョンを使用している場合は、次のように入力して最新のリリースをインストールしてください。
sudo apt install default-jdk
Tomcatユーザーとグループの作成
セキュリティ上の理由から、rootユーザーでTomcatを実行しないでください。 /opt/tomcat
からApacheTomcatサービスを実行するための新しいグループとシステムユーザーを作成します ディレクトリ。
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Tomcat9をダウンロード
1.最新のバイナリTomcatリリースをダウンロードして、公式のApacheTomcatダウンロードページに移動します。
2.その上で、バイナリディストリビューションを見つけます>コア リストとtar.gz その中のリンク。ファイルのリンクをコピーします。
3.ターミナルに戻り、 /tmp
に変更します。 コマンドを含むディレクトリ:
cd /tmp
4.ここで、 tar.gzでcurlコマンドを使用します パッケージをダウンロードするためにステップ2でコピーしたリンク:
curl -O https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
tar.gzファイルを抽出
1. tar.gz Tomcatファイルを抽出するには、新しい /opt/tomcat/
を作成します コマンドを含むディレクトリ:
sudo mkdir /opt/tomcat
2.次に、次のコマンドを使用して、新しいディレクトリにファイルを抽出します。
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
Tomcatユーザー権限の変更
作成した新しいTomcatユーザーには実行可能特権がありませんが、インストールディレクトリにアクセスする必要があります。ディレクトリに対する実行権限を設定する必要があります。
1.Tomcatインストールが配置されているディレクトリに移動します。
cd /opt/tomcat
2.インストールディレクトリに対するグループとユーザーの所有権をtomcat
に付与します 次のコマンドでグループとユーザー:
sudo chown -RH tomcat: /opt/tomcat
3.最後に、スクリプトのアクセス許可を変更して、/ opt / tomcat / bin / with:
で実行アクセスを許可します。sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'
システムユニットファイルの作成
Tomcatをサービスとして使用するため、systemdサービスファイルを作成する必要があります。 。
1.ファイルを構成するには、最初に JAVA_HOME
を見つける必要があります 道。これは、Javaインストールパッケージの正確な場所です。
これを行うには、システムにインストールされているJavaパッケージに関する情報を提供するようにシステムに要求します。ターミナルで次のように入力します:
sudo update-java-alternatives -l
出力が示すように、Javaには2つの利用可能なバージョンがあります。したがって、それらの場所を表示する2つのパスも表示されます。
使用するバージョンを選択し、その場所をコピーします。これで、サービスファイルの作成に進むことができます。
2. / etc / system / systemに新しいファイルを作成して開きます tomcat.serviceという名前で :
sudo nano /etc/systemd/system/tomcat.service
3.ファイルが開いたら、以下のコンテンツをコピーして貼り付け、 JAVA_HOME
を変更します。 前のステップで見つけた情報に価値を置きます。
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
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
4.保存 および終了 ファイル( Ctrl + X 、続いて y [es]とEnter 。
5.変更を行うには、次のコマンドを使用してシステムデーモンをリロードします。
sudo systemctl daemon-reload
6.これで、Tomcatサービスを最終的に開始できます。
sudo systemctl start tomcat
7.次のコマンドを使用して、ApacheTomcatサービスが実行されていることを確認します。
sudo systemctl status tomcat
受信したいメッセージは、サービスがアクティブ(実行中)であるというものです。 。
ファイアウォールの調整
サーバーを保護するためにファイアウォールを使用している場合(必要に応じて)、Tomcatインターフェースにアクセスできなくなります。 Tomcatは、ローカルネットワークの外部にあるポート8080を使用します。
1.ポート8080を開き、次のコマンドでポート8080を通過できるようにします。
sudo ufw allow 8080/tcp
2.ポートが開いている場合は、ApacheTomcatスプラッシュページが表示されるはずです。ブラウザウィンドウに次のように入力します。
http://server_ip:8080
または
http://localhost:8080
次の画像のように、WebブラウザでWebページを開く必要があります。
Web管理インターフェイスの構成
サービスが正しく実行されていることを確認したら、Web管理インターフェイスを使用できるユーザーを作成する必要があります。
これを行うには、ユーザーファイルを開いて編集します。
1.ユーザーファイルを開きます コマンドを使用して:
sudo nano /opt/tomcat/conf/tomcat-users.xml
ファイルは下の画像のように表示されます:
2.ファイルからすべてを削除して 以下を追加します:
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="admin" password="Your_Password" roles="manager-gui, manager-script, manager-jmx, manager-status, admin-gui, admin-script"/>
</tomcat-users>
必ずYour_Password
を置き換えてください お好みの強力なパスワードを使用して価値を高めましょう。
3.保存 および終了 ファイル。
リモートアクセスの構成
最後に、リモートアクセスを構成する必要があります。これは必須です。デフォルトでは、Tomcatはローカルマシンからのみアクセスできます。
1.まず、マネージャーを開きます ファイル:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
2.次に、からのアクセスを許可するかどうかを決定します。 どこでも またはb。 特定のIPアドレスから 。
a。公開してアクセスできるようにするには、ファイルに次の行を追加します。
<Context antiResourceLocking="false" privileged="true">
<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+.d+|::1|0000:1" />
-->
</Context>
b。特定のIPアドレスからのアクセスを許可するには、次のように前のコマンドにIPを追加します。
<Context antiResourceLocking="false" privileged="true">
<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0000:1|THE.IP.ADDRESS." />
-->
</Context>
3. host-managerに対して同じプロセスを繰り返します ファイル。
次のコマンドでファイルを開くことから始めます:
sudo nano /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
4.に続いて、からのアクセスを許可します。 どこでも またはb。 特定のIPアドレスから (前のステップと同様)