Cách cài đặt Mantis Bug Tracker trên CentOS 8

theanh

Administrator
Nhân viên
MantisBT là phần mềm theo dõi lỗi miễn phí, mã nguồn mở và chạy trên nền tảng web được viết bằng PHP. Phần mềm này đơn giản, dễ sử dụng, thân thiện với người dùng và đi kèm nhiều công cụ giúp bạn cộng tác với các nhóm để giải quyết lỗi và sự cố nhanh chóng. Phần mềm cung cấp nhiều tính năng bao gồm: Thông báo qua email, Kiểm soát truy cập dựa trên vai trò, Dự án, dự án phụ và hỗ trợ danh mục, Biểu đồ mối quan hệ sự cố, bảng điều khiển có thể tùy chỉnh và nhiều tính năng khác.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt hệ thống Mantis Bug Tracking trên CentOS 8.

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

  • Máy chủ chạy CentOS 8.
  • Tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
  • Mật khẩu gốc được cấu hình trên máy chủ.

Cài đặt LAMP Server​

Trước tiên, bạn sẽ cần cài đặt máy chủ web Apache, máy chủ MariaDB, PHP và các gói cần thiết khác vào hệ thống của mình. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:
Mã:
dnf install httpd mariadb-server php php-mysqli php-mbstring php-curl unzip -y
Sau khi tất cả các gói được cài đặt, hãy khởi động dịch vụ Apache và MariaDB và cho phép chúng khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tạo cơ sở dữ liệu cho Mantis​

Mantis sử dụng MariaDB hoặc MySQL làm cơ sở dữ liệu phụ trợ. Vì vậy, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cho Mantis.

Trước tiên, hãy đăng nhập vào shell MariaDB bằng lệnh sau:
Mã:
mysql
Sau khi đăng nhập, hãy tạo cơ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE mantisdb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mantisdb.* TO 'mantis'@'localhost' IDENTIFIED BY 'mantispassword';
Tiếp theo, xóa các đặc quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> QUYỀN XẢY RA;
MariaDB [(không có)]> EXIT;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt Mantis​

Trước tiên, hãy tải xuống phiên bản Mantis mới nhất từ trang web Sourceforge bằng lệnh sau:
Mã:
wget https://excellmedia.dl.sourceforge.net/project/mantisbt/mantis-stable/2.24.2/mantisbt-2.24.2.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip mantisbt-2.24.2.zip
Tiếp theo, sao chép thư mục đã giải nén vào thư mục gốc Apache bằng lệnh sau:
Mã:
cp -r mantisbt-2.24.2 /var/www/html/mantis
Tiếp theo, hãy thay đổi quyền sở hữu thư mục mantis thành apache:
Mã:
chown -R apache:apache /var/www/html/mantis
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho Mantis​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache cho Mantis. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/httpd/conf.d/mantis.conf
Thêm các dòng sau:
Mã:
ServerAdmin [emailprotected]DocumentRoot "/var/www/html/mantis"ServerName mantis.linuxbuz.comTùy chọn MultiViews FollowSymlinksAllowOverride AllOrder allow,denyAllow from allTransferLog /var/log/httpd/mantis_access.logErrorLog /var/log/httpd/mantis_error.log
Lưu và đóng tệp khi bạn hoàn tất, sau đó khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart httpd
Bạn cũng có thể xác minh trạng thái của Apache bằng lệnh sau:
Mã:
systemctl status httpd
Bạn sẽ nhận được kết quả sau:
Mã:
? httpd.service - Máy chủ HTTP Apache Đã tải: đã tải (/usr/lib/systemd/system/httpd.service; đã tắt; cài đặt trước của nhà cung cấp: đã tắt) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Đang hoạt động: đang hoạt động (đang chạy) từ Thứ bảy 2020-09-19 11:06:51 EDT; 37 giây trước Tài liệu: man:httpd.service(8) PID chính: 41737 (httpd) Trạng thái: "Đang chạy, đang lắng nghe trên: cổng 80" Nhiệm vụ: 213 (giới hạn: 25014) Bộ nhớ: 25,0M CGroup: /system.slice/httpd.service ??41737 /usr/sbin/httpd -DFOREGROUND ??41738 /usr/sbin/httpd -DFOREGROUND ??41739 /usr/sbin/httpd -DFOREGROUND ??41740 /usr/sbin/httpd -DFOREGROUND ??41741 /usr/sbin/httpd -DFOREGROUND19 tháng 9 11:06:51 centos8 systemd[1]: Đang khởi động Máy chủ HTTP Apache...

Secure Mantis với Hãy mã hóa SSL​

Tiếp theo, bạn sẽ cần cài đặt tiện ích Certbot trong hệ thống của mình để tải xuống và cài đặt Let's Encrypt SSL cho trang web Mantis của bạn.

Bạn có thể cài đặt máy khách Certbot bằng lệnh sau:
Mã:
wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto
Tiếp theo, hãy lấy và cài đặt chứng chỉ SSL cho trang web Mantis của bạn bằng lệnh sau:
Mã:
certbot-auto --apache -d mantis.linuxbuz.com
Lệnh trên sẽ cài đặt tất cả các phụ thuộc cần thiết trên máy chủ của bạn trước. Sau khi cài đặt, bạn sẽ được yêu cầu cung cấp địa chỉ email và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator apache, Installer apacheNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có sẵn lòng chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận phát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho mantis.linuxbuz.comĐang chờ xác minh...Dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/apache/conf.d/mantis.conf
Tiếp theo, bạn sẽ cần chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không như hiển thị bên dưới:
Mã:
Vui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Nhập 2 và nhấn Enter để tiếp tục. Sau khi quá trình cài đặt hoàn tất, bạn sẽ thấy kết quả sau:
Mã:
Đang chuyển hướng tất cả lưu lượng truy cập trên cổng 80 sang ssl trong /etc/apache/conf.d/mantis.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://mantis.linuxbuz.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=mantis.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/mantis.linuxbuz.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/mantis.linuxbuz.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 23-03-2020. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot-auto với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* chứng chỉ của bạn, hãy chạy "certbot-auto renew" - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le

Cấu hình SELinux và Tường lửa​

Theo mặc định, SELinux được bật trong CentOS 8. Vì vậy, bạn sẽ cần cấu hình nó cho trang web Mantis của mình.

Bạn có thể cấu hình SELinux bằng lệnh sau:
Mã:
setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/mantis
Tiếp theo, cho phép cổng 80 và 443 đi qua tường lửa bằng lệnh sau:
Mã:
firewall-cmd --permanent --add-service=http
Mã:
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Giao diện người dùng web Mantis​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện người dùng web Mantis bằng URL https://mantis.linuxbuz.com. Bạn sẽ thấy màn hình sau:





Cung cấp tên cơ sở dữ liệu, tên người dùng, tên người dùng quản trị, mật khẩu, email và nhấp vào nút Cài đặt/Nâng cấp Cơ sở dữ liệu. Sau khi cài đặt hoàn tất, bạn sẽ thấy màn hình sau:



Tiếp theo, nhấp vào nút "Tiếp tục", bạn sẽ thấy trang đăng nhập Mantis BT trong màn hình sau:





Cung cấp tên người dùng Mantis mặc định là quản trị viên và nhấp vào nút Đăng nhập. Bạn sẽ được yêu cầu cung cấp mật khẩu như hiển thị trong màn hình sau:



Cung cấp mật khẩu mặc định của Mantis là "root" và nhấp vào nút Đăng nhập. Bạn sẽ được chuyển hướng đến màn hình sau:





Bạn nên thay đổi mật khẩu quản trị viên mặc định của mình. Cung cấp mật khẩu hiện tại, mật khẩu mới, email, tên thật, cấp độ truy cập, cấp độ truy cập dự án và nhấp vào nút Cập nhật người dùng. Bạn sẽ thấy bảng điều khiển Mantis trong màn hình sau:


Kết luận​

Xin chúc mừng! bạn đã cài đặt thành công Mantis với Let's Encrypt SSL trên CentOS 8. Bây giờ bạn có thể triển khai Mantis trong môi trường phát triển của mình và cộng tác với các nhóm. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên