Mở đầu
Apache Tomcat là một web server mã nguồn mở được phát triển bởi tập đoàn Apache. Tomcat không phải là một web server đa dụng như Apache hoặc Nginx, mục đích chính của nó là cung cấp một môi trường dùng để thực thi các ứng dụng thuần Java, Java Servlet và JavaServer Pages.
Bài viết này sẽ hướng dẫn bạn những bước cài đặt và cấu hình cơ bản Tomcat 9 trên nền tảng bản phân phối Linux mới AlmaLinux 8.
Cài đặt và cấu hình Tomcat service
Bước 1 – Cài đặt Java
Tomcat 9 yêu cầu Java SE 8 (hoặc cao hơn) phải được cài đặt trên CentOS. Bạn có thể cài đặt Java từ kho lưu trữ gói mặc định bằng lệnh dnf như sau:
# dnf install java-1.8.0-openjdk-devel
Sau khi quá trình cài đặt hoàn tất, bạn có thể kiểm tra lại phiên bản Java bằng lệnh bên dưới:
# java -version
Bước 2 – Tạo Tomcat System User
Vì lý do bảo mật, Tomcat nên được thực thi bởi một user được cấp quyền riêng (không phải user root). Chúng ta sẽ tạo một user và group để thực thi Tomcat.
Đầu tiên, bạn tạo group bằng lệnh
# groupadd tomcat
Sau đó, tạo một user tomcat (là thành viên của group tomcat) với thư mục home /opt/tomcat (thư mục cài đặt Tomcat ở bước sau) và tắt quyền truy cập vào server:
# useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
Bước 3 – Download Tomcat
Bạn có thể sử dụng lệnh wget như sau để tải về phiên bản tomcat 9 mới nhất.
# wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.52/bin/apache-tomcat-9.0.52.tar.gz
Tiếp theo, bạn tiến hành giải nén file .tar.gz vào thư mục cài đăt Tomcat (/opt/tomcat) bằng lệnh sau:
# tar -xzvf apache-tomcat-9.0.52.tar.gz -C /opt/tomcat --strip-components=1
Bước 4 – Cập nhật quyền thực thi
Để user tomcat có thể truy cập vào thư mục cài đặt Tomcat, bạn lần lượt thiết lập quyền như sau:
– Gán quyền sỡ hữu thư mục cài đặt Tomcat cho group tomcat
# cd /opt/tomcat # chgrp -R tomcat /opt/tomcat
– Kế tiếp, thiết lập quyền đọc và thực thi thư mục conf (và tất cả nội dung con bên trong) cho group tomcat.
# chmod -R g+r conf # chmod g+x conf
Sau cùng, bạn gán user tomcat sở hữu các thư mục webapps, work, temp và logs như sau
# chown -R tomcat webapps/ work/ temp/ logs/
Bước 5 – Tạo file Systemd Unit cho Tomcat
Để Tomcat hoạt động như một dịch vụ trên CentOS 7, bạn cần tạo mới một file Tomcat Systemd unit.
Tạo và mở file unit bằng lệnh sau:
vi /etc/systemd/system/tomcat.service
Thêm nội dung bên dưới vào file.
# Systemd unit file for tomcat [Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/jre 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=/bin/kill -15 $MAINPID User=root Group=root UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
Tiếp theo, bạn thực thi lệnh sau để khởi động lại Systemd để nhận file Tomat unit
# systemctl daemon-reload
Sau cùng, bạn lần lượt thực thi những lệnh sau để khởi động, bật chế độ chạy nền và kiểm tra trạng thái của Tomcat.
# systemctl start tomcat # systemctl enable tomcat # systemctl status tomcat
Bước 6 – Cấu hình Firewall
Nếu server của bạn có sử dụng tường lửa (firewalld hoặc iptables), bạn cần thiết lập mở port 8080 để có thể truy cập giao diện Tomcat từ bên ngoài.
# firewall-cmd --add-port=8080/tcp --permanent # firewall-cmd --reload
Ngay sau khi mở port 8080, bạn có thể mở trình duyệt web, truy cập đường dẫn: http://ip-server:8080 để kiểm tra giao diện mặc định Tomat.
Cấu hình giao diện web quản trị Tomcat
1. Cấu hình
Sau khi hoàn tât các bước cài đặt và cấu hình cơ bản, bạn đã có thể truy cập trang Tomcat mặc định như trên. Tuy nhiên, vì lý do bảo mật nên bạn cần tạo thêm user để có thể truy cập trang quản trị Tomcat manager.
User Tomcat và các quyền sẽ được định nghĩa trong file tomcat-users.xml. Bạn mở file /opt/tomcat/latest/conf/tomcat-users.xml, tìm và thêm nội dung bên dưới vào bên trong thẻ <tomcat-users>…</tomcat-users>
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
Lưu ý:
- rolename=”admin-gui” và “manager-gui” lần lượt các quyền truy cập vào trang quản trị Tomcat và trang quản lý webapps.
- Thay đổi các giá trị username và password tương ứng với hệ thống của bạn.
Theo mặc định, giao diện quản trị Tomcat chỉ cho phép truy cập từ localhost, để có thể truy cập từ một remote IP hoặc bất kỳ đâu, bạn thực hiện những điều chỉnh như sau:
Lần lượt mở các file /opt/tomcat/webapps/manager/META-INF/context.xml và /opt/tomcat/webapps/host-manager/META-INF/context.xml, khóa hoặc xóa bỏ nội dung bên dưới trong thẻ <Context>…</Context>
Khởi động lại Tomcat để những điều chỉnh có tác dụng bằng lệnh sau:
# systemctl restart tomcat
2. Kiểm tra cấu hình
Sau khi hoàn tất các thiết lập, bạn truy cập lại giao diện quản trị Tomcat theo đường dẫn: http://<your_domain_or_IP_address>:8080
Bạn lần lượt truy cập vào Server Status, Manage App và Host Manager, sau khi hoàn tất bước xác thực Tomcat User sẽ được kết quả tương tự như sau:
- Server Status
- Manage App
- Host-Manager
Kết luận
Như vậy là mình đã hoàn thành bài viết hướng dẫn những bước cài đặt và cấu hình Tomcat 9 cơ bản nhất trên AlmaLinux 8.4. Nếu có bất kỳ thắc mắc hoặc góp ý về nội dung bài viết, các bạn có thể để lại phản hồi ngay bên dưới.
Bạn có thể truy cập trang Tài liệu Tomcat 9 của Apache để tìm hiểu thêm những thiết lập nâng cao khác.
Trong bài viết sau, mình sẽ tiếp tục chia sẻ hướng dẫn quản trị và deploy ứng dụng Java lêm Tomcat server. Các bạn nhớ theo dõi nhé!
Để lại một phản hồi