Apache Tomcat là một web server và servlet container được sử dụng để khởi chạy các ứng dụng Java. Trong bài viết này, Vietnix sẽ hướng dẫn bạn cách cài đặt Apache Tomcat 10 trên Ubuntu 20.04 giúp thiết lập users, vai trò cũng như điều hướng giao diện người dùng quản trị hiệu quả.
Bước 1: Cài đặt Tomcat
Để thực hiện theo hướng dẫn bạn cần chuẩn bị một server Ubuntu 20.04 có user non-root với quyền sudo và thiết lập tường lửa.
Download Tomcat 10 với phiên bản mới nhất. Sau đó thiết lập 1 user riêng với các quyền thích hợp.
Ngoài ra bạn cũng cần cài đặt Java Development Kit (JDK).
Vì mục đích bảo mật, bạn nên chạy Tomcat thông qua một user cụ thể, không có đặc quyền. Chạy lệnh sau để tạo user mới:
sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat
Việc cung cấp /bin/false
dưới dạng shell mặc định của user sẽ đảm bảo rằng bạn không thể đăng nhập dưới dạng tomcat
.
Trước khi cài đặt JDK, bạn cần cập nhật cache của package manager bằng lệnh:
sudo apt update
Cài đặt JDK bằng cách chạy lệnh sau:
sudo apt install default-jdk
Nhấn y
để tiếp tục cài đặt.
Khi quá trình cài đặt kết thúc, hãy kiểm tra phiên bản cài đặt Java có sẵn:
java -version
Output sẽ trông như thế này:
Output
openjdk version "11.0.14" 2022-01-18
OpenJDK Runtime Environment (build 11.0.14+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.14+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
Để cài đặt Tomcat, bạn cần có build Core Linux mới nhất cho Tomcat 10. Chọn build Core Linux mới nhất, ending bằng .tar.gz
. Tại thời điểm viết bài, phiên bản mới nhất là 10.0.20
.
Đầu tiên, điều hướng đến thư mục tmp
:
cd /tmp
Download wget
bằng cách chạy lệnh sau:
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.20/bin/apache-tomcat-10.0.20.tar.gz
Lệnh wget
tải xuống resource từ Internet.
Sau đó, giải nén kho lưu trữ bạn đã tải xuống bằng lệnh:
sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1
Vì bạn đã tạo user, giờ đây bạn có thể cấp quyền cho tomcat
sở hữu đối với bản cài đặt đã giải nén bằng lệnh sau:
sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin
Để quá trình cài đặt và cấu hình Tomcat diễn ra thuận lợi, bạn cần phải đảm bảo rằng máy chủ có đáp ứng đầy đủ các yêu cầu của hệ thống. Điều này bao gồm nhiều yếu tố như tốc độ xử lý, bộ nhớ đủ lớn để xử lý các tác vụ nặng, hoạt động ổn định trong thời gian dài. Nếu máy chủ không đáp ứng được các yêu cầu cơ bản như vậy, bạn có thể cân nhắc sử dụng VPS Việt Nam làm giải pháp thay thế. Với VPS Vietnix, bạn có thể dễ dàng nâng cấp, phân bổ lại tài nguyên hệ thống khi cần thiết mà không cần phải mua một máy chủ mới.
Hiện tại, Vietnix đang cung cấp đa dạng gói dịch vụ, bao gồm VPS Giá Rẻ, VPS Phổ Thông, VPS Cao Cấp, VPS NVMe và VPS GPU, giúp bạn có thể nhanh chóng lựa chọn gói phù hợp với nhu cầu của mình. Bên cạnh đó, đội ngũ hỗ trợ khách hàng luôn túc trực 247 giúp bạn giải quyết mọi vấn đề liên quan đến việc cài đặt Tomcat trên VPS. Vì vậy, không có lý do gì để bạn không thử sử dụng dịch vụ VPS Vietnix để cài đặt Nginx trên máy chủ của mình.
Liên hệ để được trải nghiệm VPS Vietnix ngay hôm nay.
Bước 2: Cấu hình Users Admin
Để có quyền truy cập vào các trang Manager và Host Manager, bạn sẽ xác định user đặc quyền trong cấu hình của Tomcat. Bạn sẽ cần phải loại bỏ các hạn chế về địa chỉ IP.
User Tomcat được xác định trong /opt/tomcat/conf/tomcat-users.xml
. Mở file để chỉnh sửa bằng lệnh sau:
sudo nano /opt/tomcat/conf/tomcat-users.xml
Thêm các dòng sau vào trước tag ending:
<role rolename="manager-gui" />
<user username="manager" password="manager_password" roles="manager-gui" />
<role rolename="admin-gui" />
<user username="admin" password="admin_password" roles="manager-gui,admin-gui" />
Thay thế password bằng password riêng của bạn. Sau đó lưu và đóng file.
Tại đây, bạn xác định vai trò của hai user, manager-gui
và admin-gui
, cho phép truy cập tương ứng vào các trang Manager và Host Manager. Bạn cũng xác định các vai trò liên quan của hai user, manager
và admin
.
Theo mặc định, Tomcat được cấu hình để hạn chế quyền truy cập vào các trang admin, trừ khi kết nối đến từ chính máy chủ. Để truy cập các trang đó với user bạn vừa xác định, bạn sẽ cần chỉnh sửa file cấu hình cho các trang đó.
Để xóa hạn chế cho trang Manager, hãy mở file config của trang manager để chỉnh sửa:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
Comment out Valve
sẽ ra như bên dưới:
...
<Context antiResourceLocking="false" privileged="true" >
<CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
sameSiteCookies="strict" />
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.Csr>
</Context>
Lưu và đóng file, làm tương tự với Host Manager
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
Bước 3: Tạo một dịch vụ systemd
Dịch vụ systemd
giữ cho Tomcat chạy ngầm trong background. Dịch vụ này cũng sẽ tự động khởi động lại Tomcat trong trường hợp xảy ra error hoặc failure.
Bản thân Tomcat là một ứng dụng Java, vì vậy cần phải có thời gian để chạy Java mà bạn đã cài đặt với JDK ở bước 1. Trước khi tạo dịch vụ, bạn cần biết locate của Java. Bạn có thể tra cứu điều đó bằng cách chạy lệnh sau:
sudo update-java-alternatives -l
Output sẽ trông như sau:
Output
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64
Lưu ý: Đường dẫn nơi Java reside, được liệt kê trong cột cuối cùng. Bạn sẽ cần đường dẫn này để xác định dịch vụ.
Bạn sẽ lưu trữ dịch vụ tomcat
trong một file có tên tomcat.service
, dưới phần /etc/systemd/system
. Tạo file để chỉnh sửa bằng lệnh:
sudo nano /etc/systemd/system/tomcat.service
Thêm các dòng sau:
[Unit]
Description=Tomcat
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
Sửa đổi giá trị JAVA_HOME
nếu nó khác với giá trị bạn đã note trước đó.
Tại đây, bạn xác định một dịch vụ sẽ chạy Tomcat bằng cách thực thi các tập lệnh khởi động và shutdown mà Tomcat cung cấp. Bạn cũng đặt một vài biến môi trường (environment variables) để xác định thư mục chính (giống như /opt/tomcat
trước) và giới hạn dung lượng bộ nhớ mà Java VM có thể phân bổ (trong CATALINA_OPTS
). Khi failure, dịch vụ Tomcat sẽ tự động khởi động lại.
Khi bạn hoàn tất, hãy lưu và đóng file.
Tải lại systemd
daemon để Tomcat nhận biết được dịch vụ mới:
sudo systemctl daemon-reload
Sau đó, bạn có thể bắt đầu dịch vụ Tomcat bằng cách nhập lệnh:
sudo systemctl start tomcat
Tiếp đến, hãy check trạng thái của Tomcat để xác nhận rằng dịch vụ đã bắt đầu thành công:
sudo systemctl status tomcat
Output sẽ trông như sau:
Output
● tomcat.service - Tomcat
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
Active: active (running) since Fri 2022-03-11 14:37:10 UTC; 2s ago
Process: 4845 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 4860 (java)
Tasks: 15 (limit: 1132)
Memory: 90.1M
CGroup: /system.slice/tomcat.service
└─4860 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties ...
Nhấn q
để thoát lệnh.
Để cho phép Tomcat khởi động cùng hệ thống, hãy chạy lệnh sau:
sudo systemctl enable tomcat
Bước 4: Truy cập Giao diện Web
Lúc này dịch vụ Tomcat đang chạy, bạn có thể cấu hình tường lửa để cho phép kết nối với Tomcat. Sau đó, bạn có thể truy cập giao diện web.
Tomcat sử dụng cổng 8080
để accept các yêu cầu HTTP. Chạy lệnh sau để cho phép lưu lượng truy cập vào cổng đó:
sudo ufw allow 8080
Trong trình duyệt của bạn, bây giờ bạn có thể truy cập Tomcat bằng cách điều hướng đến địa chỉ IP của server của bạn:
http://your_server_ip:8080
Bạn sẽ thấy trang chủ mặc định của Tomcat:
Bây giờ bạn đã verified rằng dịch vụ Tomcat đang hoạt động.
Nhấn vào nút Manager App ở bên phải. Bạn sẽ được nhắc nhập thông tin đăng nhập tài khoản mà bạn đã xác định ở bước trước.
Bạn sẽ thấy một trang giống như sau:
Trình quản lý ứng dụng web được sử dụng để quản lý các ứng dụng Java của bạn. Bạn có thể bắt đầu, dừng, reload, deploy và undeploy chúng từ đây. Bạn cũng có thể chạy một số diagnostics trên app của mình (ví dụ: để tìm memory bị leaks). Thông tin về server của bạn nằm ở cuối trang này.
Bây giờ, hãy xem Host Manager, bạn có thể truy cập bằng cách nhấn nút Host Manager nằm trên trang chủ:
Tại đây, bạn có thể thêm các virtual host để khởi chạy các ứng dụng của mình. Hãy nhớ rằng trang này không thể truy cập được bởi những user không được admin-gui
chỉ định, chẳng hạn như manager
.
Vietnix là một nhà cung cấp giải pháp VPS hàng đầu tại Việt Nam, với hơn 10 kinh nghiệm trong lĩnh vực cung cấp các giải pháp hosting, VPS, tên miền, Firewall anti DDoS,… cho cá nhân và doanh nghiệp. Vietnix đã có hơn 50.000 khách hàng cá nhân, doanh nghiệp, nổi bật trong đó có thể kể đến như iVIVU, Vietnamworks, SEOSONA, SAGO Media,… Với hơn 100.000 dịch vụ được kích hoạt, Vietnix luôn cố gắng mang đến những giải pháp tốt nhất để giúp khách hàng vận hành website, ứng dụng một cách nhanh chóng, mượt mà và bảo đảm tính ổn định tối đa.
Sự hài lòng của khách hàng luôn được đặt lên hàng đầu, và đó là lý do tại sao hơn 97% khách hàng của Vietnix đã giới thiệu dịch vụ cho người thân, bạn bè và đối tác của họ sau khi sử dụng. Vietnix tự hào được vinh danh với giải thưởng Thương hiệu Việt Nam xuất sắc năm 2022, một minh chứng cho sự cam kết của Vietnix đối với chất lượng và uy tín.
Với đội ngũ nhân viên chuyên nghiệp và tận tâm, Vietnix cam kết cung cấp đến khách hàng của mình những giải pháp VPS tốt nhất, giúp họ tiết kiệm chi phí và tối đa hóa hiệu quả kinh doanh. Hãy để Vietnix trở thành đối tác đồng hành trong việc phát triển kinh doanh của bạn.
Mọi vấn đề thắc mắc cần tư vấn, quý khách vui lòng liên hệ:
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh
- Hotline: 1800 1093
- Email: sales@vietnix.com.vn
Như vậy, bạn đã cài đặt thành công Tomcat 10 trên server Ubuntu 20.04 của mình và định cấu hình cho Tomcat để có thể truy cập từ xa bằng tài khoản quản lý. Bây giờ bạn có thể sử dụng để triển khai các ứng dụng Java của mình, dựa trên công nghệ Jakarta EE. Nếu bạn có bất kỳ thắc mắc nào thì hãy để lại bình luận bên dưới nhé.