tomcat10

Hướng dẫn cài đặt Apache Tomcat với Nginx Reverse Proxy trên Ubuntu 24.04

Apache Tomcat, hay gọi tắt là “Tomcat”, là một container Servlet mã nguồn mở và miễn phí cho các ứng dụng Java. Nó cung cấp môi trường HTTP “pure Java” để chạy mã Java, đồng thời hỗ trợ triển khai JavaServer Pages, Java Expression Language và công nghệ WebSocket. Ngoài ra, Tomcat còn hỗ trợ SSL nhằm bảo mật các dữ liệu nhạy cảm như thông tin đăng nhập.

Trong bài viết dưới đây, chúng ta sẽ cùng tìm hiểu cách cài đặt Apache Tomcat 10 trên máy chủ Ubuntu 24.04, sử dụng Java OpenJDK 21 và cấu hình Nginx làm reverse proxy để dễ dàng truy cập ứng dụng qua tên miền cục bộ.

Yêu Cầu Trước Khi Cài Đặt

Trước khi tiến hành, hãy đảm bảo bạn đã có:

  • Máy chủ Ubuntu 24.04.
  • Người dùng không phải root với quyền quản trị.

1. Cài Đặt Java OpenJDK

Trước khi cài Apache Tomcat, cần cài đặt Java vì Tomcat 10 yêu cầu tối thiểu Java 11 trở lên. Ở đây, chúng ta sẽ cài đặt Java OpenJDK 21 từ kho lưu trữ chính thức của Ubuntu.

Bước 1: Cập Nhật Danh Sách Gói

Mở terminal và chạy lệnh:

sudo apt update

Bước 2: Cài Đặt Java OpenJDK

Trên Ubuntu 24.04, gói default-jdk tương ứng với OpenJDK 21 (phiên bản LTS của Java):

sudo apt install default-jdk

Nhập “Y” khi được yêu cầu xác nhận cài đặt.

Bước 3: Kiểm Tra Phiên Bản Java

Xác nhận cài đặt Java thành công bằng lệnh:

java --version

java --version

Bạn sẽ thấy thông tin về Java OpenJDK 21 hiển thị trên terminal.

2. Cài Đặt Apache Tomcat 10

Apache Tomcat 10 có sẵn trong kho lưu trữ của Ubuntu, giúp việc cài đặt trở nên đơn giản qua APT.

Bước 1: Kiểm Tra Thông Tin Gói Tomcat10

Chạy lệnh sau để xem thông tin gói:

sudo apt info tomcat10

sudo apt info tomcat10

Bạn sẽ thấy thông tin về Apache Tomcat 10.1.16 có sẵn từ kho lưu trữ universe/java.

Bước 2: Cài Đặt Tomcat và Các Thành Phần Liên Quan

Cài đặt Tomcat cùng các gói bổ trợ như sau:

sudo apt install tomcat10 tomcat10-common tomcat10-admin tomcat10-user tomcat10-examples

install tomcat10

Nhập “Y” để xác nhận cài đặt. Sau khi cài đặt xong, dịch vụ tomcat10 sẽ được tạo tự động.

Bước 3: Kiểm Tra Trạng Thái Dịch Vụ Tomcat

Xác minh trạng thái của Tomcat với các lệnh:

sudo systemctl is-enabled tomcat10
sudo systemctl status tomcat10

sudo systemctl status tomcat10

Kết quả cho thấy dịch vụ tomcat10 đã được kích hoạt và đang chạy, đồng thời nó sẽ tự khởi động khi máy chủ bật.

Bước 4: Kiểm Tra Cổng 8080

Chạy lệnh sau để kiểm tra cổng 8080, cổng mặc định của Tomcat:

ss -tulpn

ss -tulpn

Nếu Tomcat đang chạy, bạn sẽ thấy ứng dụng Java sử dụng cổng 8080.

Bước 5: Kiểm Tra Giao Diện Tomcat

Mở trình duyệt và truy cập:

http://10.100.160.166:8080/

apache tomcat10

Bạn sẽ thấy trang index mặc định của Apache Tomcat hiện lên.

3. Cấu Hình Xác Thực Cho Apache Tomcat

Để bảo mật, chúng ta cần thiết lập xác thực cơ bản cho trang quản trị Tomcat (host-manager và manager).

Bước 1: Chỉnh Sửa File Người Dùng Tomcat

Mở file /etc/tomcat10/tomcat-users.xml:

sudo nano /etc/tomcat10/tomcat-users.xml

Chèn đoạn cấu hình sau vào giữa thẻ <tomcat-users>...</tomcat-users> để tạo người dùng admin với mật khẩu tomcatadmin và cấp các quyền cần thiết:

<tomcat-users>
  <!--
    user: admin pass: tomcatadmin
  -->
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <role rolename="admin-gui"/>
  <role rolename="admin-script"/>
  <user username="admin" password="tomcatadmin" roles="manager-gui, manager-script, manager-jmx, manager-status, admin-gui, admin-script"/>
</tomcat-users>

Lưu và thoát file sau khi chỉnh sửa.

enable password

Bước 2: Cho Phép Truy Cập Từ Xa

Mở file cấu hình cho host-managermanager:

sudo nano /usr/share/tomcat10-admin/host-manager/META-INF/context.xml
sudo nano /usr/share/tomcat10-admin/manager/META-INF/context.xml

Bình luận đoạn cấu hình sau bằng cách thêm <!-- ... --> để cho phép truy cập từ xa:

<!--
 <Valve className="org.apache.catalina.valves.RemoteAddrValve"
 allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->

Lưu và thoát file.

disable local remote

Bước 3: Khởi Động Lại Tomcat

Áp dụng thay đổi bằng cách khởi động lại dịch vụ Tomcat:

sudo systemctl restart tomcat10

Bước 4: Kiểm Tra Trang Quản Trị Tomcat

  • Truy cập trang host-manager tại:
    http://10.100.160.166:8080/host-manager/
  • Truy cập trang manager tại:
    http://10.100.160.166:8080/manager/

Khi được yêu cầu, nhập thông tin đăng nhập: admin / tomcatadmin. Nếu đăng nhập thành công, bạn sẽ thấy giao diện quản trị của Apache Tomcat.

4. Thiết Lập Nginx Làm Reverse Proxy

Sử dụng Nginx làm reverse proxy giúp bạn truy cập Apache Tomcat qua tên miền cục bộ một cách dễ dàng.

Bước 1: Cài Đặt Nginx

Cài đặt Nginx bằng lệnh:

sudo apt install nginx -y

Bước 2: Tạo Cấu Hình Server Block Cho Tomcat

Tạo file cấu hình mới tại /etc/nginx/conf.d/tomcat10.conf:

sudo nano /etc/nginx/sites-available/tomcat10

Thêm nội dung cấu hình sau, thay đổi server_name theo tên miền bạn mong muốn:

server {
    listen 80;
    server_name tomcat10.sysadminskills.com;

    location / {
        proxy_pass http://10.100.160.166:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Lưu file và thoát.

nginx

Bước 3: Kích Hoạt Cấu Hình và Kiểm Tra Syntax của Nginx

Kiểm tra cú pháp Nginx:

sudo nginx -t

Nếu cú pháp đúng, bạn sẽ nhận thông báo “syntax is ok” và “test is successful”.

Bước 4: Khởi Động Lại Nginx

Khởi động lại Nginx để áp dụng cấu hình mới:

sudo systemctl restart nginx
sudo systemctl status nginx

Xác nhận Nginx đã chạy thành công.

Bước 5: Cấu Hình File Hosts (Nếu chưa có domain)

Để truy cập Tomcat qua tên miền cục bộ, thêm dòng sau vào file hosts:

  • Linux/Mac: Mở file /etc/hosts.
  • Windows: Mở file C:\Windows\System32\drivers\etc\hosts.

Thêm dòng:

10.100.160.166 tomcat10.sysadminskills.com

Nếu đã trỏ tên miền, cài đặt SSL cho tên miền bằng certbot:

ssl tomcat

Bước 6: Truy Cập Apache Tomcat Qua Tên Miền

  • Truy cập trang mặc định của Tomcat tại:
    https://tomcat10.sysadminskills.com
  • Truy cập host-manager tại:
    https://tomcat10.sysadminskills.com/host-manager/
  • Truy cập manager tại:
    https://tomcat10.sysadminskills.com/manager/

Nếu cấu hình reverse proxy thành công, bạn sẽ thấy trang index của Apache Tomcat được phục vụ qua Nginx.

tomcat10 ssl

5. Kết Luận

Chúc mừng! Bạn đã cài đặt thành công Apache Tomcat 10 cùng với Java OpenJDK 21 trên máy chủ Ubuntu 24.04 và cấu hình Nginx làm reverse proxy. Qua bài viết này, bạn đã nắm được quy trình cài đặt cũng như cấu hình bảo mật và truy cập từ xa cho Tomcat, giúp quản lý ứng dụng Java một cách hiệu quả và an toàn.

Bài viết này được tối ưu SEO với các từ khóa: Apache Tomcat, Ubuntu 24.04, Java OpenJDK 21, Nginx reverse proxy, cài đặt Tomcat trên Ubuntu. Hy vọng hướng dẫn sẽ là nguồn tài liệu hữu ích cho bạn trong việc triển khai ứng dụng Java.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *