איסוף יומני Tailscale

נתמך ב:

במאמר הזה מוסבר איך להטמיע יומני Tailscale ב-Google Security Operations באמצעות התכונה המובנית של Tailscale להעברת יומנים בסטרימינג ל-Amazon S3. ‫Tailscale מייצרת נתונים תפעוליים בצורה של יומני ביקורת של הגדרות אישיות ויומני זרימת נתונים ברשת. השילוב הזה משתמש ביכולת הסטרימינג המובנית של Tailscale ב-S3 כדי לשלוח את היומנים האלה באופן אוטומטי אל Google SecOps לצורך ניתוח ומעקב.

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

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

  • מופע של Google SecOps
  • גישה עם הרשאות למסוף Admin של Tailscale (תפקיד בעלים, אדמין, אדמין של הרשת או אדמין ממחלקת IT)
  • גישה עם הרשאות ל-AWS‏ (S3, ‏ IAM)

איסוף דרישות מוקדמות של Tailscale (מידע על tailnet)

  1. נכנסים למסוף Admin של Tailscale.
  2. שימו לב לשם ה-tailnet (לדוגמה, example.com או שם הארגון).
  3. מוודאים שיש לכם את התוכנית הנדרשת:
    • סטרימינג של יומן ביקורת של הגדרות אישיות: זמין בתוכניות Personal,‏ Personal Plus ו-Enterprise.
    • סטרימינג של יומני תנועה ברשת: זמין רק בתוכנית Enterprise.

הגדרת קטגוריית AWS S3 ו-IAM ל-Google SecOps

  1. יוצרים קטגוריה של Amazon S3 לפי המדריך למשתמש: יצירת קטגוריה
  2. שומרים את שם הקטגוריה ואת האזור שלה לעיון בעתיד (לדוגמה, tailscale-logs).
  3. יוצרים משתמש לפי המדריך למשתמש: יצירת משתמש IAM.
  4. בוחרים את המשתמש שנוצר.
  5. לוחצים על הכרטיסייה פרטי כניסה מאובטחים.
  6. בקטע Access Keys, לוחצים על Create Access Key.
  7. בוחרים באפשרות שירות של צד שלישי בתור תרחיש לדוגמה.
  8. לוחצים על הבא.
  9. אופציונלי: מוסיפים תג תיאור.
  10. לוחצים על יצירת מפתח גישה.
  11. לוחצים על Download CSV file כדי לשמור את Access Key ואת Secret Access Key לשימוש מאוחר יותר.
  12. לוחצים על סיום.
  13. לוחצים על הכרטיסייה הרשאות.
  14. בקטע מדיניות הרשאות, לוחצים על הוספת הרשאות.
  15. לוחצים על הוספת הרשאות.
  16. בוחרים באפשרות Attach policies directly.
  17. מחפשים את המדיניות AmazonS3FullAccess ובוחרים בה.
  18. לוחצים על הבא.
  19. לוחצים על הוספת הרשאות.

הגדרת המדיניות והתפקיד ב-IAM להעלאות ל-S3

  1. במסוף AWS, עוברים אל IAM > Policies > Create policy > הכרטיסייה JSON.
  2. מזינים את המדיניות הבאה:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AllowTailscalePutObjects",
          "Effect": "Allow",
          "Action": [
            "s3:PutObject",
            "s3:PutObjectAcl"
          ],
          "Resource": "arn:aws:s3:::tailscale-logs/*"
        }
      ]
    }
    
    • אם הזנתם שם אחר לקטגוריה, החליפו את tailscale-logs.
  3. לוחצים על Next > Create policy.

  4. עוברים אל IAM > Roles > Create role > Custom trust policy.

  5. מזינים את מדיניות האמון הבאה:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::982722776073:role/tailscale-log-streaming"
          },
          "Action": "sts:AssumeRole",
          "Condition": {
            "StringEquals": {
              "sts:ExternalId": "YOUR_TAILNET_NAME"
            }
          }
        }
      ]
    }
    
    • מחליפים את YOUR_TAILNET_NAME בשם של ה-tailnet.
  6. לוחצים על הבא.

  7. מצרפים את המדיניות שנוצרה בשלב 1.

  8. נותנים לתפקיד את השם TailscaleS3StreamingRole ולוחצים על יצירת תפקיד.

  9. מעתיקים את ה-Role ARN כדי להשתמש בו בהגדרות של Tailscale.

הגדרת סטרימינג של יומני S3 מקוריים ב-Tailscale

הגדרת סטרימינג של יומן ביקורת של הגדרות אישיות

  1. במסוף Admin של Tailscale, נכנסים אל Logs > Configuration logs.
  2. לוחצים על התחלת השידור.
  3. בוחרים באפשרות Amazon S3 בתור היעד.
  4. מזינים את פרטי ההגדרה הבאים:
    • ‫AWS Account ID: מספר החשבון ב-AWS.
    • thought S3 Bucket Name: tailscale-logs.
    • ‫Role ARN: ה-ARN של תפקיד ה-IAM שיצרתם.
    • ‫S3 Key Prefix:‏ tailscale/configuration/ (אופציונלי).
  5. לוחצים על התחלת השידור.
  6. מוודאים שהסטטוס שמוצג הוא פעיל.

הגדרת סטרימינג של יומן זרימת הנתונים ברשת (תוכנית Enterprise בלבד)

  1. אם עדיין לא הפעלתם את יומני זרימת הנתונים ברשת, עוברים אל הגדרות > יומני זרימת הנתונים ברשת ומפעילים את יומני זרימת הנתונים ברשת ב-tailnet.
  2. עוברים אל Logs > Network flow logs.
  3. לוחצים על התחלת השידור.
  4. בוחרים באפשרות Amazon S3 בתור היעד.
  5. מזינים את פרטי ההגדרה הבאים:
    • ‫AWS Account ID: מזהה החשבון ב-AWS
    • S3 Bucket Name: tailscale-logs
    • ‫Role ARN: ה-ARN של תפקיד ה-IAM שיצרתם
    • ‫S3 Key Prefix:‏ tailscale/network/ (אופציונלי)
  6. לוחצים על התחלת השידור.
  7. מוודאים שהסטטוס שמוצג הוא פעיל.

אופציונלי: יצירת משתמש ומפתחות IAM לקריאה בלבד ל-Google SecOps

  1. במסוף AWS, עוברים אל IAM > Users > Add users.
  2. לוחצים על הוספת משתמשים.
  3. מזינים את פרטי ההגדרה הבאים:
    • משתמש: secops-reader
    • סוג הגישה: מפתח גישה – גישה פרוגרמטית
  4. לוחצים על Create user.
  5. מצרפים מדיניות קריאה מינימלית (בהתאמה אישית): Users > secops-reader > Permissions > Add permissions > Attach policies directly > Create policy.
  6. בעורך ה-JSON, מזינים את המדיניות הבאה:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["s3:GetObject"],
          "Resource": "arn:aws:s3:::tailscale-logs/*"
        },
        {
          "Effect": "Allow",
          "Action": ["s3:ListBucket"],
          "Resource": "arn:aws:s3:::tailscale-logs"
        }
      ]
    }
    
  7. מגדירים את השם secops-reader-policy.

  8. עוברים אל Create policy > חיפוש/בחירה > Next > Add permissions.

  9. עוברים אל Security credentials > Access keys > Create access key.

  10. מורידים את קובץ ה-CSV (הערכים האלה מוזנים בפיד).

הגדרת פיד ב-Google SecOps כדי להטמיע יומנים של Tailscale

  1. עוברים אל הגדרות > ניהול נתונים > פידים. אם אתם משתמשים בפלטפורמה של SIEM בלבד, עוברים אל הגדרות > פידים.
  2. לוחצים על + הוספת פיד חדש.
  3. בשדה שם הפיד, מזינים שם לפיד (לדוגמה, Tailscale logs).
  4. בוחרים באפשרות Amazon S3 V2 בתור סוג המקור.
  5. בוחרים באפשרות Tailscale בתור Log type.
  6. לוחצים על הבא.
  7. מציינים ערכים לפרמטרים הבאים של הקלט:
    • S3 URI: s3://tailscale-logs/tailscale/
    • אפשרויות למחיקת המקור: בוחרים את אפשרות המחיקה הרצויה.
    • גיל הקובץ המקסימלי: כולל קבצים ששונו במספר הימים האחרונים. ברירת המחדל היא 180 ימים.
    • מזהה מפתח הגישה: מפתח גישה של משתמש עם גישה לקטגוריית S3.
    • מפתח גישה סודי: מפתח סודי של משתמש עם גישה לקטגוריית S3.
    • מרחב השמות של הנכס: מרחב השמות של הנכס.
    • תוויות הטמעה: התווית שנוספה לאירועים מהפיד הזה.
  8. לוחצים על הבא.
  9. בודקים את הגדרות הפיד החדש במסך סיום ולוחצים על שליחה.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM Logic (פונקציה לוגית)
exit_traf_src_port_label additional.fields ממוזג
exit_traf_txBytes_label additional.fields ממוזג
exit_traf_txPkts_label additional.fields ממוזג
nodeId_label additional.fields ממוזג
origin_label additional.fields ממוזג
phy_traf_rxBytes_label additional.fields ממוזג
phy_traf_rxPkts_label additional.fields ממוזג
phy_traf_txBytes_label additional.fields ממוזג
phy_traf_txPkts_label additional.fields ממוזג
target1_id_label additional.fields ממוזג
target1_type_label additional.fields ממוזג
vir_traf_rxBytes_label additional.fields ממוזג
vir_traf_rxPkts_label additional.fields ממוזג
vir_traf_txBytes_label additional.fields ממוזג
vir_traf_txPkts_label additional.fields ממוזג
action extensions.auth.type מופה: LOGIN ← AUTHTYPE_UNSPECIFIED
start metadata.event_timestamp נותח בתור ISO8601
event_type metadata.event_type מיפוי ישיר
exit_traf.txPkts network.received_bytes מיפוי ישיר
index network.received_bytes מופה: 0 ← uinteger
phy_traf.rxBytes network.received_bytes מיפוי ישיר
phy_traf.rxPkts network.received_bytes מיפוי ישיר
exit_traf.txBytes network.sent_bytes מיפוי ישיר
index network.sent_bytes מופה: 0 ← uinteger
phy_traf.txBytes network.sent_bytes מיפוי ישיר
phy_traf.txPkts network.sent_bytes מיפוי ישיר
target1.name principal.asset.hostname מיפוי ישיר
src_ip principal.asset.ip ממוזג
target1.name principal.hostname מיפוי ישיר
src_ip principal.ip ממוזג
src_port principal.port מיפוי ישיר
action security_result.action_details מיפוי ישיר
action_details_label security_result.detection_fields ממוזג
eventGroupID_label security_result.detection_fields ממוזג
dst_ip target.asset.ip ממוזג
dst_ip target.ip ממוזג
dst_port target.port מיפוי ישיר
actor_loginName target.user.email_addresses ממוזג
actor_display_name target.user.user_display_name מיפוי ישיר
actor_id target.user.userid מיפוי ישיר
לא רלוונטי extensions.auth.type קבוע: AUTHTYPE_UNSPECIFIED
לא רלוונטי metadata.event_type קבוע: GENERIC_EVENT

יומן שינויים

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

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