How to Install Mantis Bug Tracker on CentOS 8
كيفية تثبيت Mantis Bug Tracker على CentOS 8
MantisBT هو برنامج مجاني ومفتوح المصدر (open-source) وقائم على الويب لتتبع الأخطاء ومكتوب بلغة PHP.
إنه بسيط وسهل الاستخدام ويأتي مع الكثير من الأدوات التي تساعدك على التعاون مع الفريق لحل الأخطاء والمشكلات بسرعة.
يوفر مجموعة غنية من الميزات بما في ذلك الإخطار عبر البريد الإلكتروني والتحكم في الوصول المستند عن طريق Role-based والرسم البياني لعلاقة المشكلة ولوحة المعلومات القابلة للتخصيص وغيرها الكثير.
سنشرح هنا تثبيت نظام Mantis Bug Tracking على CentOS 8.
المتطلبات الأساسية
خادم يعمل بنظام CentOS 8.
اسم مجال (domain name) صالح يشير إلى عنوان الـ IP الخاص بالخادم.
إعداد كلمة مرور الـ root على الخادم.
تثبيت خادم LAMP
ستحتاج إلى تثبيت خادم الويب Apache وخادم MariaDB و PHP والحزم الأخرى المطلوبة على نظامك.
يمكنك تثبيت كل منهم بالأمر التالي:
dnf install httpd mariadb-server php php-mysqli php-mbstring php-curl unzip -y
بمجرد تثبيت جميع الحزم ابدأ تشغيل خدمة Apache و MariaDB وقم بتمكينها من البدء عند إعادة تشغيل النظام باستخدام الأمر التالي:
systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb
إنشاء قاعدة بيانات لـ Mantis
يستخدم Mantis قاعدة بيانات MariaDB أو MySQL.
لذلك سوف تحتاج إلى إنشاء قاعدة بيانات ومستخدم لـ Mantis.
أولاً ، قم بتسجيل الدخول إلى MariaDB shell باستخدام الأمر التالي:
mysql
بمجرد تسجيل الدخول قم بإنشاء قاعدة بيانات ومستخدم باستخدام الأمر التالي:
MariaDB [(none)]> CREATE DATABASE mantisdb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mantisdb.* TO 'mantis'@'localhost' IDENTIFIED BY 'mantispassword';
امسح الصلاحيات واخرج من MariaDB shell باستخدام الأمر التالي:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
تثبيت Mantis
قم بتنزيل أحدث إصدار من Mantis من موقع باستخدام الأمر التالي:
wget https://excellmedia.dl.sourceforge.net/project/mantisbt/mantis-stable/2.24.2/mantisbt-2.24.2.zip
بمجرد اكتمال التنزيل قم بفك ضغط الملف الذي تم تنزيله باستخدام الأمر التالي:
unzip mantisbt-2.24.2.zip
انسخ المجلد إلى مجلد الـ Apache root باستخدام الأمر التالي:
cp -r mantisbt-2.24.2 /var/www/html/mantis
قم بتغيير ملكية مجلد Mantis إلى apache:
chown -R apache:apache /var/www/html/mantis
إعداد Apache لـ Mantis
ستحتاج إلى إنشاء ملف إعداد Apache virtual host لـ Mantis.
يمكنك إنشائه بالأمر التالي:
nano /etc/httpd/conf.d/mantis.conf
أضف الأسطر التالية:
<VirtualHost *:80>
ServerAdmin admin@yourdomain.com
DocumentRoot "/var/www/html/mantis"
ServerName mantis.linuxbuz.com
<Directory "/var/www/html/mantis/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/httpd/mantis_access.log
ErrorLog /var/log/httpd/mantis_error.log
</VirtualHost>
احفظ وأغلق الملف.
أعد تشغيل خدمة Apache لتطبيق التغييرات:
systemctl restart httpd
تحقق من حالة Apache باستخدام الأمر التالي:
systemctl status httpd
يجب أن تحصل على النتيجة التالية:
? httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/httpd.service.d
??php-fpm.conf
Active: active (running) since Sat 2020-09-19 11:06:51 EDT; 37s ago
Docs: man:httpd.service(8)
Main PID: 41737 (httpd)
Status: "Running, listening on: port 80"
Tasks: 213 (limit: 25014)
Memory: 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 -DFOREGROUND
Sep 19 11:06:51 centos8 systemd[1]: Starting The Apache HTTP Server...
تأمين Mantis باستخدام Let's Encrypt SSL
ستحتاج إلى تثبيت الأداة المساعدة Certbot في نظامك لتنزيل Let's Encrypt SSL وتثبيته لموقع Mantis الخاص بك.
يمكنك تثبيت Certbot client باستخدام الأمر التالي:
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
بعد ذلك ، احصل على شهادة SSL وقم بتثبيتها لموقع Mantis الخاص بك باستخدام الأمر التالي:
certbot-auto --apache -d mantis.linuxbuz.com
The above command will first install all the required dependencies on your server. Once installed, you will be asked to provide an email address and accept the term of service as shown below:
سيقوم الأمر أولاً بتثبيت جميع التبعيات المطلوبة على الخادم الخاص بك.
بمجرد التثبيت سيُطلب منك تقديم عنوان بريد إلكتروني وقبول مدة الخدمة كما هو موضح أدناه:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): hitjethva@gmail.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for mantis.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/apache/conf.d/mantis.conf
ستحتاج إلى اختيار ما إذا كنت تريد إعادة توجيه حركة مرور HTTP إلى HTTPS كما هو موضح أدناه:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
اكتب 2 واضغط على Enter للمتابعة.
بمجرد الانتهاء من التثبيت ، يجب أن ترى النتيجة التالية:
Redirecting all traffic on port 80 to ssl in /etc/apache/conf.d/mantis.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://mantis.linuxbuz.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=mantis.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/mantis.linuxbuz.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/mantis.linuxbuz.com/privkey.pem
Your cert will expire on 2020-03-23. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again with the "certonly" option. To non-interactively renew *all*
of your certificates, run "certbot-auto renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
إعداد SELinux وجدار الحماية
افتراضيًا يتم تفعيل SELinux في CentOS 8.
لذلك ستحتاج إلى إعداده لموقع Mantis الخاص بك.
يمكنك إعداد SELinux بالأمر التالي:
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
اسمح للمنفذين 80 و 443 عبر جدار الحماية بالأمر التالي:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
الوصول إلى Mantis Web UI
افتح متصفح الويب الخاص بك وقم بالوصول إلى واجهة ويب Mantis باستخدام عنوان URL https://mantis.linuxbuz.com.
سترى الشاشة التالية:
أدخل اسم قاعدة البيانات واسم المستخدم واسم المستخدم المسؤول (admin) وكلمة المرور والبريد الإلكتروني وانقر على زر Install/Upgrade Database.
بمجرد اكتمال التثبيت سترى الشاشة التالية:
انقر فوق الزر " Continue " سترى صفحة تسجيل الدخول Mantis BT:
قم بادخال اسم مستخدم Mantis افتراضي وانقر على زر تسجيل الدخول.
سيُطلب منك تقديم كلمة المرور:
أدخل كلمة مرور Mantis الافتراضية "root" وانقر على زر تسجيل الدخول.
ستتم إعادة توجيهك إلى الشاشة التالية:
It is recommended to change your default administrator password. Provide your current password, new password, email, real name, access level, project access level and click on the Update User button. You should see the Mantis dashboard in the following screen:
يوصى بتغيير كلمة مرور المسؤول الافتراضية.
أدخل كلمة المرور الحالية وكلمة المرور الجديدة والبريد الإلكتروني والاسم الحقيقي ومستوى الوصول ومستوى الوصول إلى الـ project وانقر فوق زر Update User .
يجب أن تشاهد لوحة معلومات Mantis في الشاشة التالية: