Cài đặt Apache Tomcat 9 Linux: Hướng dẫn từng bước

Cài đặt Apache Tomcat 9 Linux: Hướng dẫn từng bước

Chia sẻ kiến thức 05/05/2022

Nếu bạn muốn lưu trữ hoặc phát triển các ứng dụng web Java, bạn cần Apache Tomcat. Đây là cách cài đặt Apache Tomcat 9 trên Linux.

Apache Tomcat là một máy chủ web mã nguồn mở và container cho servlet để chạy các ứng dụng Java. Nó là máy chủ ứng dụng phổ biến nhất được sử dụng với các ứng dụng web Java. Có 100 công ty bao gồm eBay, Alibaba và MIT sử dụng nó.

Dưới đây là hướng dẫn từng bước để tải xuống Tomcat 9.0.45. Codeở đây đã được thử nghiệm trên Debian 10. Điều đó có nghĩa là nếu bạn đang sử dụng bất kỳ bản phân phối dựa trên Debian nào như Ubuntu hoặc Kali Linux (hoặc chính Debian), bạn có thể làm theo.

Điều kiện để cài đặt Apache Tomcat 9

Bạn cần phải là người dùng có đặc quyền sudo. Nếu bạn không phải là người dùng sudo/root, bạn có thể làm như sau để có được đặc quyền người dùng đó:

a) Tạo người dùng mới

Đăng nhập với tư cách root và trong terminal của bạn, hãy nhập lệnh sau:

$ adduser newuser

Bạn sẽ được nhắc cung cấp mật khẩu. Bạn cũng sẽ được yêu cầu cung cấp thêm thông tin như tên và số điện thoại nhưng bạn chỉ cần nhấn phím enter để bỏ qua.

b) Thêm người dùng vào nhóm sudo

$ usermod -aG sudo newuser

Bây giờ bạn có một người dùng sudo được gọi là newuser.

>> CÓ LIÊN QUAN:Thêm Người Dùng Vào Nhóm Sudoers

Bước 1: Cài đặt OpenJDK

Để cài đặt Tomcat 9, bạn cần cài đặt Java Standard Edition (SE) 8 trở lên. Làm điều này bằng cách cài đặt OpenJDK, một triển khai mã nguồn mở của Java SE và Bộ phát triển Java (JDK).

Trước tiên, bạn sẽ cần cập nhật gói apt:

$ sudo apt update

Tiếp tục:

$ sudo apt install default-jdk

Tại thời điểm viết bài này, OpenJDK14 là phiên bản mới nhất của OpenJDK. Sau khi cài đặt xong, hãy xác minh bằng cách kiểm tra phiên bản java của bạn như bên dưới:

$ java -version

Bước 2: Tạo người dùng Tomcat

Bạn có thể sử dụng Tomcat với tư cách là người dùng root nhưng điều này gây ra mối đe dọa bảo mật nghiêm trọng. Do đó, bạn sẽ cần tạo một người dùng mới sẽ chạy dịch vụ với thư mục chính là /opt/tomcat. Thư mục này là nơi bạn sẽ cài đặt Tomcat, được tạo bằng shell /bin/false để không ai có thể đăng nhập vào nó.

Chạy lệnh dưới đây để thực hiện việc này:

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

Bước 3: Cài đặt Tomcat

Bản phân phối nhị phân chính thức của Tomcat có thể được lấy từ trang tải xuống Tomcat.

Bạn có thể sử dụng lệnh wget để tải xuống tệp zip Tomcat vàothư mục /tmp, một vị trí thư mục tạm thời.

$ cd /tmp
$ wget https://mirror.kiu.ac.ug/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz

Nếu bạn gặp sự cố khi sử dụng wget, bạn có thể sử dụng lệnh curl để tải xuống Tomcat. Đầu tiên, tải xuống curl:

$ sudo apt install curl

Sau đó, sử dụng curl với đường link bạn nhận được từ trang web Tomcat:

$ curl -O https://mirror.kiu.ac.ug/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz

LƯU Ý: Nếu bạn đã sử dụng wget, thì không cần phải sử dụng thêm curl nữa. 

Khi quá trình tải xuống hoàn tất, hãy giải nén kho lưu trữ vào thư mục /opt/tomcat:

$ sudo mkdir /opt/tomcat
$ tar -xf apache-tomcat-9.0.45.tar.gz
$ sudo mv apache-tomcat-9.0.45 /opt/tomcat/

Tomcat nhận được các bản cập nhật thường xuyên với các bản sửa lỗi và bản vá bảo mật. Để đảm bảo rằng bạn có nhiều quyền kiểm soát hơn đối với các bản cập nhật này, hãy tạo một liên kết tượng trưng có tên là latest trỏ đến thư mục cài đặt.

$ sudo ln -s /opt/tomcat/apache-tomcat-9.0.45 /opt/tomcat/latest

Khi bạn nhận được bản cập nhật, tất cả những gì bạn phải làm là giải nén bản tải xuống và làm cho liên kết tượng trưng trỏ đến bản cập nhật đó.

Tiếp theo, cập nhật quyền. Lệnh dưới đây cấp quyền cho người dùng và nhóm Tomcat:

$ sudo chown -R tomcat: /opt/tomcat

Bạn cần làm cho các tập lệnh shell trong thư mục bin của Tomcat có thể thực thi được:

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

Bước 4: Tạo tệp đơn vị

Bạn sẽ cần chạy Tomcat như một dịch vụ thay vì sử dụng các tập lệnh shell. Điều này yêu cầu tệp đơn vị systemd trong thư mục /etc/systemd/system/:

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

Bây giờ dán cấu hình bên dưới.

[Unit]
Description=Tomcat 9.0 servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/default-java"
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

Lưu và đóng tập tin. Sau đó tải lại systemctl để đảm bảo rằng các thay đổi mới được hệ thống thừa nhận:

$ sudo systemctl daemon-reload

Bây giờ hãy bắt đầu dịch vụ Tomcat:

$ sudo systemctl start tomcat

Kiểm tra xem ứng dụng đã khởi động mà không có bất kỳ lỗi nào không:

$ sudo systemctl status tomcat

Kết quả trên xác nhận rằng máy chủ Tomcat đang hoạt động.

Bạn lcó thể quản lý dịch vụ Tomcat của mình giống như bất kỳ dịch vụ systemd nào khác:

$ sudo systemctl start tomcat
$ sudo systemctl stop tomcat
$ sudo systemctl restart tomcat

Bước 5: Định cấu hình cài đặt tường lửa

Bạn có thể cần truy cập máy chủ của mình ngoài mạng cục bộ. Để làm điều này, hãy điều chỉnh cài đặt tường lửa của bạn và mở cổng 8080.

$ sudo ufw allow 8080/tcp

Sau khi sửa đổi các quyền của tường lửa, bây giờ bạn có thể truy cập trang Tomcat mặc định bằng cách truy cập địa chỉ ip-của bạn: 8080 trong trình duyệt web. Không nhấp vào liên kết cho Ứng dụng Manager của bạn ở giai đoạn này, vì bạn sẽ bị từ chối quyền truy cập (bạn có thể định cấu hình sau).

Nếu bạn muốn dịch vụ Tomcat tự động bắt đầu lúc khởi động, hãy sử dụng:

$ sudo systemctl enable tomcat

Bước 6: Định cấu hình giao diện quản lý

Tại thời điểm này, giao diện quản lý web không thể truy cập được vì bạn chưa xác định người dùng Tomcat và vai trò của họ. Tomcat-users.xml là tệp mô tả. Mở nó trong terminal của bạn như sau:

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

Khi tệp mở ra, bạn sẽ thấy văn bản mặc định chứa các nhận xét và ví dụ.

Thêm mã sau vào cuối, ngay trên </tomcat-users>.

  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>
  <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

Người dùng mới bây giờ sẽ có quyền truy cập vào giao diện web (manager-gui và admin-gui). Đảm bảo rằng bạn thay đổi mật khẩu mạnh và an toàn hơn. 

Bước 7: Kiểm tra cài đặt

Đầu tiên, khởi động lại ứng dụng của bạn:

$ sudo systemctl restart tomcat

Sau đó, trong trình duyệt của bạn, nhập localhost: 8080. Khi bạn nhận được trang bên dưới, bạn sẽ biết rằng quá trình cài đặt đã thành công.

Có thể truy cập trang tổng quan trình quản lý ứng dụng Tomcat tại  http://localhost:8080/manager/html. Từ đây, bạn có thể bắt đầu quản lý (khởi động, dừng, tải lại, triển khai và hủy triển khai) các ứng dụng của mình.

Có thể truy cập trang tổng quan trình quản lý máy chủ ảo tạihttp://localhost:8080/host-manager/htmlBạn có thể quản lý các máy chủ ảo Tomcat của mình từ đây.

Tomcat đã sẵn sàng để chạy

Bây giờ quá trình cài đặt đã hoàn tất, bạn có thể triển khai một ứng dụng Java và bắt đầu thử nghiệm với JSP (Java Server Pages), các servlet và hơn thế nữa.

Tại thời điểm này, dữ liệu Tomcat của bạn hoàn toàn không được mã hóa. Dữ liệu nhạy cảm của bạn như mật khẩu được gửi ở dạng văn bản thuần túy và các bên không mong muốn có thể xem được. Để tự bảo vệ mình, bạn có thể mã hóa các kết nối của mình bằng SSL.

Bạn cũng có thể truy cập tài liệu Apache Tomcat chính thức để biết thêm về các tính năng của Tomcat. Nếu cảm thấy khó theo dõi, bạn luôn có thể tìm kiếm sự trợ giúp từ các cộng đồng nhà phát triển sôi động trực tuyến, như Stack Overflow.

Vân Nguyễn

Dịch từ: https://www.makeuseof.com/a-step-by-step-guide-to-installing-apache-tomcat-linux/

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
FUNiX V2 GenAI Chatbot ×

yêu cầu gọi lại