איסוף יומנים של Kemp Load Balancer

נתמך ב:

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

‫Progress Kemp LoadMaster (לשעבר Kemp Load Balancer) הוא בקר להעברת אפליקציות (ADC) שמספק איזון עומסים, הסרת הצפנת SSL וניהול תנועה לאפליקציות ארגוניות. הוא מפזר את התנועה הנכנסת בין כמה שרתים כדי להבטיח זמינות גבוהה, לשפר את הביצועים ולחזק את האבטחה של אפליקציות ושירותים מבוססי-אינטרנט.

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

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

  • מופע של Google SecOps
  • מארח עם Windows 2016 ואילך או Linux עם systemd
  • אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
  • גישה עם הרשאות לממשק המשתמש באינטרנט (WUI) של Progress Kemp LoadMaster

קבלת פרטי כניסה ל-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.
  3. לוחצים על Create service account.
  4. מזינים את פרטי ההגדרה הבאים:
    • שם חשבון השירות: מזינים שם לחשבון (לדוגמה, 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 בספריית Bindplane Collector (/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 ומעתיקים את הערך של Project number. תצטרכו אותו כדי להגדיר את כלי הייצוא.

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

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

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

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

התקנת Bindplane Agent

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

התקנה ב-Windows

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

      msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

התקנה ב-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
    

מקורות מידע נוספים בנושא התקנה

אפשרויות התקנה נוספות מפורטות במדריך ההתקנה.

הגדרה של Bindplane Agent להטמעה של Syslog ושליחה ל-Google SecOps

  1. גישה לקובץ התצורה:

    • מאתרים את הקובץ config.yaml. בדרך כלל, הוא נמצא בספרייה /opt/observiq-otel-collector/ ב-Linux או בספריית ההתקנה ב-Windows.
    • פותחים את הקובץ באמצעות כלי לעריכת טקסט (לדוגמה, nano,‏ vi או פנקס הרשימות).
  2. עורכים את הקובץ config.yaml באופן הבא:

      receivers:
        udplog:
          # Replace the port and IP address as required
          listen_address: "0.0.0.0:514"
    
      exporters:
        chronicle/chronicle_w_labels:
          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
          # Adjust the path to the credentials file you downloaded in Step 1
          creds_file_path: '/path/to/ingestion-authentication-file.json'
          # Replace with your actual customer ID from Step 2
          customer_id: YOUR_CUSTOMER_ID_HERE
          endpoint: chronicle.googleapis.com
          # Add optional ingestion labels for better organization
          log_type: 'KEMP_LOADBALANCER'
          raw_log_field: body
          ingestion_labels:
    
      service:
        pipelines:
          logs/source0__chronicle_w_labels-0:
            receivers:
              - udplog
            exporters:
              - chronicle/chronicle_w_labels
    
  3. מחליפים את היציאה ואת כתובת ה-IP לפי הצורך בתשתית שלכם.

  4. מחליפים את YOUR_CUSTOMER_ID_HERE במספר הלקוח בפועל.

  5. מעדכנים את /path/to/ingestion-authentication-file.json לנתיב הקובץ שבו נשמר קובץ המפתח של חשבון השירות (אפשרות 1) בשלב 1.

  6. מחליפים את <LOCATION> באזור של מכונת Google SecOps (לדוגמה, us,‏ europe או asia-southeast1). הערך הזה יתווסף לתחילת השם של קובץ הייצוא chronicle.googleapis.com. רשימה מלאה של נקודות הקצה האזוריות מופיעה במאמר Regional Endpoints.

  7. מחליפים את <PROJECT_NUMBER> במספר הפרויקט מתוך IAM & Admin > Settings.

מייצא API להטמעה מדור קודם

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

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: YOUR_CUSTOMER_ID_HERE
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'KEMP_LOADBALANCER'
        raw_log_field: body
        ingestion_labels:
    

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

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

      sudo systemctl restart observiq-otel-collector
    
  2. כדי להפעיל מחדש את הסוכן של Bindplane ב-Windows, אפשר להשתמש במסוף Services או להזין את הפקודה הבאה:

      net stop observiq-otel-collector && net start observiq-otel-collector
    

הגדרת העברת syslog ב-Progress Kemp LoadMaster

  1. נכנסים לממשק המשתמש באינטרנט (WUI) של Progress Kemp LoadMaster.
  2. עוברים אל System Configuration > Logging Options > Syslog Options.
  3. בשדה Remote Syslog Host, מזינים את כתובת ה-IP של המארח של סוכן Bindplane (לדוגמה, 192.168.1.100).
  4. בשדה Remote Syslog Port, מזינים את הערך 514 (או את היציאה שהוגדרה ב-Bindplane).
  5. מגדירים את האפשרות Info Syslog Messages ל-Yes כדי להפעיל הודעות יומן אינפורמטיביות.
  6. כדי להפעיל הודעות אזהרה, מגדירים את האפשרות הודעות אזהרה ב-Syslog לערך כן.
  7. כדי להפעיל את הודעות השגיאה, מגדירים את האפשרות Error Syslog Messages (הודעות שגיאה ב-Syslog) לערך Yes (כן).
  8. מגדירים את האפשרות הודעות קריטיות של Syslog לכן כדי להפעיל הודעות קריטיות.
  9. מגדירים את האפשרות Emergency Syslog Messages (הודעות Syslog במקרה חירום) לערך Yes (כן) כדי להפעיל הודעות במקרה חירום.
  10. לוחצים על Set Syslog Parameters (הגדרת פרמטרים של Syslog) כדי לשמור את ההגדרות האישיות.
  11. כדי להפעיל את הרישום ב-syslog של WAF, עוברים אל System Configuration > Logging Options > WAF Syslog Options (הגדרות מערכת > אפשרויות רישום ביומן > אפשרויות רישום ביומן של WAF).
  12. מגדירים את האפשרות Remote Syslog ל-Yes.
  13. לוחצים על Set WAF Syslog Parameters כדי לשמור.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
hlen_label additional.fields ממוזג
meta_sequenceId_label additional.fields ממוזג
nhdrs_label additional.fields ממוזג
intermediary intermediary ממוזג
inter_hostname intermediary.hostname מיפוי ישיר
description metadata.description מיפוי ישיר
event_type metadata.event_type שינוי שם/מיפוי
log_event metadata.product_event_type מיפוי ישיר
sequenceId metadata.product_log_id מיפוי ישיר
ftpmethod network.ftp.command מיפוי ישיר
http_method network.http.method מיפוי ישיר
http_response_code network.http.response_code מיפוי ישיר
process_name principal.application מיפוי ישיר
src_ip principal.ip ממוזג
srcip principal.ip ממוזג
src_port principal.port מיפוי ישיר
srcport principal.port מיפוי ישיר
sec_result security_result ממוזג
sshd target.application מיפוי ישיר
filename target.file.full_path מיפוי ישיר
file_size target.file.size שינוי שם/מיפוי
dest_ip target.ip ממוזג
dstip target.ip ממוזג
vs target.ip ממוזג
dest_port target.port מיפוי ישיר
dstport target.port מיפוי ישיר
vs_port target.port מיפוי ישיר
pid target.process.pid מיפוי ישיר
http_path target.url מיפוי ישיר
resource target.url מיפוי ישיר
user target.user.userid מיפוי ישיר
לא רלוונטי additional.fields קבוע: meta_sequenceId_label
לא רלוונטי extensions.auth.type קבוע: AUTHTYPE_UNSPECIFIED
לא רלוונטי intermediary קבוע: intermediary
לא רלוונטי metadata.event_type קבוע: GENERIC_EVENT
לא רלוונטי metadata.product_name קבוע: KEMP_LOADBALANCER
לא רלוונטי metadata.vendor_name קבוע: KEMP
לא רלוונטי network.application_protocol קבוע: HTTP
לא רלוונטי principal.ip קבוע: src_ip
לא רלוונטי security_result קבוע: sec_result
לא רלוונטי target.ip קבוע: dest_ip
meta_sequenceId event.idm.read_only_udm.additional.fields מופה מיומן השינויים
event_type USER_UNCATEGORIZED מופה מיומן השינויים

מידע נוסף על מיפוי השדות של המנתח זמין בחומר העזר בנושא מנתח KEMP_LOADBALANCER.

יומן שינויים

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

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