Ubuntu16.04にApacheTomcat8をインストールする方法

前書き ##

Apache Tomcatは、Javaアプリケーションにサービスを提供するために使用されるWebサーバーおよびサーブレットコンテナーです。 Tomcatは、Apache SoftwareFoundationによってリリースされたJavaServletおよびJavaServerPagesテクノロジーのオープンソース実装です。このチュートリアルでは、Ubuntu16.04サーバー上のTomcat8の最新バージョンの基本的なインストールといくつかの構成を紹介します。

準備 ##

このチュートリアルを開始する前に、サーバーにsudo権限が設定されたroot以外のユーザーが必要です。

サーバーをお持ちでない学生は、[こちら](https://cloud.tencent.com/product/cvm?from=10680)から購入できますが、個人的には、無料のTencent Cloud [Developer Lab](https://cloud.tencent.com/developer/labs?from=10680)を使用して実験し、[サーバーを購入]( https://cloud.tencent.com/product/cvm?from=10680)。

ステップ1:Javaをインストールする

Tomcatでは、Java Webアプリケーションコードを実行できるように、サーバーにJavaをインストールする必要があります。この要件を満たすために、apt-getを介してOpenJDKをインストールできます。

まず、apt-getパッケージインデックスを更新します。

sudo apt-get update

次に、apt-getを使用してJava DevelopmentKitパッケージをインストールします。

sudo apt-get install default-jdk

Javaがインストールされたので、Tomcatサービスを実行するための tomcatユーザーを作成できます。

ステップ2:Tomcatユーザーを作成する

セキュリティ上の理由から、Tomcatは非特権ユーザー(つまり、rootユーザーではない)として実行する必要があります。 Tomcatサービスを実行する新しいユーザーとグループを作成します。

まず、新しい tomcatグループを作成します。

sudo groupadd tomcat

次に、新しい tomcatユーザーを作成します。このユーザーを tomcatグループのメンバーにし、そのホームディレクトリは / opt / tomcat(ここでTomcatをインストールします)、シェルは / bin / false(誰もアカウントにログインできないようにする)です。 :

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

tomcatユーザーが設定されたので、Tomcatをダウンロードしてインストールしましょう。

ステップ3:Tomcatをインストールする

Tomcat 8をインストールする最良の方法は、最新のバイナリバージョンをダウンロードして、手動で構成することです。

[Tomcat 8ダウンロードページ](http://tomcat.apache.org/download-80.cgi)でTomcat8の最新バージョンを見つけてください。 ** Binary Distributions セクションの下および Core **リストの下で、リンクを「tar.gz」にコピーします。

次に、サーバー上のディレクトリ / tmpに切り替えます。これは、Tomcat tarballなどの短期間のプロジェクトをダウンロードするのに適したディレクトリです。Tomcatコンテンツを抽出した後は、これは必要ありません。

cd /tmp

curlを使用して、TomcatWebサイトからコピーしたリンクをダウンロードします。

curl -O http://apache.mirrors.ionfish.org/tomcat/tomcat-8/v8.5.5/bin/apache-tomcat-8.5.5.tar.gz

Tomcatを / opt / tomcatディレクトリにインストールします。ディレクトリを作成し、次のコマンドを使用してアーカイブをそのディレクトリに抽出します。

sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1

次に、インストールに適切なユーザー権限を設定できます。

手順4:権限を更新する

設定したユーザー tomcatは、Tomcatインストールにアクセスできる必要があります。私たちは今それを成し遂げます。

Tomcatのインストールを解凍したディレクトリに切り替えます。

cd /opt/tomcat

インストールディレクトリ全体で tomcatグループの権限を付与します。

sudo chgrp -R tomcat /opt/tomcat

次に、 tomcatグループに confディレクトリとそのすべてのコンテンツへの読み取りアクセス権を与え、ディレクトリ自体へのアクセスを実行します。

sudo chmod -R g+r conf
sudo chmod g+x conf

tomcatユーザーを webappswork temp、および logsディレクトリの所有者として設定します。

sudo chown -R tomcat webapps/ work/ temp/ logs/

適切な権限が設定されたので、Tomcatプロセスを管理するためのsystemdサービスファイルを作成できます。

ステップ5:systemdサービスファイルを作成する

Tomcatをサービスとして実行できるようにしたいので、systemdサービスファイルを設定します。

Tomcatは、Javaがインストールされている場所を知る必要があります。このパスは通常「JAVA_HOME」と呼ばれます。場所を見つける最も簡単な方法は、次のコマンドを実行することです。

sudo update-java-alternatives -l
java-1.8.0-openjdk-amd64       1081/usr/lib/jvm/java-1.8.0-openjdk-amd64

正しい変数 JAVA_HOMEは、最後の列の出力を取得し、最後に / jreを追加することで作成できます。上記の例では、このサーバーの正しい JAVA_HOMEは次のようになります。

JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre

JAVA_HOMEは異なる場合があります。

この情報を使用して、systemdサービスファイルを作成できます。次のように入力して、 / etc / systemd / systemディレクトリにある tomcat.serviceという名前のファイルを開きます。

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

次のコンテンツをサービスファイルに貼り付けます。必要に応じて、システムで見つけた値と一致するように値 JAVA_HOMEを変更します。 CATALINA_OPTSで指定されたメモリ割り当て設定を変更することもできます。

[ Unit]
Description=Apache Tomcat Web Application Container
After=network.target
​
[ Service]
Type=forking
​
Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
​
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
​
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
​
[ Install]
WantedBy=multi-user.target

終了したら、ファイルを保存して閉じます。

次に、systemdデーモンをリロードして、サービスファイルを認識できるようにします。

sudo systemctl daemon-reload

次のコマンドを入力して、Tomcatサービスを開始します。

sudo systemctl start tomcat

次のように入力して、正常に起動するかどうかを再確認します。

sudo systemctl status tomcat

ステップ6:ファイアウォールを調整し、Tomcatサーバーをテストします

これでTomcatサービスが開始されたので、デフォルトのページが使用可能であることを確認するためにテストできます。

これを行う前に、リクエストがサービスに到達できるようにファイアウォールを調整する必要があります。 * prepare *に従って準備した場合、ファイアウォール ufwが有効になります。

Tomcatはポート 8080を使用して従来のリクエストを受け入れます。このポートへのトラフィックを許可するには、次のように入力します。

sudo ufw allow 8080

ファイアウォールを変更した後、ドメインまたはIPアドレスに続けて :8080にアクセスすることで、Webブラウザーのデフォルトの起動ページにアクセスできます。

Open in web browser
http://server_domain_or_IP:8080

他の情報に加えて、デフォルトのTomcatスタートアップページも表示されます。ただし、マネージャーアプリのリンクをクリックすると、アクセスが拒否されます。次にアクセスを設定できます。

Tomcatに正常にアクセスできる場合は、サービスファイルを有効にして、起動時にTomcatが自動的に起動するようにする良い機会です。

sudo systemctl enable tomcat

手順7:TomcatWeb管理インターフェイスを構成する

Tomcatに付属のマネージャーWebアプリケーションを使用するには、Tomcatサーバーにログインを追加する必要があります。これを行うには、 tomcat-users.xmlファイルを編集します。

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

manager-gui admin-gui(Tomcatに付属のWebアプリケーション)にアクセスできるユーザーを追加する必要があります。これは、 tomcat-usersタグの間にユーザー(以下の例と同様)を定義することで実現できます。ユーザー名とパスワードを安全なものに変更してください。

< tomcat-users ...><user username="admin" password="password" roles="manager-gui,admin-gui"/></tomcat-users>

完了したら、ファイルを保存して閉じます。

デフォルトでは、Tomcatの新しいバージョンは、ManagerおよびHostManagerアプリケーションへのアクセスをサーバー自体からの接続に制限します。リモートコンピューターにインストールしているため、この制限を削除または変更することをお勧めします。これらのIPアドレス制限を変更するには、対応する context.xmlファイルを開きます。

Managerアプリケーションの場合、次のように入力します。

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

Host Managerアプリケーションの場合、次のように入力します。

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

内部的には、IPアドレスの制限をコメントアウトして、どこからでも接続できるようにします。または、自分のIPアドレスからの接続へのアクセスのみを許可する場合は、パブリックIPアドレスをリストに追加できます。

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

完了したら、ファイルを保存して閉じます。

変更を有効にするには、Tomcatサービスを再起動してください。

sudo systemctl restart tomcat

ステップ8:Webインターフェイスにアクセスする

ユーザーを作成したので、WebブラウザーでWeb管理インターフェースに再度アクセスできます。ここでも、ブラウザのポート8080の背後にあるサーバードメイン名またはIPアドレスを入力することで、正しいインターフェイスにアクセスできます。

Open in web browserhttp://server_domain_or_IP:8080

表示されるページは、前のテストで指定したページと同じである必要があります。

リンクまたは http:// server_domain_or_IP:8080 / manager / htmlからアクセスできるManagerアプリを見てみましょう。 tomcat-users.xmlファイルに追加されたアカウント資格情報を入力する必要があります。その後、次のようなページが表示されます。

Web Application Managerは、Javaアプリケーションを管理するために使用されます。ここで、開始、停止、リロード、デプロイ、およびアンデプロイできます。アプリケーションでいくつかの診断を実行することもできます(つまり、メモリリークを探します)。最後に、このページの下部には、サーバーに関する情報が表示されます。

次に、リンクまたは http:// server_domain_or_IP:8080 / host-manager / html /からアクセスできるホストマネージャーを見てみましょう。

[仮想ホストマネージャー]ページで、仮想ホストを追加して、アプリケーションにサービスを提供できます。

結論として ##

Tomcatのインストールが完了しました。これで、独自のJavaWebアプリケーションを自由にデプロイできます。

現在、Tomcatのインストールは正常に機能していますが、暗号化されていません。これは、すべてのデータ(パスワードなどの機密項目を含む)がプレーンテキストで送信され、インターネット上の他の関係者によって傍受されて読み取られる可能性があることを意味します。これを防ぐために、SSLを使用して接続を暗号化することを強くお勧めします。

Apache Tomcat 8のインストールの詳細については、[Tencent Cloud + Community](https://cloud.tencent.com/developer?from=10680)にアクセスして詳細を確認してください。


参照:「Ubuntu16.04にApache Tomcat8をインストールする方法」

Recommended Posts

Ubuntu16.04にApacheTomcat8をインストールする方法
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にApacheMavenをインストールする方法
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にJavaをインストールする方法
Ubuntu20.04にVirtualBoxをインストールする方法
Ubuntu20.04にElasticsearchをインストールする方法
UbuntuにProtobuf3をインストールするための詳細なチュートリアル
Ubuntu20.04にNginxをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu16.04にNode.jsをインストールする方法
Ubuntu20.04にVagrantをインストールする方法
Ubuntu14.04にBacula-Webをインストールする方法
Ubuntu16.04にPostgreSQLをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu18.04にAnaconda3をインストールする方法
Ubuntu18.04にMemcachedをインストールする方法
Ubuntu16.04にJenkinsをインストールする方法
Ubuntu14.04にMemSQLをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu16.04にMongoDBをインストールする方法
Ubuntu14.04にMailpileをインストールする方法
Ubuntu16.04にPrestaShopをインストールする方法
Ubuntu20.04にSkypeをインストールする方法
Ubuntu20.04にJenkinsをインストールする方法
CentOS8にTomcat9をインストールする方法
Ubuntu18.04にKVMをインストールする方法
Ubuntu20.04にKVMをインストールする方法
ubuntu14.04にopencv3.0.0をインストールする方法
Ubuntu16.04にPrometheusをインストールする方法
Ubuntu18.04にJenkinsをインストールする方法
Ubuntu20.04にRをインストールする方法
Ubuntu16.04にMoodleをインストールする方法
Ubuntu14.04にSolr5.2.1をインストールする方法
Ubuntu16.04にTeamviewerをインストールする方法
Ubuntu20.04にMariaDBをインストールする方法
Ubuntu20.04にNginxをインストールする方法
Ubuntu20.04にMonoをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu20.04にZoomをインストールする方法
Ubuntu16.04にNginxをインストールする方法
CentOS8にApacheをインストールする方法
Ubuntu20.04にOpenCVをインストールする方法
Ubuntu20.04にSpotifyをインストールする方法
Ubuntu18.04にPostmanをインストールする方法
Ubuntu16.04にGo1.6をインストールする方法
Ubuntu18.04にGoをインストールする方法
Ubuntu14.04にMySQLをインストールする方法
Ubuntu20.04にPostgreSQLをインストールする方法
Ubuntu18.04にVLCをインストールする方法
Ubuntu20.04にTeamViewerをインストールする方法
Ubuntu20.04にWebminをインストールする方法
Ubuntu18.04にDockerComposeをインストールする方法
RaspberryPiにUbuntuをインストールする方法
Ubuntu14.04にBaculaServerをインストールする方法
Ubuntu14.04でTomcatのインストールを最適化する方法
CentOS8にApacheMavenをインストールする方法
Ubuntu 18.04(linux)にMySQLをインストールする方法
[グラフィック]セントスにtomcatをインストールする方法
Ubuntu20.04 ubuntu / focal64にPython2をインストールする方法
Ubuntu18.04にGCCコンパイラをインストールする方法