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

Nginx を使用して Ubuntu 20.04 に Apache Tomcat 10 をインストールする方法

Apache Tomcat は、オープン ソースの Web サーバーであり、主に Java ベースのアプリケーションのサーバーに使用されるサーブレット コンテナーです。

このガイドでは、Apache Tomcat 10 を Ubuntu 20.04 にインストールし、Nginx と Let’s Encrypt SSL でセットアップを保護する方法を学習します。

前提条件

  • Ubuntu 20.04 OS を搭載したサーバー
  • sudo 権限を持つユーザー

初期設定

サーバー パッケージを利用可能な最新バージョンに更新することから始めます。

sudo apt update
sudo apt dist-upgrade -y

Tomcat の新しいユーザーを作成

Tomcat が独自の非特権ユーザーとして実行された方がよいでしょう。次のコマンドを実行して、Tomcat に必要な権限を持つ新しいユーザーを作成します。このユーザーは SSH へのログインを許可されません。

sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat

Java をインストール

以下のコマンドを使用して、デフォルトの JDK をインストールします。

sudo apt install default-jdk

インストールが完了したら、次のコマンドを使用してバージョンを確認してください。

java -version

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

openjdk version "11.0.14.1" 2022-02-08
OpenJDK Runtime Environment (build 11.0.14.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.14.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)

Apache Tomcat をインストール

Tomcat の公式ダウンロード ページから最新バージョンの Tomcat をダウンロードします。 tar.gz を選択 コアセクションの下。

wget を使用してアーカイブをダウンロードします。

cd ~/
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.20/bin/apache-tomcat-10.0.20.tar.gz

内容を /opt/tomcat に抽出します ディレクトリ。

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

Tomcat ファイルの正しいアクセス許可を構成します。

sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin

管理者ユーザーの構成

ホスト マネージャーにアクセスできるユーザーをセットアップする必要があります。 とマネージャー Tomcat のページ。

/opt/tomcat/conf/tomcat-users.xml にパスワードを持つユーザーを追加します

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

終了タグの前に次の行を追加します。

<role rolename="manager-gui" />
<user username="manager" password="secure_password" roles="manager-gui" />

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

これで、マネージャーとホスト マネージャーのページにアクセスできるユーザーが 2 人になりました。

Tomcat をサービスとして構成する

ここでは、Tomcat を自動的に起動、停止、再起動するように systemd サービスを構成します。

Java の場所に注意してください。

sudo update-java-alternatives -l
Output
java-1.11.0-openjdk-amd64      1111       /usr/lib/jvm/java-1.11.0-openjdk-amd64

systemd ファイルを作成します。

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

次の内容をファイルに追加します。

[Unit]
Description=Tomcat
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"
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

RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

JAVA_HOME を置き換えます

変更を有効にするため、systemd デーモンをリロードしてください。

sudo systemctl daemon-reload

Tomcat を起動します。

sudo systemctl start tomcat

システムの起動時に Tomcat を起動できるようにします。

sudo systemctl enable tomcat

Tomcat のステータスを確認してください。

sudo systemctl status tomcat
Output
● tomcat.service - Tomcat
     Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-04-20 08:57:23 UTC; 6s ago
    Process: 5155 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
   Main PID: 5162 (java)
      Tasks: 29 (limit: 1151)
     Memory: 136.4M
     CGroup: /system.slice/tomcat.service

Nginx をインストール

次のコマンドを使用して Nginx をインストールします。

sudo apt install nginx

デフォルト設定を削除

sudo rm /etc/nginx/sites-available/default
sudo rm /etc/nginx/sites-enabled/default

Tomcat の Nginx プロキシを構成する

新しい Nginx 構成を作成する

sudo nano /etc/nginx/sites-available/yourdomainname.conf

以下を貼り付け

server {
     listen [::]:80;
     listen 80;

     server_name yourdomainname.com www.yourdomainname.com;

     location / {
         proxy_pass http://localhost:8080;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection 'upgrade';
         proxy_set_header Host $host;
         proxy_cache_bypass $http_upgrade;
    }
}

ファイルを保存して終了します。

シンボリック リンクを作成して構成を有効にします。

sudo ln -s /etc/nginx/sites-available/yourdomainname.conf /etc/nginx/sites-enabled/yourdomainname.conf

Let’s Encrypt SSL with Certbot をインストールします

Certbot パッケージをインストールします。

sudo apt install python3-certbot-nginx

以下のコマンドを使用して SSL 証明書をインストールします。

sudo certbot --nginx --redirect --no-eff-email --agree-tos -m [email protected] -d yourdomainname.com -d www.yourdomainname.com

ドメインがサーバーを指している場合、無料の SSL 証明書がインストールされ、HTTP から HTTPS へのリダイレクトが自動的に構成され、変更を有効にするために Nginx が自動的に再起動されます。

再起動したい場合は、Nginx の設定を確認して再起動してください。

sudo nginx -t
sudo service nginx restart

情報技術の専門家として働く役割に備える Linux オペレーティング システムで

Tomcat のインストールを確認する

ブラウザでドメインを確認してください。

[マネージャー アプリ] をクリックします 、ユーザー名とパスワードを入力するよう求められます。 Tomcat ユーザー セクションで設定したものを使用してください。

Host Manager もご覧ください。 ページ。

サーバーのステータスも表示できます。

結論

これで、Ubuntu 20.04 に Apache Tomcat をインストールし、Nginx と Let’s Encrypt SSL で保護する方法を学習しました.

御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。


Linux
  1. Ubuntu18.04にApacheをインストールする方法

  2. Ubuntu14.04にNginxでElggをインストールする方法

  3. Ubuntu18.04にNginxでJoomlaをインストールする方法

  1. Ubuntu20.04にApacheをインストールする方法

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

  3. Ubuntu18.04にTomcat8.5をインストールする方法

  1. Ubuntu18.04にTomcat9をインストールする方法

  2. Ubuntu18.04にApacheを使用してJoomlaをインストールする方法

  3. Ubuntu20.04にTomcat9をインストールする方法