GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Tomcat 9 di CentOS 8

Apache Tomcat adalah implementasi open-source dari Java Servlet, JavaServer Pages, Java Expression Language, dan teknologi Java WebSocket. Ini adalah salah satu aplikasi dan server web yang paling banyak diadopsi di dunia saat ini. Tomcat mudah digunakan dan memiliki ekosistem pengaya yang kuat.

Tutorial ini menjelaskan cara menginstal Tomcat 9.0 di CentOS 8.

Menginstal Java #

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

Jalankan perintah berikut sebagai root atau pengguna dengan hak sudo untuk menginstal Java:

sudo dnf install java-11-openjdk-devel

Setelah instalasi selesai, verifikasi dengan memeriksa versi Java:

java -version

Outputnya akan terlihat seperti ini:

openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, 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.30 . Sebelum melanjutkan ke langkah berikutnya, periksa halaman unduhan Tomcat 9 untuk melihat apakah versi yang lebih baru tersedia.

Unduh file zip Tomcat dengan wget ke /tmp direktori:

VERSION=9.0.30wget 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. 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

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

sudo chown -R tomcat: /opt/tomcat

Buat skrip shell di dalam bin direktori yang dapat dieksekusi:

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

Skrip ini digunakan untuk memulai dan menghentikan Tomcat.

Membuat File Unit Systemd #

Alih-alih memulai dan menghentikan server Tomcat secara manual, 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

Tempel konten 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/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

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

Simpan dan tutup file.

Beri tahu systemd bahwa ada file layanan baru, dengan mengetik:

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: disabled)
   Active: active (running) since Wed 2020-01-15 20:38:07 UTC; 30s ago
  Process: 3957 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
  ...

Mengonfigurasi Firewall #

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

Gunakan perintah berikut untuk membuka port yang diperlukan:

sudo firewall-cmd --permanent --zone=public --add-port=8080/tcpsudo firewall-cmd --reload
Biasanya, 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 berkas.

Jika Anda membuka file, Anda akan melihat bahwa file tersebut dipenuhi dengan komentar dan contoh yang menjelaskan cara mengkonfigurasi file.

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

Untuk membuat pengguna baru yang dapat mengakses antarmuka web Tomcat (manager-gui dan admin-gui), edit file seperti yang ditunjukkan di bawah ini. Pastikan Anda mengubah nama pengguna dan sandi menjadi sesuatu yang lebih aman:

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

Secara default, antarmuka manajemen web Tomcat dikonfigurasi untuk mengizinkan akses hanya dari host lokal.

Jika Anda perlu mengakses antarmuka web dari mana saja, buka file berikut dan beri komentar atau hapus baris yang disorot dengan warna kuning:

/opt/Tomcat/latest/webapps/manager/META-INF/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>
/opt/Tomcat/latest/webapps/host-manager/META-INF/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>

Harap diperhatikan, tidak disarankan untuk mengizinkan akses dari mana saja karena ini merupakan risiko keamanan.

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:

/opt/Tomcat/latest/webapps/manager/META-INF/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>
/opt/Tomcat/latest/webapps/host-manager/META-INF/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

Menguji Instalasi #

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

Setelah instalasi berhasil, layar yang mirip dengan berikut akan muncul:

Dasbor manajer aplikasi web Tomcat memungkinkan Anda untuk menyebarkan, membatalkan penerapan, memulai, menghentikan, dan memuat ulang aplikasi Anda. Ini tersedia di:http://<your_domain_or_IP_address>:8080/manager/html .

Dasbor pengelola host virtual Tomcat memungkinkan Anda membuat, menghapus, dan mengelola host virtual Tomcat. Ini tersedia di:http://<your_domain_or_IP_address>:8080/host-manager/html .


Cent OS
  1. Cara Menginstal Java di CentOS 8

  2. Cara Menginstal GlassFish di CentOS 7

  3. Bagaimana Cara Menginstal Tomcat 7 di Centos?

  1. Cara Menginstal Java 11 &12 di CentOS 7

  2. Cara Menginstal Apache Tomcat 8 di CentOS

  3. Cara Instal Apache Tomcat di CentOS 7

  1. Cara Menginstal Java 8 &11 di Centos 8

  2. Cara Menginstal Java di CentOS 7

  3. Cara Menginstal Tomcat 8.5 di CentOS 7