خطوات التثبيت
يصف هذا الدليل تثبيت حزم RPM باستخدام yum.
دليل التثبيت هذا مخصص لاستخدامه لتثبيت SKOOR على نظام جديد. لترقية نظام SKOOR موجود، يرجى استخدام دليل الترقية هنا.
المتطلبات الأساسية
تعطيل SELinux
قبل تثبيت SKOOR Engine، يجب تعطيل SELINUX. عرض حالة SELinux:
sestatus
تحقق مما إذا كان الوضع قيد التنفيذ:
SELinux status: enabled ... Current mode: enforcing
إذا كان كذلك، قم بتغييره على الأقل إلى متساهل أو تعطيله عن طريق تغيير تكوين SELinux:
vi /etc/selinux/config
تغيير التكوين إلى متساهل أو معطّل:
SELINUX=disabled
تفعيل التكوين والتحقق باستخدام sestatus:
setenforce 0
السماح بـ cron للمستخدمين
إذا كان cron مقيداً، يجب السماح للمستخدمين الذين يحتاجهم برنامج SKOOR بالوصول إلى cron عن طريق إضافتهم إلى الملف التالي
/etc/cron.allow
المستخدمون:
postgres eranger reranger
بصمات GPG لمستودع SKOOR:
rpm-gpg-key-skoor:
0c18 95b8 95b8 11d4 71e4 71e5 d043 efa3 efa3 69e1 147c 2cb4 0f3a
rpm-gpg-key-pgdg:
68C9 E2B9 68C9 E2B9 1A37 D136 FE74 D176 1F16 D2E1 442D F0F8
rpm-gpg-key-timescaledb:
1005 FB68 604C 604C E9B8 F687 9CF7 59F7 59F1 8EDF 47F2 4417
تركيب محرك SKOOR (خادم واحد)
بالنسبة للأنظمة ذات النسخ المتماثل لقاعدة البيانات، يجب تثبيت خادمين منفصلين كما هو موضح في هذا القسم. راجع دليل النسخ المتماثل لقاعدة البيانات لمزيد من خطوات التكوين
تثبيت PostgreSQL
PostgreSQL 13 هو خادم قاعدة البيانات الذي يحتاجه محرك SKOOR. يجب تثبيته قبل برنامج SKOOR:
قم بتثبيت خادم PostgreSQL باستخدام حزمة مثبت SKOOR PostgreSQL:
dnf install eranger-postgresql
تقوم هذه الحزمة بالخطوات التالية:
تثبيت
postgresql13-server
،timescaledb-2-postgresql-13
،eranger-database-utils
من خلال تبعياتها.تهيئة مجموعة قواعد البيانات باستخدام
initdb
يضبط
postgresql.conf
لـ TimescaleDBتهيئة قاعدة بيانات (قاعدة بيانات عادية، بدون مخطط ولا بيانات) يمكن استخدامها بواسطة خادم SKOOR
فتح منفذ TCP 5432 على جدار الحماية
تثبيت PgBouncer
يستخدم PgBouncer كمجمع اتصال ويقع بين SKOOR وخادم PostgreSQL.
قم بتثبيت PgBouncer باستخدام حزمة مُثبِّت SKOOR PgBouncer:
dnf install eranger-pgbouncer
تقوم هذه الحزمة بالخطوات التالية:
تثبيت
pgbouncer
من خلال تبعياته.إعادة تهيئة PostgreSQL (postgresql.conf)
listen_addresses = 'localhost'
الاستماع للاتصالات المحلية فقطunix_socket_directories = '/var/run/postgresql-backend'
عدم استخدام مقبس PostgreSQL UNIX الافتراضيmax_connections = 300
السماح ب 300 اتصال
تكوين PgPool
listen_addr = *
listen_port = 5432
unix_socket_dir = /var/run/postgresql
max_client_conn = 300
default_pool_size = 60
تثبيت الخادم القياسي
بالنسبة للعملاء الذين يحتاجون إلى مجموعة البرامج الأساسية فقط (أي معظم العملاء)، قم بتشغيل الأمر التالي لتثبيت الحزم المطلوبة:
dnf install eranger-server
تحقق من حزم SKOOR Engine المثبتة:
dnf list installed |grep eranger
المخرجات المتوقعة:
eranger-agent.x86_64 <version> eranger-auth.x86_64 <version> eranger-collector.x86_64 <version> eranger-collector-eem.x86_64 <version> eranger-collector-mail.x86_64 <version> eranger-common.x86_64 <version> eranger-database-utils.x86_64 <version> eranger-doc.x86_64 <version> eranger-nodejs.x86_64 <version> eranger-postgresql.x86_64 <version> eranger-pymodules.x86_64 <version> eranger-report.x86_64 <version> eranger-server.x86_64 <version> eranger-syncfs.x86_64 <version> eranger-ui.x86_64 <version>
يقوم SKOOR <8.1 بتثبيت Google Chrome كتابع. يقوم Google Chrome بتثبيت مستودع YUM لتحديث نفسه إلى إصدارات أحدث . ولكن نظرًا لأن SKOOR يحتاج إلى إصدار محدد للغاية، فنحن بحاجة إلى تعطيل هذا الريبو الذي تم إنشاؤه حديثًا. لم يعد SKOOR >= 8.1 يتطلب Google Chrome بعد الآن، وبالتالي لم يعد الريبو مثبتًا أيضًا.
sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/google-chrome.repo
تثبيت مُجمّع محرك SKOOR
منذ الإصدار 5.5 هناك خياران لمجمع خارجي، التثبيت الكامل والتثبيت الأساسي. التثبيت الأساسي يأتي مع مجموعة ميزات محدودة وتبعيات أقل ويمكن توسيعه لاحقًا إلى تثبيت كامل مع حزم إضافية.
التثبيت الكامل لمُجمِّع محرك سكوور إنجنر:
لتثبيت مُجمِّع محرك SKOOR الخارجي استخدم الأمر التالي للتثبيت الكامل:
dnf install eranger-collector eranger-collector-eem eranger-collector-mail
التثبيت الأساسي لمجمع محرك سكور الأساسي:
لتثبيت مُجمِّع محرك SKOOR الخارجي الأساسي استخدم الأمر التالي:
dnf install eranger-collector
الحزم الإضافية لـ مجمع محرك سكور الأساسي:
لتمكين وظائف EEM على المجمع الخارجي يمكنك تثبيت المكوّن الإضافي باستخدام الأمر التالي:
dnf install eranger-collector-eem
لتمكين وظائف البريد (EWS أو IMAP أو POP3 أو SMTP) على المجمع الخارجي، يمكنك تثبيت المكون الإضافي باستخدام الأمر التالي:
dnf install eranger-collector-mail
الاتصال بمحرك SKOOR
بعد تثبيت مجمّع خارجي جديد، يجب تهيئة الاتصال بمحرك SKOOR. يوضح القسم التالي الاحتمالات المختلفة لتحقيق ذلك.
عام
بالنسبة لمحرك SKOOR Engine، يعتبر المجمع نوعًا خاصًا من المستخدمين. لذلك يجب تكوين كل مجمع خارجي في واجهة المستخدم. قم بإنشاء مستخدم مصادق محليًا مع الدور مجمّع في /الجذر /المستخدمين/المستخدمين/المستخدمين وقم بتعيين كلمة مرور.
يتم إجراء التكوين الإضافي في ملف تكوين المجمّعين على خادم المجمّع:
/etc/opt/eranger/eranger-collector.cfg
أولاً، يجب تحديد معرف خادم_المحرك SKOOR Engine. على مضيف SKOOR Engine، افتح ملف eranger-server.cfg:
/etc/opt/eranger/eranger-server.cfg
ابحث عن المعلمة server_id في التكوين (إذا تم التعليق عليها كما في المثال التالي، يكون المعرف 1):
#server_id = 1
إذا قام مجمّع خارجي بتسليم القياسات إلى أكثر من محرك SKOOR، يجب أن تكون المعلمة server_id مختلفة على كل محرك SKOOR.
TCP
هذه هي الطريقة القياسية التي يتواصل بها المجمّعون مع محرك SKOOR. لا يتم تشفير الاتصال.
يجب تكوين المعلمات التالية في eranger-collector.cfg:
اضبط المعلمة server1_id على القيمة التي تم تكوينها على خادم محرك SKOOR كـ server_id (الافتراضي هو 1)
قم بتعيين المعلمة server1_address على اسم مضيف محرك SKOOR أو عنوان IP الخاص بمحرك SKOOR (يتم استخدام مآخذ unix فقط للمجمعات المحلية فقط)
قم بتعيين server1_user و server1_passwd كما تم تكوينه في محرك SKOOR
server1_id = 1 server1_address = 10.10.10.10 #server1_port = 50001 #server1_domain = server1_user = collector-user server1_passwd = collector-password #server<server_id>_fetch_parse_dir (server_id instead of index)! #server1_fetch_parse_dir= /var/opt/run/eranger/collector/tmp
HTTP/HTTPS
لا يُنصح بالاتصال باستخدام HTTP بدون تشفير. إذا كان ذلك مطلوبًا لسبب ما، يجب تكوين خادم httpd على محرك SKOOR للسماح بهذا النوع من الاتصال أولاً.
لا يمكن تبديل المجمّعين الذين يستخدمون HTTP(S) للاتصال تلقائيًا عند إجراء تجاوز الفشل في إعداد أساسي/احتياطي
يصف القسم التالي كيفية إعداد الاتصال المشفر باستخدام HTTPS. للتشفير، يجب نسخ شهادة CA الجذر CA المستخدمة من قبل خادم SKOOR Engine إلى نظام المجمع. يمكن استخدام مسارات Linux القياسية لوضعها في نظام الملفات.
قم بتكوين المعلمات المطلوبة في eranger-collector.cfg:
قم بتعيين المعلمة server1_id إلى القيمة التي تم تكوينها على خادم SKOOR Engine كـ server_id (الافتراضي هو 1)
قم بتعيين المعلمة server1_address على اسم مضيف محرك SKOOR أو عنوان IP في شكل عنوان URL كما هو موضح أدناه
تأكد من التعليق على معلمة server1_port، وإلا سيؤدي ذلك إلى انقطاع الاتصال
قم بتعيين Server1_user و server1_passwd كما تم تكوينهما في محرك SKOOR
قم بتكوين إما Server1_ssl_cacert أو server1_ssl_capath إلى الموقع الذي تم نسخ الشهادة منه من قبل
server1_id = 1 server1_address = https://10.10.10.10/skoor-collector #server1_port = 50001 #server1_domain = server1_user = collector-user server1_passwd = collector-password #server<server_id>_fetch_parse_dir (server_id instead of index)! #server1_fetch_parse_dir= /var/opt/run/eranger/collector/tmp server1_ssl_cacert = /etc/pki/tls/certs/rootCA.pem
HTTPS مع مصادقة العميل
يجب تمكين مصادقة العميل على محرك SKOOR أولاً. افتح ملف تكوين خادم الويب المعني لهذا الغرض:
/etc/httpd/conf.d/skoor-engine-over-http.conf
قم بإلغاء تعليق توجيه SSLVerifyClient :
<Location "/skoor-collector"> ExpiresActive On ExpiresDefault "now" ProxyPass http://localhost:50080 retry=0 connectiontimeout=15 timeout=30 SSLVerifyClient require </Location>
إعادة تحميل httpd:
systemctl reload httpd
الاسم | الوصف |
---|---|
server1_ssl_cacert | المسار الكامل لشهادة CA الجذر، سيستخدم المجمع هذا الملف المحدد |
server1_ssl_capath | المسار إلى دليل يحتوي على شهادة المرجع المصدق المرجعي المصدق الجذر، سيبحث المجمع عن الشهادة الصحيحة |
server1_ssl_verify_peer | في حالة التعيين على صواب (افتراضي)، يتم التحقق من شهادة خادم SKOOR Engine |
server1_ssl_verify_host | إذا تم التعيين إلى صواب (افتراضي)، يتم التحقق من اسم المضيف لخادم SKOOR Engine |
server1_ssl_cert_client_public_key | المفتاح العام المستخدم لمصادقة العميل (شهادة المجمّع) |
server1_ssl_cert_client_private_key | المفتاح الخاص المستخدم لمصادقة العميل (المفتاح الخاص للمجمع) |
server1_ssl_cert_client_private_key_passwd | كلمة المرور لقراءة المفتاح الخاص للمجمع إذا تم تعيينها |
ترخيص محرك SKOOR
الحصول على ترخيص صالح من SKOOR وإضافة الأسطر اللازمة إلى الملف:
/etc/opt/eranger/eranger-server.cfg
مثال بترخيص 1000 جهاز:
license_name = Example customer license_feature_set = 3.1 license_devices= 1000 license_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxx... يمثل مفتاح الترخيص الفعلي. تأكد من إدراج المفتاح الفعلي في سطر واحد مع عدم وجود أحرف سطر جديد بينهما.
تكوين محرك SKOOR
قم بتوسيع متغير المسار للجذر:
~/.bashrc
إضافة:
PATH=$PATH:/opt/eranger/bin
ثم قم بتطبيق التغييرات وتشغيل eRanger.sh start لبدء تشغيل خدمات SKOOR Engine:
. ~/.bashrc
eRanger.sh start
=========================================================================== Choose command eRanger Version 5.0.0 Command - Action - Object - Current State =========================================================================== 1 - start - eRanger Server - started 2 - start - eRanger Collector - started 3 - start - eRanger Report - started 4 - start - eRanger Agent - started a - start - all above 9 - start - eRanger Webservice - started 11 - start - PostgreSQL - started 12 - start - Rsyslog - started 13 - start - Trapd - stopped 14 - start - Httpd - started 15 - start - Smsd - stopped 16 - start - Postfix - started r - Switch to restart mode S - Switch to stop mode c - Current eRanger status 0 - do_exit program Enter selection:
لا يتم إدراجخدمات Webservice و IC Alerter و Ethd إلا إذا كانت الحزمة المقابلة مثبتة.
أدخل a لبدء تشغيل جميع الخدمات المطلوبة. ثم اخرج بـ 0.
تسجيل الدخول إلى محرك SKOOR
يجب أن يكون المرء الآن قادرًا على تسجيل الدخول إلى SKOOR Engine باستخدام متصفح الويب وإدخال عنوان FQDN أو عنوان IP الخاص ب SKOOR Engine في شريط العناوين:
بيانات اعتماد تسجيل الدخول الافتراضية هي:
اسم المستخدم | admin |
---|---|
كلمة المرور | admin |
بعد التثبيت الافتراضي، سيشتكي المتصفح من شهادات أمان SSL غير موثوق بها. إما أن تقبل الشهادة الافتراضية الموقعة ذاتياً أو أن تنشئ شهادة SSL مخصصة وتثبتها.
توجد الشهادات بشكل افتراضي ضمن:
/etc/pki/tls/certs/
يجب تعديل ملف التكوين
/etc/httpd/conf.d/eranger.conf
يجب تعديله للإشارة إلى الشهادات الصحيحة. مثال على الإدخال يبدو كالتالي:
SSLCertificateFile /etc/pki/tls/certs/wildcard_mycompany.ch.crt SSLCertificateKeyFile /etc/pki/tls/private/private-key_mycompany.ch.key
عند استدعاء http://skoor.company.com، سيقوم خادم الويب بإعادة كتابة العنوان لاستخدام https بدلاً من http. إذا كان سيتم استخدام http فقط، قم بتعطيل قاعدة إعادة الكتابة في ملف التكوين:
/etc/httpd/conf.d/eranger.conf
قم بالتعليق على الأسطر الثلاثة التالية (ضع علامة التجزئة في البداية):
# RewriteEngine On # RewriteCond %{HTTPS} !=on # RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
أعد تشغيل خادم الويب Apache باستخدام الأمر:
eRanger.sh restart httpd
أو:
systemctl restart httpd
تحسين SKOOR على البيئات الافتراضية
في حالة تشغيل محرك SKOOR أو مجمّع SKOOR داخل جهاز افتراضي، يجب تكييف جدولة الإدخال والإخراج لأسباب تتعلق بالأداء. بشكل افتراضي، يتم تثبيت Red Hat <7 افتراضيًا باستخدام مجدول الإدخال والإخراج cfq IO. برنامج جدولة الإدخال والإخراج الموصى به لأنظمة ريد هات التي تعمل في جهاز افتراضي هو برنامج جدولة noop في ريد هات 7 وبرنامج جدولة اللاشيء في ريد هات 8/9.
بالنسبة لأنظمة ريد هات 7
قم بتشغيل الأوامر التالية لتمكين جدولة noop لنظام قيد التشغيل لجهاز كتلة sda الذي يتوافق عادةً مع القرص الأول:
# echo noop > /sys/block/sda/queue/scheduler # cat /sys/block/sda/queue/scheduler [noop] anticipatory deadline cfq
يتم الآن تمييز جدولة noop كجدولة حالية. قم بتشغيل هذا الأمر لكل قرص من الأقراص الافتراضية المكوّنة للنظام (استبدل sda باسم القرص الافتراضي).
ومع ذلك، لن يستمر الإعداد أعلاه عبر عمليات إعادة التشغيل. استخدم الدليل التالي لتمكين جدولة noop باستمرار.
قم بتعيين noop عالميًا لجميع الأجهزة عن طريق التحرير the file /etc/default/grub
كما هو موضح أدناه ثم إعادة إنشاء ملف تكوين grub2:
# vi /etc/default/grub ... GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel00/root rd.lvm.lv=rhel00/swap" (before) GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel00/root rd.lvm.lv=rhel00/swap elevator=noop" (after) ... # grub2-mkconfig -o /boot/grub2/grub.cfg (on BIOS-based machines) # grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg (on UEFI-based machines)
لأنظمة ريد هات 8/9
قم بتشغيل الأوامر التالية لتمكين المجدول noop لنظام قيد التشغيل لجهاز كتلة sda الذي يتوافق عادةً مع القرص الأول:
# echo none > /sys/block/sda/queue/scheduler # cat /sys/block/sda/queue/scheduler [none] mq-deadline kyber bfq
يتم الآن تمييز المجدول اللاشيء على أنه المجدول الحالي. قم بتشغيل هذا الأمر لكل قرص من الأقراص الافتراضية المكوّنة للنظام (استبدل sda باسم القرص الافتراضي).
ومع ذلك، لن يستمر الإعداد أعلاه عبر عمليات إعادة التشغيل. استخدم الدليل التالي لتمكين جدولة اللاشيء بشكل مستمر.
قم بتعيين لا شيء على مستوى العالم لجميع الأجهزة عن طريق التحرير the file /etc/default/grub
كما هو موضح أدناه ثم إعادة إنشاء ملف تكوين grub2:
# vi /etc/default/grub ... GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/rh9-swap rd.lvm.lv=rh9/root rd.lvm.lv=rh9/swap" (before) GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/rh9-swap rd.lvm.lv=rh9/root rd.lvm.lv=rh9/swap elevator=none" (after) ... # grub2-mkconfig -o /boot/grub2/grub.cfg (on BIOS-based machines) # grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg (on UEFI-based machines)
إنشاء مستودع yum
في حال لم يكن لدى مضيفي المُجمِّع البعيد إمكانية الوصول إلى أي مستودعات ريد هات ولكن محرك SKOOR لديه إمكانية الوصول، فقد يكون من المفيد إنشاء مستودع برامج بسيط على الخادم الذي يحتوي على جميع ملفات RPM المستخدمة للتثبيت عبر yum. سيكون المستودع متاحًا لمضيفي المجمع عبر المنفذ 443 وهو منفذ مفتوح بالفعل. فيما يلي الخطوات المطلوبة لإعداد مثل هذا المستودع والوصول إليه من مضيف المجمع البعيد:
قم بإنشاء الدليل الجذر للمستودع وانسخ جميع ملفات RPM المطلوبة:
# cd /srv/eranger/html # mkdir repo # cp /path/to/*.rpm repo/ # yum install createrepo # createrepo ./repo
استبدل /path/to/ أعلاه بالمسار حيث تم نسخ ملفات RPM المطلوبة على مضيف SKOOR Engine. سيؤدي هذا إلى إنشاء دليل فرعي جديد باسم repodata داخل دليل الريبو.
أضف الآن المستودع كمصدر لتثبيت الحزمة على المضيفين البعيدين (على سبيل المثال مضيف مجمع SKOOR Engine):
# vi /etc/yum.repos.d/SKOOR.repo
[SKOOR] name=SKOOR baseurl=https://<ip or hostname of repository>/repo/ sslverify=false gpgcheck=0 enabled=1
تحقق من الوصول إلى الريبو المضاف حديثاً من المضيف البعيد:
# yum clean all # yum repolist
الآن يمكن للمضيف البعيد تثبيت البرنامج باستخدام مستودع SKOOR كمصدر للحزمة.
إضافة قرص DVD أو قرص مضغوط كمستودع
لتثبيت البرنامج من محرك أقراص RedHat DVD أو قرص مضغوط مدرج، أضف مستودعًا جديدًا عن طريق إنشاء الملف التالي:
vi /etc/yum.repos.d/RHEL_6.5_DVD.repo
[RHEL_6.5_DVD] name=RHEL_6.5_DVD baseurl="file:///cdrom/" gpgcheck=0