GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Tomcat 9 di Ubuntu 20.04

Tutorial ini menjelaskan cara menginstal dan mengkonfigurasi Tomcat 9 di Ubuntu 20.04.

Apache Tomcat adalah server web sumber terbuka dan wadah servlet Java. Ini adalah salah satu pilihan paling populer untuk membangun situs web dan aplikasi berbasis Java. Tomcat ringan, mudah digunakan, dan memiliki ekosistem pengaya yang kuat.

Menginstal Java #

Tomcat 9 membutuhkan Java SE 8 atau yang lebih baru untuk diinstal pada sistem. Kami akan menginstal OpenJDK 11, implementasi open-source Platform Java.

Jalankan perintah berikut sebagai root atau pengguna dengan hak istimewa sudo atau root untuk memperbarui indeks paket dan menginstal paket OpenJDK 11 JDK:

sudo apt updatesudo apt install openjdk-11-jdk

Setelah instalasi selesai, verifikasi dengan memeriksa versi Java:

java -version

Outputnya akan terlihat seperti ini:

openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Membuat Pengguna Sistem #

Menjalankan Tomcat di bawah pengguna root adalah risiko keamanan. Kami akan membuat pengguna dan grup sistem baru dengan direktori home /opt/tomcat yang akan menjalankan layanan Tomcat. Untuk melakukannya, masukkan perintah berikut:

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

Mengunduh Tomcat #

Distribusi biner Tomcat tersedia untuk diunduh dari halaman unduhan Tomcat.

Pada saat penulisan, versi Tomcat terbaru adalah 9.0.35 . Sebelum melanjutkan ke langkah berikutnya, periksa halaman unduhan Tomcat 9 untuk melihat apakah versi yang lebih baru tersedia.

Gunakan wget untuk mengunduh file zip Tomcat ke /tmp direktori:

VERSION=9.0.35wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz -P /tmp

Setelah unduhan selesai, ekstrak file tar ke /opt/tomcat direktori::

sudo tar -xf /tmp/apache-tomcat-${VERSION}.tar.gz -C /opt/tomcat/

Tomcat diperbarui secara berkala dengan patch keamanan dan fitur baru. Untuk memiliki kontrol lebih besar atas versi dan pembaruan, kami akan membuat tautan simbolis yang disebut latest , yang menunjuk ke direktori instalasi Tomcat:

sudo ln -s /opt/tomcat/apache-tomcat-${VERSION} /opt/tomcat/latest

Kemudian, saat memutakhirkan Tomcat, buka paket versi yang lebih baru dan ubah symlink agar mengarah ke sana.

Pengguna sistem yang dibuat sebelumnya harus memiliki akses ke direktori instalasi Tomcat. Ubah kepemilikan direktori menjadi pengguna dan grup Tomcat:

sudo chown -R tomcat: /opt/tomcat

Skrip shell di dalam bin Tomcat direktori harus dapat dieksekusi:

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

Skrip ini digunakan untuk memulai, menghentikan, dan, jika tidak, mengelola instance Tomcat.

Membuat File Unit SystemD #

Alih-alih menggunakan skrip shell untuk memulai dan menghentikan server Tomcat, kami akan mengaturnya agar berjalan sebagai layanan.

Buka editor teks Anda dan buat tomcat.service file unit di /etc/systemd/system/ direktori:

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

Tempelkan konfigurasi berikut:

/etc/systemd/system/Tomcat.service
[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

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

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

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

[Install]
WantedBy=multi-user.target
Ubah JAVA_HOME variabel jika jalur ke instalasi Java Anda berbeda.

Simpan dan tutup file dan beri tahu systemd bahwa ada file unit baru:

sudo systemctl daemon-reload

Aktifkan dan mulai layanan Tomcat:

sudo systemctl enable --now tomcat

Periksa status layanan:

sudo systemctl status tomcat

Outputnya akan menunjukkan bahwa server Tomcat diaktifkan dan berjalan:

● tomcat.service - Tomcat 9 servlet container
     Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2020-05-25 17:58:37 UTC; 4s ago
    Process: 5342 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
   Main PID: 5362 (java)
...

Anda dapat memulai, menghentikan, dan memulai ulang Tomcat sama seperti layanan systemd lainnya:

sudo systemctl start tomcatsudo systemctl stop tomcatsudo systemctl restart tomcat

Mengonfigurasi Firewall #

Jika server Anda dilindungi oleh firewall dan Anda ingin mengakses Tomcat dari luar jaringan lokal Anda, Anda perlu membuka port 8080 .

Gunakan perintah berikut untuk membuka port yang diperlukan:

sudo ufw allow 8080/tcp
Umumnya, saat menjalankan Tomcat di lingkungan produksi, Anda harus menggunakan penyeimbang beban atau proxy terbalik. Ini adalah praktik terbaik untuk mengizinkan akses ke port 8080 hanya dari jaringan internal Anda.

Mengonfigurasi Antarmuka Manajemen Web Tomcat #

Pada titik ini, Anda seharusnya dapat mengakses Tomcat dengan browser web pada port 8080 . Antarmuka manajemen web tidak dapat diakses karena kami belum membuat pengguna.

Pengguna dan peran Tomcat didefinisikan dalam tomcat-users.xml mengajukan. File ini adalah template dengan komentar dan contoh yang menunjukkan cara membuat pengguna atau peran.

Dalam contoh ini, kami akan membuat pengguna dengan peran "admin-gui" dan "manager-gui". Peran “admin-gui” memungkinkan pengguna untuk mengakses /host-manager/html URL dan buat, hapus, dan kelola host virtual. Peran "manager-gui" memungkinkan pengguna untuk menerapkan dan membatalkan penerapan aplikasi web tanpa harus memulai ulang seluruh wadah melalui /host-manager/html antarmuka.

Buka tomcat-users.xml file dan buat pengguna baru, seperti yang ditunjukkan di bawah ini:

sudo nano /opt/tomcat/latest/conf/tomcat-users.xml
/opt/Tomcat/latest/conf/Tomcat-users.xml
<tomcat-users>
<!--
    Comments
-->
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

Pastikan Anda mengubah nama pengguna dan sandi menjadi sesuatu yang lebih aman.

Secara default, antarmuka manajemen web Tomcat dikonfigurasi untuk mengizinkan akses ke aplikasi Manajer dan Manajer Host hanya dari host lokal. Untuk mengakses antarmuka web dari IP jarak jauh, Anda harus menghapus batasan ini. Ini mungkin memiliki berbagai implikasi keamanan, dan tidak disarankan untuk sistem produksi.

Untuk mengaktifkan akses ke antarmuka web dari mana saja, buka dua file berikut dan beri komentar atau hapus baris yang disorot dengan warna kuning.

Untuk aplikasi Manajer:

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

Untuk aplikasi Pengelola Host:

sudo nano /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
context.xml
<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>

Jika Anda ingin mengakses antarmuka web hanya dari IP tertentu, alih-alih mengomentari blok, tambahkan IP publik Anda ke daftar.

Katakanlah IP publik Anda adalah 41.41.41.41 dan Anda ingin mengizinkan akses hanya dari IP itu:

context.xml
<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|41.41.41.41" />
</Context>

Daftar alamat IP yang diizinkan adalah daftar yang dipisahkan dengan bilah vertikal | . Anda dapat menambahkan satu alamat IP atau menggunakan ekspresi reguler.

Setelah selesai, mulai ulang layanan Tomcat agar perubahan diterapkan:

sudo systemctl restart tomcat

Uji Instalasi Tomcat #

Buka browser Anda dan ketik:http://<your_domain_or_IP_address>:8080

Dengan asumsi instalasi berhasil, layar yang mirip dengan berikut akan muncul:

Manajer aplikasi web Tomcat tersedia di:http://<your_domain_or_IP_address>:8080/manager/html .

Manajer host virtual Tomcat tersedia di:http://<your_domain_or_IP_address>:8080/host-manager/html .


Ubuntu
  1. Cara Menginstal Tomcat di Ubuntu 18.04

  2. Cara menginstal Tomcat 8 di ubuntu 14.04

  3. Cara Menginstal Tomcat di Ubuntu 18.04

  1. Cara Menginstal Tomcat 9 di CentOS 7

  2. Cara Menginstal Docker Di Ubuntu 18.04

  3. Cara Menginstal Apache di Ubuntu 18.04

  1. Cara Menginstal MariaDB 10.4 di Ubuntu 18.04

  2. Cara Menginstal MongoDB di Ubuntu 18.04

  3. Cara Menginstal Jenkins di Ubuntu 18.04