איסוף יומנים של VMware vSphere

נתמך ב:

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

‫VMware vSphere היא פלטפורמת וירטואליזציה שיוצרת הודעות syslog לאירועים במארח ESXi, לפעולות במכונה וירטואלית, לאימות ולמעקב אחר תקינות המערכת.

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

חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:

  • מופע של Google SecOps
  • ‫Windows Server 2016 ואילך, או מארח Linux עם systemd
  • קישוריות לרשת בין סוכן Bindplane לבין המארח VMware vSphere ESXi
  • אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
  • גישה עם הרשאות ל-VMware vSphere Web Client או ל-ESXi Shell

קבלת קובץ אימות להטמעת נתונים ב-Google SecOps

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

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

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

התקנת סוכן Bindplane

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

התקנה ב-Windows

  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
    

    השירות צריך להופיע כפעיל (פועל).

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

אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן 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/vmware_vsphere:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: VMWARE_VSPHERE
            raw_log_field: body
    
    service:
        pipelines:
            logs/vmware_vsphere_to_chronicle:
                receivers:
                    - udplog
                exporters:
                    - chronicle/vmware_vsphere
    

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

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

  • הגדרת מקלט:

    • ‫listen_address: כתובת ה-IP והיציאה להאזנה:
      • ‫0.0.0.0 כדי להאזין בכל הממשקים (מומלץ)
      • יציאה 514 היא יציאת syslog רגילה (נדרשת הרשאת root ב-Linux; אפשר להשתמש ב-1514 ללא הרשאת root)
  • הגדרת כלי הייצוא:

    • ‫creds_file_path: הנתיב המלא לקובץ האימות להטמעת נתונים:
      • ‫Linux: /etc/bindplane-agent/ingestion-auth.json
      • ‫Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • ‫customer_id: מספר הלקוח שהועתק ממסוף Google SecOps
    • ‫endpoint: כתובת ה-URL של נקודת הקצה האזורית:
      • ארה"ב: malachiteingestion-pa.googleapis.com
      • אירופה: europe-malachiteingestion-pa.googleapis.com
      • אסיה: asia-southeast1-malachiteingestion-pa.googleapis.com
      • רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.

שמירת קובץ ההגדרות

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

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

  • כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:

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

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

      sudo journalctl -u observiq-otel-collector -f
      
  • כדי להפעיל מחדש את סוכן Bindplane ב-Windows, בוחרים באחת מהאפשרויות הבאות:

    • שורת הפקודה או PowerShell כאדמין:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • מסוף השירותים:

      1. מקישים על Win+R, מקלידים services.msc ומקישים על Enter.
      2. מחפשים את observIQ OpenTelemetry Collector.
      3. לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
      4. מוודאים שהשירות פועל:

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

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

הגדרת syslog ב-VMware vSphere

אפשרות 1: vSphere Web Client

  1. נכנסים אל vSphere Web Client.
  2. בוחרים את המארח ESXi.
  3. עוברים אל הגדרה > מערכת > הגדרות מערכת מתקדמות.
  4. לוחצים על Edit.
  5. מגדירים את הפרמטר Syslog.global.logHost לערך udp://<bindplane-ip>:514 (מחליפים את <bindplane-ip> בכתובת ה-IP של סוכן Bindplane).
  6. לוחצים על OK.

אפשרות 2: ESXi Shell

  1. מתחברים ב-SSH למארח ESXi.
  2. מריצים את הפקודות הבאות:

    esxcli system syslog config set --loghost=udp://<bindplane-ip>:514
    esxcli system syslog reload
    
    • מחליפים את <bindplane-ip> בכתובת ה-IP של סוכן Bindplane.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
Originator_label additional.fields ממוזג
activityType_label additional.fields ממוזג
certVerificationStatus_label additional.fields ממוזג
cls_simple_activity_label additional.fields ממוזג
itemType_label additional.fields ממוזג
logtype_label additional.fields ממוזג
opID_label additional.fields ממוזג
progress_label additional.fields ממוזג
securityCompliance_label additional.fields ממוזג
sub_label additional.fields ממוזג
vpxd_label additional.fields ממוזג
column9 extensions.auth.type מיפוי: logged out → AUTHTYPE_UNSPECIFIED
column9 metadata.description מיפוי ישיר
msg metadata.description מיפוי ישיר
response_Message metadata.description מיפוי ישיר
column3 metadata.event_timestamp ניתוח הכתובות שברשימה: ISO8601
column9 metadata.event_type מיפוי: logged out → USER_LOGOUT
has_principal metadata.event_type מיפוי: true ← NETWOK_CONNECTION, ‏ true ← STATUS_UPDATE
column4 metadata.product_event_type מיפוי ישיר
column1 metadata.product_log_id מיפוי ישיר
uuid metadata.product_log_id מיפוי ישיר
user_agent network.http.parsed_user_agent שם שונה/מיפוי
user_agent network.http.user_agent מיפוי ישיר
sessionId network.session_id מיפוי ישיר
Hostname principal.asset.hostname מיפוי ישיר
hostname principal.asset.hostname מיפוי ישיר
srcip principal.asset.ip ממוזג
Hostname principal.hostname מיפוי ישיר
hostname principal.hostname מיפוי ישיר
srcip principal.ip ממוזג
column5 security_result.severity מיפוי: INFO → INFORMATIONAL
severity security_result.severity_details מיפוי ישיר
pid target.process.pid מיפוי ישיר
column7 target.resource.name מיפוי ישיר
column6 target.user.userid מיפוי ישיר
לא רלוונטי extensions.auth.type קבוע: AUTHTYPE_UNSPECIFIED
לא רלוונטי metadata.event_type קבוע: NETWOK_CONNECTION
לא רלוונטי metadata.product_name קבוע: VMWARE_VSPHERE
לא רלוונטי metadata.vendor_name קבוע: VMWARE_VSPHERE
לא רלוונטי security_result.severity קבוע: INFORMATIONAL
timestamp event.idm.read_only_udm.metadata.event_timestamp מופה מיומן השינויים
file_path event.idm.read_only_udm.target.process.file.full_path מופה מיומן השינויים
api_invocations event.idm.read_only_udm.security_result.detection_fields מופה מיומן השינויים
column2 event.idm.read_only_udm.additional.fields מופה מיומן השינויים
login time event.idm.read_only_udm.additional.fields מופה מיומן השינויים
syslog_priority event.idm.read_only_udm.additional.fields מופה מיומן השינויים
user_level event.idm.read_only_udm.additional.fields מופה מיומן השינויים
session_id event.idm.read_only_udm.network.session_id מופה מיומן השינויים
uuid event.idm.read_only_udm.metadata.product_log_id מופה מיומן השינויים
Hostname event.idm.read_only_udm.principal.hostname מופה מיומן השינויים
Hostname event.idm.read_only_udm.principal.asset.hostname מופה מיומן השינויים
msg event.idm.read_only_udm.metadata.description מופה מיומן השינויים
Originator event.idm.read_only_udm.additional.fields מופה מיומן השינויים
sub event.idm.read_only_udm.additional.fields מופה מיומן השינויים
opID event.idm.read_only_udm.additional.fields מופה מיומן השינויים
progress event.idm.read_only_udm.additional.fields מופה מיומן השינויים
cls_simple_activity event.idm.read_only_udm.additional.fields מופה מיומן השינויים
certVerificationStatus event.idm.read_only_udm.additional.fields מופה מיומן השינויים
itemType event.idm.read_only_udm.additional.fields מופה מיומן השינויים
vpxd event.idm.read_only_udm.additional.fields מופה מיומן השינויים
securityCompliance event.idm.read_only_udm.additional.fields מופה מיומן השינויים
logtype event.idm.read_only_udm.additional.fields מופה מיומן השינויים
severity event.idm.read_only_udm.security_result.severity_details מופה מיומן השינויים

יומן שינויים

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

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