Cara Install Apache Tomcat 9 di Ubuntu 18.04

Apache Tomcat adalah aplikasi web server dengan lisensi open source untuk menjalankan Java Servlet, JavaServer Pages, Java Expression Language, dan Java WebSocket.

*Install Apache Tomcat*

Sebelum install Apache Tomcat, update terlebih dahulu dan install default-jdk.

[INPUT]

1 2 sudo apt update sudo apt install default-jdk -y

Membuat group dan user tomcat.

[INPUT]

1 2 sudo addgroup tomcat sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat  

Download Apache Tomcat 9

[INPUT]

1 wget -c https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.31/bin/apache-tomcat-9.0.31.tar.gz

Mengekstrak file apache-tomcat-*.tar.gz, mengcopy ke folder tomcat, dan mengubah owner dan permissionnya.

[INPUT]

1 2 3 4 5 6 7 8 tar xzvf apache-tomcat-*tar.gz -C /opt cd /opt sudo mv apache-tomcat-9.0.31 tomcat sudo chgrp -R tomcat /opt/tomcat cd tomcat sudo chmod -R g+r conf sudo chmod g+x conf sudo chown -R tomcat webapps/ work/ temp/ logs/

Mengecek di mana folder Java-JDK untuk dimasukkan ke dalam konfigurasi tomcat service. Hasilnya berada di /usr/lib/jvm/java-1.11.0-openjdk-amd64.

[INPUT]

1 2 3 sudo update-java-alternatives -l   java-1.11.0-openjdk-amd64      1111       /usr/lib/jvm/java-1.11.0-openjdk-amd64

Membuat file konfigurasi tomcat service.

[INPUT]

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

Isi dari file konfigurasi tomcat service

[INPUT]

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 [Unit] Description=Apache Tomcat Web Application Container After=network.target   [Service] Type=forking   Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64 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  

Reload konfigurasi service, jalankan dan aktifkan tomcat service. Status service harus active (running).

Apache Tomcat service

[INPUT]

1 2 3 4 sudo systemctl daemon-reload sudo systemctl start tomcat sudo systemctl enable tomcat sudo systemctl status tomcat    

Browse http://ip-server:8080 untuk menguji apakah Apache Tomcat sudah berjalan dengan baik.

Apache Tomcat Web Management Interface

*Konfigurasi Tomcat Web Management Interface*

Konfigurasi user yang mengakses web management interface.

[INPUT]

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

Masukkan konfigurasi user di bawah ini di antara tag tomcat-users. User ini yang dapat mengakses manager-gui dan admin-gui.

[INPUT]

1

Tomcat users configuration

Secara default, Tomcat membatasi akses ke Manager dan Host Manager, hanya bisa diakses dari localhost atau 127.0.0.1 saja. Karena Tomcat web management interface diakses secara remote, maka konfigurasi pembatasan akses harus dinonatkifkan atau menuliskan IP Publik dari internet yang kita gunakan untuk mengakses Tomcat web management interface.

File konfigurasi untuk Manager.

[INPUT]

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

File konfigurasi untuk Host Manager.

[INPUT]

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

Beri komentar pada konfigurasi Valve className=”org.apache.catalina.valves.RemoteAddrValve.

[INPUT]

1 2 3 4 5 …         

Apache Tomcat Manager/Host Manager remote configuration

Restart tomcat service.

[INPUT]

1 2 sudo systemctl restart tomcat sudo systemctl status tomcat

Browse http://ip-server:8080.

Uji klik menu Server Status, Manager App, dan Host Manager, harus bisa diakses.

Apache Tomcat server status

Apache Tomcat manager app

Apache Tomcat host app

*Menjalankan File JSP*

Selanjutnya menguji menjalankan file JSP.

Folder Document Root berada di /opt/tomcat/webapps/ROOT.

[INPUT]

1 2 cd /opt/tomcat/webapps/ROOT sudo nano date.jsp

Menampilkan tanggal dengan JSP.

[INPUT]

1 2 3 4 5 6 7 8 9 10 11 <%@ page language="java" contentType="text/html"%> <%@ page import="java.text.*,java.util.*" %> Date JSP <% SimpleDateFormat sdf=new SimpleDateFormat("MM/dd/yyyy"); %>

Welcome to Tomcat! Today is <%= sdf.format(new Date()) %>

[INPUT]

1 2 sudo chown tomcat:tomcat date.jsp sudo chmod 640 date.jsp    

Browse http://ip-server:8080/date.jsp

Date JSP

*Redirect Port*

Secara default, Tomcat web server berjalan di port 8080. Agar Tomcat dapat diakses melalui port 80, kita dapat melakukannya dengan cara menambahkan rules di iptables.

Rules ini akan mem-forward atau me-redirect permintaan akses port 80 ke 8080 (HTTP) dan 443 ke 8443 (HTTPS)

[INPUT]

1 2 3 4 5 6 sudo apt install iptables-persistent -y sudo iptables -t nat -I PREROUTING -p tcp –dport 80  -j REDIRECT –to-port 8080 sudo iptables -t nat -I PREROUTING -p tcp –dport 443 -j REDIRECT –to-port 8443 sudo iptables -L sudo netfilter-persistent save sudo netfilter-persistent reload    

Browse http://ip-server, apakah sudah bisa diakses melalui port 80.

Apache Tomcat via port 80

Selamat mencoba 🙂

Leave a Reply

Your email address will not be published.