איסוף יומני מערכת של IBM AIX

גרסת כלי הניתוח: 15.0

נתמך ב:

במסמך הזה מוסבר איך להטמיע יומני מערכת של IBM AIX ב-Google Security Operations באמצעות Bindplane.

‫IBM AIX היא מערכת הפעלה מבוססת-Unix שנועדה לעומסי עבודה ארגוניים בחומרה של IBM Power Systems. יומני המערכת של AIX מכילים מידע על אירועים במערכת, פעילות אימות, הודעות ליבה, פעולות של שדים ואירועים שקשורים לאבטחה שנוצרו על ידי שד syslog.

לפני שמתחילים

חשוב לוודא שיש לכם את הדברים הבאים:

  • מופע של Google SecOps.
  • ‫Windows Server 2016 ואילך, או מארח Linux עם systemd להפעלת סוכן Bindplane.
  • קישוריות רשת בין המארח של סוכן Bindplane לבין מערכת AIX ביציאת UDP‏ 514.
  • אם מריצים את הסוכן מאחורי שרת proxy, צריך לוודא שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane.
  • גישת רוט (Root) או גישה מיוחדת למערכת AIX.
  • מערכת הפעלה IBM AIX 7.1 ואילך.

קבלת פרטי כניסה ל-Google SecOps בשביל סוכן Bindplane

כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים באחת מהשיטות הבאות:

  • פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
  • פריסות קודמות: ממשיכים להשתמש בקובץ האימות להטמעת נתונים (אפשרות 2) עד שה-Ingestion API יופסק ב-20 ביולי 2027.
  1. נכנסים אל Google Cloud המסוף ובוחרים את Google Cloud הפרויקט שמקושר למופע של Google SecOps.
  2. נכנסים אל IAM & Admin > Service Accounts (ניהול הרשאות גישה (IAM) & אדמין > חשבונות שירות).
  3. לוחצים על Create service account.
  4. מספקים את פרטי ההגדרה הבאים:
    • Service account name: מזינים שם לחשבון (לדוגמה, bindplane-ingest).
    • תיאור חשבון השירות: מזינים תיאור (לדוגמה, Bindplane agent log ingestion).
  5. לוחצים על Create and continue.
  6. בקטע Grant this service account access to project, לוחצים על Select a role ובוחרים באפשרות Chronicle Editor.
  7. לוחצים על המשך ואז על סיום.
  8. לוחצים על חשבון השירות שיצרתם ועוברים לכרטיסייה Keys.
  9. לוחצים על Add key > Create new key.
  10. בוחרים באפשרות JSON ולוחצים על Create. קובץ המפתח יורד למחשב.
  11. שומרים את קובץ המפתח בתור ingestion-auth.json בספריית ה-collector של Bindplane (/opt/observiq-otel-collector/ingestion-auth.json ב-Linux או C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json ב-Windows), או מעדכנים את creds_file_path ב-config.yaml כך שיתאים לנתיב שבו שמרתם אותו.
  12. עוברים אל IAM & Admin > Settings (ניהול הרשאות גישה ואדמין > הגדרות) ומעתיקים את מספר הפרויקט. תצטרכו אותו כדי להגדיר את כלי הייצוא.

אפשרות 2: הורדה של קובץ האימות להטמעת נתונים (מדור קודם)

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל הגדרות SIEM > סוכני איסוף.
  3. מורידים את קובץ האימות להטמעת נתונים.
  4. שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן סוכן Bindplane.

איך מוצאים את מספר הלקוח ב-Google SecOps

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל SIEM Settings > Profile.
  3. מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.

התקנת הסוכן של Bindplane

מתקינים את הסוכן של Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.

התקנת חלונות

  1. פותחים את שורת הפקודה או את PowerShell כאדמין.
  2. מריצים את הפקודה הבאה:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. מחכים שההתקנה תסתיים.

  4. מאמתים את ההתקנה על ידי הרצת:

    sc query observiq-otel-collector
    

השירות אמור להופיע כ-RUNNING.

התקנה ב-Linux

  1. פותחים טרמינל עם הרשאות root או sudo.
  2. מריצים את הפקודה הבאה:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. מחכים שההתקנה תסתיים.

  4. כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:

    sudo systemctl status observiq-otel-collector
    

השירות אמור להופיע כ-active (running).

מקורות מידע נוספים להתקנה

אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.

הגדרת סוכן Bindplane להטמעת syslog ושליחה אל Google SecOps

מאתרים את קובץ התצורה

  • Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • ‫Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

עריכת קובץ התצורה

  • מחליפים את כל התוכן של config.yaml בהגדרה הבאה:

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/aix_system:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        creds_file_path: '<CREDS_FILE_PATH>'
        customer_id: '<CUSTOMER_ID>'
        endpoint: chronicle.googleapis.com
        log_type: AIX_SYSTEM
        raw_log_field: body
        ingestion_labels:
          source: aix
    
    service:
      pipelines:
        logs/aix_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/aix_system
    

פרמטרים להגדרה

מחליפים את ה-placeholders הבאים:

הגדרת כלי הייצוא:

  • ‫<CREDS_FILE_PATH>: הנתיב המלא לקובץ המפתח של חשבון השירות בפורמט JSON (אפשרות 1):
    • ‫Linux: /opt/observiq-otel-collector/ingestion-auth.json
    • ‫Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
  • ‫<CUSTOMER_ID>: מספר הלקוח מהשלב הקודם
  • ‫location: מחליפים את <LOCATION> באזור של המכונה של Google SecOps (לדוגמה, us,‏ europe או asia-southeast1). המייצא מוסיף את הערך הזה בתחילת chronicle.googleapis.com. רשימה מלאה של נקודות הקצה האזוריות מופיעה במאמר Regional Endpoints.
  • ‫project: מחליפים את <PROJECT_NUMBER> במספר הפרויקט מתוך IAM & Admin > Settings.
  • ‫endpoint: צריך להשאיר את ההגדרה chronicle.googleapis.com.

כלי לייצוא נתונים מ-Legacy ingestion API

  • אם משתמשים בקובץ האימות של ההעלאה מאפשרות 2, מחליפים את הבלוק exporters בבלוק הבא. מגדירים את creds_file_path לנתיב של קובץ האימות להטמעת נתונים. אם המכונה נמצאת מחוץ לארה"ב, מחליפים את malachiteingestion-pa.googleapis.com בנקודת הקצה האזורית (לדוגמה, europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/aix_system:
        compression: gzip
        creds_file_path: '<CREDS_FILE_PATH>'
        customer_id: '<CUSTOMER_ID>'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: AIX_SYSTEM
        raw_log_field: body
        ingestion_labels:
          source: aix
    

שמירת קובץ התצורה

אחרי שמסיימים לערוך, שומרים את הקובץ:

  • ‫Linux: מקישים על Ctrl+O, אחר כך על Enter ואז על Ctrl+X.
  • ‫Windows: לוחצים על קובץ > שמירה.

מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.

כדי להפעיל מחדש את סוכן Bindplane ב-Linux:

  1. מריצים את הפקודה הבאה:

    sudo systemctl restart observiq-otel-collector
    
  2. מוודאים שהשירות פועל:

    sudo systemctl status observiq-otel-collector
    
  3. בודקים אם יש שגיאות ביומנים:

    sudo journalctl -u observiq-otel-collector -f
    

כדי להפעיל מחדש את הסוכן של Bindplane ב-Windows:

  1. בוחרים אחת מהאפשרויות האלה:

    • שורת הפקודה או PowerShell כאדמין:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • מסוף השירותים:
      1. לוחצים על Win+R, מקלידים services.msc ולוחצים על Enter.
      2. מאתרים את observIQ OpenTelemetry Collector.
      3. לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
  2. מוודאים שהשירות פועל:

    sc query observiq-otel-collector
    
  3. בודקים אם יש שגיאות ביומנים:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    

הגדרת העברה של syslog ב-AIX

  1. נכנסים למערכת AIX עם הרשאות ברמה הבסיסית (root) או עם הרשאות גישה.
  2. עורכים את הקובץ /etc/syslog.conf באמצעות כלי לעריכת טקסט (לדוגמה, vi):

    vi /etc/syslog.conf
    
  3. מוסיפים את השורה הבאה כדי להעביר את היומנים לסוכן Bindplane:

    *.info  @<BINDPLANE_AGENT_IP>
    
    • מחליפים את <BINDPLANE_AGENT_IP> בכתובת ה-IP של המארח של סוכן Bindplane.
    • התו המפריד בין הבורר (*.info) לבין הפעולה (@<BINDPLANE_AGENT_IP>) חייב להיות תו Tab.
    • הבורר *.info מעביר את כל ההודעות עם עדיפות info או גבוהה יותר מכל המתקנים. משנים את המתקן ואת העדיפות לפי הצורך.
  4. שומרים את הקובץ ויוצאים מהכלי לעריכת טקסט.

  5. כדי להחיל את השינויים, מרעננים את שד syslogd:

    refresh -s syslogd
    
    stopsrc -s syslogd
    startsrc -s syslogd
    
  6. מוודאים שהדמון syslogd פועל:

    lssrc -s syslogd
    

    בפלט אמור להופיע syslogd עם הסטטוס active.

  7. מוודאים שיציאת UDP‏ 514 פתוחה בין המארח של AIX לבין סוכן Bindplane.

אימות העברת היומנים

כדי לבדוק שהיומנים מועברים לסוכן Bindplane:

  1. במערכת AIX, יוצרים הודעת יומן בדיקה:

    logger -p user.info "Test syslog message from AIX"
    
  2. במארח של סוכן Bindplane, בודקים את יומני הסוכן כדי לוודא שההודעה התקבלה:

    ‫Linux:

    sudo journalctl -u observiq-otel-collector -n 50
    

    ‫Windows:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    
  3. מוודאים שהיומנים מופיעים במסוף Google SecOps תוך 5-10 דקות.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
application target.application ערך שחולץ משדה ההודעה באמצעות דפוסי grok.
cmddata target.process.command_line ערך שחולץ משדה ההודעה באמצעות דפוסי grok.
command_line principal.process.command_line ערך שחולץ משדה התיאור באמצעות דפוסי grok.
description metadata.description ערך שחולץ משדה ההודעה באמצעות דפוסי grok.
folder target.process.file.full_path ערך שחולץ משדה ההודעה באמצעות תבניות grok.
hostname principal.hostname ערך שחולץ משדה ההודעה באמצעות תבניות grok.
intermediary_hostip intermediary.ip ערך שחולץ משדה ההודעה באמצעות דפוסי grok.
sc_summary security_result.summary ערך שחולץ משדה התיאור באמצעות דפוסי grok.
severity security_result.severity הערך צריך להיות INFORMATIONAL אם רמת החומרה היא info (לא תלוי-רישיות). הגדרת הערך "ERROR" אם רמת החומרה היא "Err" (לא תלוי-רישיות).
src_ip principal.ip ערך שחולץ מהשדה message או מהשדה description באמצעות דפוסי grok.
src_port principal.port ערך שחולץ משדה התיאור באמצעות דפוסי grok.
sys_log_host intermediary.hostname ערך שחולץ משדה ההודעה באמצעות דפוסי grok.
syslog_priority security_result.priority_details ערך שחולץ משדה ההודעה באמצעות תבניות grok.
ts metadata.event_timestamp ההמרה מהשדה ts בהודעת היומן מתבצעת באמצעות grok ומסנן תאריכים.
user principal.user.userid ערך שחולץ מהשדה message או מהשדה description באמצעות דפוסי grok.
לא רלוונטי metadata.event_type צריך להגדיר את הערך STATUS_UPDATE אם src_ip או hostname קיימים. אם המשתמש קיים אבל האחרים לא, צריך להגדיר את הערך "USER_UNCATEGORIZED". אחרת, צריך להגדיר את הערך "GENERIC_EVENT".
לא רלוונטי metadata.vendor_name מגדירים את הערך ל-AIX_SYSTEM.
לא רלוונטי metadata.product_name מגדירים את הערך ל-AIX_SYSTEM.
לא רלוונטי metadata.log_type מגדירים את הערך ל-AIX_SYSTEM.

יומן שינויים

צפייה ביומן השינויים של המנתח הזה

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.