Cách cài đặt Apache Tomcat với Nginx Reverse Proxy trên Ubuntu 24.04

theanh

Administrator
Nhân viên
Apache Tomcat hay "Tomcat" là một trình chứa Java Servlet mã nguồn mở và miễn phí cho mã Java và các ứng dụng. Nó cung cấp một môi trường máy chủ HTTP "thuần Java" nơi mã Java có thể chạy. Tomcat cũng triển khai các công nghệ JavaServer Pages, Java Expression Language và WebSocket. Nó hỗ trợ SSL để bảo mật dữ liệu nhạy cảm như xác thực.

Hướng dẫn này sẽ hướng dẫn bạn cách cài đặt Apache Tomcat trên máy chủ Ubuntu 24.04. Bạn sẽ cài đặt Apache Tomcat 10 với Java OpenJDK 21, sau đó cài đặt và cấu hình Nginx làm proxy ngược.

Điều kiện tiên quyết​

Trước khi tiếp tục, hãy đảm bảo rằng bạn có:
  • Máy chủ Ubuntu 24.04.
  • Người dùng không phải root có quyền quản trị viên.

Cài đặt Java OpenJDK​

Trước khi cài đặt Apache Tomcat, bạn cần đảm bảo rằng Java đã được cài đặt. Apache Tomcat 10 mới nhất yêu cầu ít nhất Java 11 trở lên. Trong phần này, bạn sẽ cài đặt Java OpenJDK 21 từ kho lưu trữ Ubuntu chính thức.

Để bắt đầu, hãy cập nhật chỉ mục gói Ubuntu của bạn bằng lệnh bên dưới.
Mã:
sudo apt update

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22190%22%3E%3C/svg%3E


Bây giờ hãy cài đặt Java OpenJDK bằng lệnh sau. Trên Ubuntu 24.04, 'default-jdk' tham chiếu đến OpenJDK 21, là phiên bản LTS của Java.
Mã:
sudo apt install default-jdk
Nhập Y để tiếp tục cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22242%22%3E%3C/svg%3E


Sau khi cài đặt đã hoàn tất, hãy kiểm tra phiên bản Java bằng lệnh sau. Bạn sẽ thấy Java OpenJDK 21 đã được cài đặt trên máy chủ Ubuntu của bạn.
Mã:
java --version

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22122%22%3E%3C/svg%3E

Cài đặt Apache Tomcat 10​

Apache Tomcat 10 có sẵn theo mặc định trên kho lưu trữ Ubuntu trên phiên bản Ubuntu mới nhất. Điều này cho phép bạn cài đặt Tomcat dễ dàng bằng trình quản lý gói APT.

Đầu tiên, hãy kiểm tra thông tin gói 'tomcat10' bằng lệnh sau.
Mã:
sudo apt info tomcat10
Những thông tin sau đây cho thấy Apache Tomcat 10.1.16 có sẵn trên kho lưu trữ 'universe/java' của Ubuntu.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22553%22%3E%3C/svg%3E


Bây giờ hãy cài đặt Apache Tomcat vào hệ thống Ubuntu của bạn bằng lệnh bên dưới. Với lệnh này, bạn cũng sẽ cài đặt các ứng dụng web quản trị Tomcat, các công cụ để tạo người dùng và các ví dụ về các ứng dụng web Tomcat.
Mã:
sudo apt install tomcat10 tomcat10-common tomcat10-admin tomcat10-user tomcat10-examples
Nhập Y để xác nhận cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22207%22%3E%3C/svg%3E


Dịch vụ 'tomcat10' sẽ được tạo khi quá trình cài đặt hoàn tất.

Kiểm tra trạng thái dịch vụ 'tomcat10' bằng lệnh sau:
Mã:
sudo systemctl is-enabled tomcat10
sudo systemctl status tomcat10
Bạn có thể thấy bên dưới, dịch vụ 'tomcat10' đã được bậthoạt động (đang chạy). Dịch vụ 'tomcat10' sẽ tự động khởi động khi khởi động.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22269%22%3E%3C/svg%3E


Bây giờ hãy chạy lệnh bên dưới để kiểm tra cổng Apache Tomcat 8080. Nếu Tomcat đang chạy, bạn sẽ thấy ứng dụng Java sử dụng cổng 8080.
Mã:
ss -tulpn

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22143%22%3E%3C/svg%3E


Cuối cùng, hãy truy cập http://192.168.5.30:8080/ bằng trình duyệt web của bạn và bạn sẽ thấy trang chỉ mục mặc định của Apache Tomcat như sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22238%22%3E%3C/svg%3E

Thiết lập xác thực Apache Tomcat​

Trong phần này, bạn sẽ thiết lập xác thực cơ bản và cho phép truy cập vào trình quản lý máy chủ Tomcat và trình quản lý. Bạn sẽ bật xác thực cơ bản Tomcat bằng cách chỉnh sửa tệp 'tomcat-users.xml', sau đó cho phép truy cập vào cả trình quản lý máy chủ Tomcat và trình quản lý thông qua gói 'tomcat10-admin'.

Mở cấu hình người dùng Tomcat '/etc/tomcat10/tomcat-users.xml' bằng trình chỉnh sửa nano.
Mã:
sudo nano /etc/tomcat10/tomcat-users.xml
Chèn cấu hình sau vào giữa '<tomcat-users...> .... </tomcat-users>'. Trong ví dụ này, bạn sẽ tạo người dùng Apache Tomcat 'admin' với mật khẩu 'tomcatadmin' và nhiều vai trò bao gồm 'admin-gui' và 'manager-gui'.
Mã:
Mã:
When finished, save and exit the file.
Bây giờ hãy mở cấu hình cho Tomcat 'host-manager' và 'người quản lý' bằng lệnh nano editor bên dưới.
Mã:
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 về cấu hình sau bằng cách thêm '<!-- ... -->'. Với lệnh này, bạn sẽ cho phép truy cập từ xa vào 'host-manager' và 'manager' của Apache Tomcat.
Mã:
Lưu và thoát khỏi tệp.

Sau khi chỉnh sửa, hãy chạy lệnh sau để khởi động lại dịch vụ 'tomcat10' và áp dụng các thay đổi mới cho Apache Tomcat của bạn cài đặt.
Mã:
sudo systemctl restart tomcat10
Cuối cùng, hãy truy cập http://192.168.5.30:8080/host-manager/ để truy cập trình quản lý máy chủ ảo Apache Tomcat và http://192.168.5.30:8080/manager/ để truy cập trình quản lý Tomcat.

Nhập tên người dùng 'admin' và mật khẩu 'tomcatadmin' khi được nhắc.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22472%22%20height=%22330%22%3E%3C/svg%3E


Nếu xác thực thành công, bạn sẽ nhận được trang quản lý máy chủ và trình quản lý Apache Tomcat như sau:

Trình quản lý Apache Tomcat.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22444%22%3E%3C/svg%3E


Apache Tomcat host-manager.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22429%22%3E%3C/svg%3E

Thiết lập Nginx làm proxy ngược​

Trong hướng dẫn này, bạn sẽ cài đặt máy chủ web Nginx và định cấu hình nó làm proxy ngược cho cài đặt Apache Tomcat của bạn. Bằng cách sử dụng proxy ngược, bạn có thể dễ dàng truy cập ứng dụng Tomcat của mình thông qua tên miền cục bộ.

Để cài đặt máy chủ web Nginx trên Ubuntu, hãy chạy lệnh sau:
Mã:
sudo apt install nginx -y

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22374%22%3E%3C/svg%3E


Khi quá trình cài đặt hoàn tất, hãy tạo cấu hình khối máy chủ mới '/etc/nginx/sites-available/tomcat10' sẽ được sử dụng làm proxy ngược cho Apache Tomcat.
Mã:
sudo nano /etc/nginx/sites-available/tomcat10
Thêm cấu hình bên dưới và thay đổi tên miền cục bộ của bạn bằng tùy chọnserver_name.
Mã:
server {
 listen 80;

 server_name tomcat10.howtoforge.local;
 access_log /var/log/nginx/tomcat-access.log;
 error_log /var/log/nginx/tomcat-error.log;

 location / {
 proxy_set_header X-Forwarded-Host $host;
 proxy_set_header X-Forwarded-Server $host;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_pass http://127.0.0.1:8080/;
 }
}
Lưu và thoát tệp khi hoàn tất.

Bây giờ hãy chạy lệnh bên dưới để kích hoạt cấu hình khối máy chủ 'tomcat10' và kiểm tra cú pháp Nginx của bạn.
Mã:
sudo ln -s /etc/nginx/sites-available/tomcat10 /etc/nginx/sites-enabled/
sudo nginx -t
Nếu bạn có cú pháp Nginx đúng và phù hợp, bạn sẽ thấy đầu ra 'cú pháp ổn ... thử nghiệm thành công'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22141%22%3E%3C/svg%3E


Tiếp theo, chạy lệnh sau để khởi động lại dịch vụ Nginx và áp dụng khối máy chủ 'tomcat10'. Sau đó, xác minh trạng thái dịch vụ Nginx để đảm bảo nó đang chạy.
Mã:
sudo systemctl restart nginx
sudo systemctl status nginx
Kết quả bên dưới cho thấy máy chủ web Nginx đang chạy. Và bạn có thể truy cập cài đặt Apache Tomcat của mình bằng tên miền như 'tomcat10.howtoforge.local'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22220%22%3E%3C/svg%3E


Bạn có thể thêm cấu hình sau vào tệp 'hosts' trên máy cục bộ của mình. Đối với người dùng Linux hoặc Mac, hãy thêm nội dung sau vào tệp '/etc/hosts'. Đối với người dùng Windows, hãy thêm cấu hình bên dưới vào tệp 'C:\Windows\System32\drivers\etc\hosts'.
Mã:
192.168.5.30 tomcat10.howtoforge.local
Cuối cùng, hãy truy cập http://tomcat10.howtoforge.local bằng trình duyệt web của bạn. Nếu cài đặt proxy ngược Nginx thành công, bạn sẽ thấy trang chỉ mục Apache Tomcat như sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22321%22%3E%3C/svg%3E


Truy cập http://tomcat10.howtoforge.local/host-manager/ để truy cập trình quản lý máy chủ Apache Tomcat và http://tomcat10.howtoforge.local/manager/ để truy cập trình quản lý Apache Tomcat. Bạn sẽ thấy cả hai ứng dụng đang chạy dưới proxy ngược Nginx.

Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công Apache Tomcat trên máy chủ Ubuntu 24.04. Bạn đã cài đặt Tomcat 10 với Java OpenJDK 21 trên Ubuntu. Ngoài ra, bạn đã cài đặt và cấu hình Nginx làm proxy ngược cho Apache Tomcat.
 
Back
Bên trên