אבטחת אפליקציות שאינן של Google Cloud באמצעות מחבר האפליקציות

בדף הזה מוסבר איך להגדיר את מחבר האפליקציות של Chrome Enterprise Premium ולהשתמש בו כדי לאבטח אפליקציות שאינן שלGoogle Cloud .

סקירה כללית

אפשר להשתמש במחבר האפליקציות של Chrome Enterprise Premium כדי לספק זהות וגישה מודעת-הקשר לאפליקציות HTTPS שפועלות בסביבות שאינןGoogle Cloud. מחבר האפליקציות של Chrome Enterprise Premium הוא ממשק מאובטח ומאומת בין מישור האכיפה של Chrome Enterprise Premium לבין אפליקציות שפועלות בעננים אחרים ובסביבות מקומיות.

היתרון בשימוש במחבר האפליקציות של Chrome Enterprise Premium הוא שלא צריך לפתוח חומות אש או להגדיר חיבורי Cloud VPN בין אתרים.

ארכיטקטורה

התרשים הבא מציג את הארכיטקטורה ברמה גבוהה, ומתוארים בו הרכיבים העיקריים של מחבר האפליקציות של Chrome Enterprise Premium.

רכיבים של מחברי אפליקציות ב-Chrome Enterprise Premium

הרכיבים של מחבר האפליקציות של Chrome Enterprise Premium מנוהלים באמצעות שלושה משאבי API עיקריים: מחברי אפליקציות, חיבורי אפליקציות ושערי אפליקציות.

מחברי אפליקציות
משאב של מחבר מגדיר סוכן מרוחק ייחודי של מחבר אפליקציות. סוכנים מרוחקים של מחבר האפליקציות נפרסים בסביבות ארגוניות מרוחקות, כמו בעננים אחרים ובסביבות מקומיות. סוכנים מרוחקים יוזמים ומנהלים סשנים של מנהור ל- Google Cloud, מקבלים תנועה מ-Google Cloudומעבירים תנועה לנקודות קצה של אפליקציות מרוחקות באותה סביבה.
חיבורים לאפליקציות
משאב חיבור מגדיר חיבור לוגי מ-Google Cloud לנקודת קצה ספציפית של אפליקציה שמזוהה באמצעות כתובת IP:יציאה או FQDN:יציאה. משאב חיבור מתזמן קבוצה של שערים מנוהלים של מחברי אפליקציות שהוקצו לנקודת קצה של אפליקציה מסוימת. השערים מנוהלים ב-Google Cloud ומסיימים את הפעלת המנהרות מהסוכנים המרוחקים כשאין בהם יותר צורך.
שערי אפליקציות

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

כשמקשרים אפליקציה באמצעות מחבר האפליקציות, שערים של אפליקציות נוצרים ומנוהלים באופן מרומז בשבילכם. אפשר גם ליצור שערים נוספים לאפליקציות אם רוצים לארגן את משאבי הקישורים לאפליקציות בקבוצות. שערי אפליקציות מספקים את הגמישות לקבץ או להפריד חיבורים לאפליקציות כדי לאפשר בידוד של אפליקציות.

כל שער אפליקציות יכול לתמוך בתפוקה כוללת של עד 1Gbps, עבור עד 200,000 חיבורים בו-זמניים. מומלץ ליצור שערים ייעודיים לאפליקציות קריטיות שדורשות ביצועים גבוהים. אפשר להקצות עד 10 אפליקציות לכל שער.

כדי לתמוך בעד 200,000 חיבורים בו-זמנית ועד 1Gbps של תפוקה כוללת, מומלץ להשתמש במכונה וירטואלית ייעודית עם 8 ליבות ו-8GB של זיכרון כדי להריץ את הסוכן המרוחק של מחבר האפליקציות. לדוגמה, אפשר להקצות 2 סוכנים מרוחקים של מחבר אפליקציות באשכול HA עם 8 ליבות וזיכרון של 8GB כל אחד, כדי לתמוך באפליקציית אינטרנט עם ביצועים גבוהים (app1.examplecompany.com) עם שער אפליקציה ייעודי (app_gateway1). יוצרים עוד אשכול של 2 מכונות וירטואליות, כל אחת עם 8 ליבות וזיכרון של 8GB, כדי לתמוך בשילוב של 10 אפליקציות עם שימוש נמוך עם שער ייעודי אחר לאפליקציות (app_gateway2).

המשאבים של מחבר האפליקציות, חיבור האפליקציות ושער האפליקציות הם אזוריים. אפשר להשתמש בהם רק בהקשר אזורי. לדוגמה, אי אפשר להקצות מחבר אפליקציות באזור א' לחיבור אפליקציות או לשער אפליקציות שנוצרו באזור ב'.

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

אפשר להשתמש במחבר האפליקציות של Chrome Enterprise Premium רק עם אפליקציות HTTPS. בנוסף, מאזני עומסים מסוג HTTPS לא משתמשים בתוסף Server Name Indication ‏ (SNI) לחיבורים לבק-אנד. פרטים נוספים זמינים במאמר הצפנה ממאזן העומסים אל ה-backend.

כדי להשתמש במחבר האפליקציות של Chrome Enterprise Premium, אתם צריכים:

כל סוכן של מחבר אפליקציות של Chrome Enterprise Premium דורש מכונת Linux וירטואלית שמופעלת בה Docker. אנחנו ממליצים על הפצות ה-Linux הבאות:

  • ‫Debian 10.7 (buster)
  • Red Hat Enterprise Linux Server 7.8 (Maipo) x86_64
  • ‫Ubuntu 16.04 ואילך

לגבי החומרה של המכונה הווירטואלית של Linux, מומלץ להשתמש ב-2 מעבדים (CPU) עם זיכרון RAM של 2GB לפחות.

אפשר להגדיר ולהפעיל את מחבר האפליקציות באמצעות gcloud ו-API, או באמצעות מסוף Google Cloud . כדי להשתמש ב-gcloud ובממשקי API, צריך לבצע את השלבים הבאים. כדי להשתמש במסוף Google Cloud , עוברים אל הגדרת מחבר האפליקציות באמצעות מסוף Google Cloud .

הגדרת Google Cloud הפרויקט

כדי להגדיר Google Cloud פרויקט לשימוש במחבר של אפליקציית Chrome Enterprise Premium, צריך להפעיל את Chrome Enterprise Premium API. כדי להפעיל את ה-API, מבצעים את השלבים הבאים:

‫CLI של gcloud

לפני שמבצעים את השלבים הבאים, צריך לוודא ש-SDK של ה-CLI של gcloud מותקן.

  1. מגדירים את משתנה הסביבה הנדרש על ידי הרצת הפקודה הבאה:

    PROJECT_ID=my-project
    

    מחליפים את my-project במזהה הפרויקט. Google Cloud

  2. מפעילים את ה-API באמצעות הפקודה הבאה:

    gcloud config set project $PROJECT_ID
    gcloud services enable beyondcorp.googleapis.com
    

API

  1. כדי לקבל אסימון גישה ולהגדיר את משתני הסביבה והכינויים הנדרשים, מריצים את הפקודות הבאות:

    PROJECT_NUMBER=my-project-number
    ACCESS_TOKEN=my-access-token
    

    מחליפים את my-project במזהה הפרויקט. Google Cloud

  2. מגדירים כינוי נוח לשימוש באסימון הגישה:

    alias gcurl="curl -H 'Authorization: Bearer ${ACCESS_TOKEN}' -H 'Content-Type: application/json'"
    

  3. מפעילים את ה-API באמצעות הפקודה הבאה:

    gcurl https://serviceusage.googleapis.com/v1/projects/${PROJECT_NUMBER}/services/beyondcorp.googleapis.com:enable -d "{}"
    

התקנת סוכן מרוחק של מחבר אפליקציות

צריך לפרוס מכונת VM של סוכן מרוחק של מחבר אפליקציות לכל סביבת רשת שמארחת אפליקציה שרוצים להגן עליה באמצעות Chrome Enterprise Premium. צריך מכונה וירטואלית ייעודית או שרת Bare Metal עם Docker מותקן, לכל סוכן מרוחק שיוצרים.

כדי ליצור סוכן מרוחק:

  1. יוצרים מכונה וירטואלית בסביבת האפליקציה.
    1. מוודאים שחומת האש של הרשת במכונה הווירטואלית של הסוכן המרוחק מאפשרת את כל התעבורה היוצאת (outbound) שמתחילה ביציאה 443 לטווח כתובות ה-IP של IAP-TCP ‏35.235.240.0/20. במאמר אימות ההגדרות של חומת האש מוסבר איך לבדוק דומיינים אחרים שחומת האש של המכונה הווירטואלית של הסוכן המרוחק צריכה לאפשר להם תעבורת נתונים יוצאת.
  2. מתקינים את הסוכן המרוחק:

    1. מוודאים שה-DNS מוגדר בצורה נכונה ושיש לכם גישה לאפליקציה באמצעות curl.
    2. מתקינים את Docker Engine.
      1. אופציונלי: אם אתם משתמשים בשרת proxy, ודאו שהדמון של Docker מוגדר בצורה נכונה.
    3. אופציונלי: אם אתם משתמשים ב-proxy, מוודאים שמשתני הסביבה של ה-proxy מסוג HTTP ו-HTTPS מוגדרים ומשתמשים בסכימה http://.
    4. מריצים את הפקודה הבאה במכונת ה-VM של הסוכן המרוחק כדי להתקין את הסוכן המרוחק:
      curl https://raw.githubusercontent.com/GoogleCloudPlatform/beyondcorp-applink/main/bash-scripts/install-beyondcorp-runtime -o ./install-beyondcorp-runtime && chmod +x ./install-beyondcorp-runtime && ./install-beyondcorp-runtime
      
    5. כדי להוסיף את הכינוי bce-connctl למעטפת, מריצים את הפקודה הבאה:
       source ~/.bce_alias
       
    6. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודות הבאות:

      PROJECT_ID=my-project
      REGION=us-central1
      CONNECTOR_NAME=my-connector
      
      מחליפים את מה שכתוב בשדות הבאים:

      • my-project: מזהה הפרויקט ב- Google Cloud .
      • us-central1: האזור שבו רוצים לפרוס את החיבור ואת השערים.
      • my-connector: השם של המחבר.
    7. רושמים את המחבר באמצעות אחד מסוגי האישורים הבאים:

    חשבון שירות

    1. מפעילים את המחבר באמצעות הפקודה הבאה ב-CLI של bce-connctl:

      bce-connctl init --project=$PROJECT_ID --region=$REGION --connector=$CONNECTOR_NAME
      

    2. פועלים לפי ההוראות במסך כדי להעתיק ולהדביק את סקריפט הרישום לתוך הפרויקטים שלכם ב- Google Cloud באמצעות Cloud Shell או gcloud CLI, ומסיימים את הרישום של המחבר. כדי להריץ את סקריפט ההרשמה, צריכות להיות לכם הרשאות Owner בפרויקט.

      כשהסקריפט של ההרשמה מסתיים, סביבת זמן הריצה מסנכרנת את הגדרות המחבר באופן אוטומטי.

    זהות מאוחדת

    1. פועלים לפי המדריך לאיחוד שירותי אימות הזהות של עומסי עבודה כדי להעניק לזהות החיצונית גישה אל Google Cloudבאמצעות התחזות לחשבון שירות.
    2. מורידים את ההגדרה של ספריית הלקוח וממקמים את הקובץ ב-VM של הסוכן המרוחק בנתיב /var/beyondcorp/credentials/credentials.json.
      1. אם משתמשים במכונת VM של סוכן מרוחק כמכונה של AWS EC2, מבצעים אחת מהפעולות הבאות:
        1. הופכים את IMDSv2 לאופציונלי במופע EC2.
        2. מוסיפים את השורה הבאה לאובייקט credential_source בקובץ התצורה של ספריית הלקוח:
          "imdsv2_session_token_url": "http://169.254.169.254/latest/api/token"
          
    3. במכונת ה-VM של הסוכן המרוחק, מריצים את הפקודות הבאות ב-CLI של bce-connctl:
      bce-connctl config set project $PROJECT_ID
      bce-connctl config set region $REGION
      bce-connctl config set connector $CONNECTOR_NAME
      
    4. מריצים את הפקודה הבאה כדי להפעיל מחדש את הסוכן ולגרום לו לאסוף את פרטי הכניסה:
      sudo systemctl restart beyondcorp
      
    5. בנקודת הקצה של Cloud Shell או של ה-CLI של gcloud, מריצים את הפקודה הבאה כדי להגדיר את משתנה הסביבה הנדרש:
      SERVICE_ACCOUNT=my-service-account
      
      מחליפים את מה שכתוב בשדות הבאים:
      • my-service-account: Google Cloud חשבון השירות שמשויך לזהות החיצונית.
    6. מריצים את הפקודה הבאה כדי להקצות לחשבון השירות את התפקיד BeyondCorp Connection Agent: Google Cloud

      gcloud projects add-iam-policy-binding $PROJECT_ID \
          --member="serviceAccount:$SERVICE_ACCOUNT" \
          --role="roles/beyondcorp.connectionAgent"
      
    7. מריצים את הפקודה הבאה כדי ליצור את Google Cloud משאב מחבר האפליקציות.

      gcloud alpha beyondcorp app connectors create $CONNECTOR_NAME \
          --project=$PROJECT_ID \
          --location=$REGION \
          --member="serviceAccount:$SERVICE_ACCOUNT" \
          --display-name=$CONNECTOR_NAME
      

      אחרי שיוצרים את משאב מחבר האפליקציות, זמן הריצה של הסוכן המרוחק מסנכרן את הגדרות המחבר באופן אוטומטי.

  3. אימות ההתקנה של הסוכן המרוחק:

    1. מריצים את הפקודה הבאה כדי לוודא שהשירות פועל:
      sudo systemctl status beyondcorp
      
    2. הסוכן המרוחק מורכב משלוש מכולות Docker: ‏ bce-control-runtime,‏ bce-logagent ו-bce-connector. מריצים את הפקודה הבאה כדי לוודא ששלושת הקונטיינרים פועלים:
      docker ps --filter name=bce
      
    3. אופציונלי: אפשר לבדוק את קובצי היומן של קונטיינרים של Docker על ידי הרצת הפקודה הבאה:
      docker logs -f CONTAINER_NAME
      
      מחליפים את CONTAINER_NAME בשם של קונטיינר Docker.

חיבור אפליקציה מרחוק ל-VPC

‫CLI של gcloud

לפני שמבצעים את השלבים הבאים, צריך לוודא שהתקנתם את ה-SDK של ה-CLI של gcloud ושאתם מחוברים לחשבון עם התפקיד beyondcorp.admin.

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודות הבאות:

    CONNECTOR_NAME=my-connector
    CONNECTION_NAME=my-connection
    PROJECT_ID=my-project
    REGION=us-central1
    APP_ENDPOINT=APP_HOST:APP_PORT
    

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

    • my-connector: שם המחבר, שהוגדר בשלב קודם.
    • my-connection: שם ייחודי לחיבור.
    • my-project: מזהה הפרויקט ב- Google Cloud .
    • us-central1: האזור שבו רוצים לפרוס את החיבור ואת השערים.
    • APP_HOST: כתובת ה-IP המקומית או שם דומיין מלא (FQDN) שמארח את האפליקציה.
    • APP_PORT: מספר היציאה להתחברות לאפליקציה.
  2. כדי ליצור חיבור בין האפליקציה לבין ה-VPC, מריצים את הפקודה הבאה:

    gcloud alpha beyondcorp app connections create $CONNECTION_NAME \
        --project=$PROJECT_ID \
        --location=$REGION \
        --application-endpoint=$APP_ENDPOINT \
        --type=tcp \
        --connectors=$CONNECTOR_NAME \
        --display-name=$CONNECTION_NAME
    

    לתשומת ליבכם, השלב הזה עשוי להימשך כמה דקות.

  3. אחרי שיוצרים את החיבור, מריצים את הפקודות הבאות כדי לאחזר את מזהי ה-URI של השער:

    GATEWAY_URI="$(gcloud alpha beyondcorp app connections describe $CONNECTION_NAME --project=$PROJECT_ID --location=$REGION --format='get(gateway.uri)')"
    

    מחבר האפליקציות של Chrome Enterprise Premium משתמש ב-Private Service Connect כדי לקשר את פרויקט הצרכן למשאבים המנוהלים בפרויקטים שמנוהלים על ידי Google.

API

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודות הבאות:

    CONNECTOR_NAME=my-connector
    CONNECTION_NAME=my-connection
    PROJECT_ID=my-project
    REGION=us-central1
    APP_HOST=my-app-host
    APP_PORT=my-app-port
    

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

    • my-connector: שם המחבר, שהוגדר בשלב קודם.
    • my-connection: שם ייחודי לחיבור.
    • my-project: מזהה הפרויקט ב- Google Cloud .
    • us-central1: האזור שבו רוצים לפרוס את החיבור ואת השערים.
    • my-app-host: כתובת ה-IP המקומית או שם דומיין שמוגדר במלואו (FQDN) שמארח את האפליקציה.
    • my-app-port: מספר היציאה להתחברות לאפליקציה.
  2. כדי ליצור חיבור בין האפליקציה לבין ה-VPC, מריצים את הפקודה הבאה:

    gcurl https://beyondcorp.googleapis.com/v1/projects/${PROJECT_NUMBER}/locations/${REGION}/appConnections?app_connection_id=${CONNECTION_NAME} \
    -d "{ \
        'application_endpoint': \
        { \
            'host': '${APP_HOST}', \
            'port': '${APP_PORT}' \
        }, \
        'type': 'TCP_PROXY', \
        'display_name': '${CONNECTION_NAME}' \
    }"
    

    לתשומת ליבכם, השלב הזה עשוי להימשך כמה דקות.

  3. אחרי שיוצרים את החיבור, מריצים את הפקודות הבאות כדי לאחזר את מזהי ה-URI של השער:

    GATEWAY_URI=$(gcurl https://beyondcorp.googleapis.com/v1/projects/${PROJECT_NUMBER}/locations/${REGION}/appConnections/${CONNECTION_NAME} | jq -r '.gateway.uri')
    

    מחבר האפליקציות של Chrome Enterprise Premium משתמש ב-Private Service Connect כדי לקשר את פרויקט הצרכן למשאבים המנוהלים בפרויקטים מנוהלים של Google.

הגדרת מאזן עומסים חיצוני של אפליקציות (ALB)

אפשר לחבר רק אפליקציות HTTPS למאזן עומסים של אפליקציות (ALB) חיצוני. אין תמיכה באפליקציות HTTP.

‫CLI של gcloud

לפני שמבצעים את השלבים הבאים, צריך לוודא שהתקנתם את ה-SDK של ה-CLI של gcloud ושאתם מחוברים לחשבון עם התפקיד beyondcorp.admin.

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודות הבאות:

    LB_PREFIX=web-app
    PROJECT_ID=my-project
    REGION=us-central1
    DOMAIN_NAME=app.example.com
    
    מחליפים את מה שכתוב בשדות הבאים:

    • web-app: הקידומת שמצורפת לשמות של כל משאבי מאזן העומסים.
    • my-project: מזהה הפרויקט ב- Google Cloud .
    • us-central1: האזור שבו יופעלו החיבור והשערים.
    • app.example.com: שם הדומיין של האפליקציה.
  2. יוצרים קבוצת נקודות קצה ברשת (NEG) באמצעות הפקודה הבאה:

    gcloud beta compute network-endpoint-groups create $LB_PREFIX-neg \
        --region=$REGION \
        --network-endpoint-type=private-service-connect \
        --psc-target-service=$GATEWAY_URI
    

    דגלים אופציונליים:

    • מגדירים את הדגל --network כדי לציין את שם הרשת עבור נקודות הקצה ברשת ב-NEG. אם לא מציינים רשת, המערכת משתמשת ברשת ברירת המחדל של הפרויקט.
    • מגדירים את הדגל --subnet כדי לציין את שם רשת המשנה של נקודות הקצה ברשת ב-NEG. אם לא מציינים רשת משנה, נקודת הקצה ברשת יכולה להיות שייכת לכל רשת משנה באזור שבו נוצרה קבוצת נקודות הקצה ברשת.
  3. כדי ליצור שירות לקצה העורפי מבוסס-NEG ולחבר אותו לצירוף שירות Private Service Connect, מריצים את הפקודות הבאות:

    gcloud beta compute backend-services create $LB_PREFIX-backend-service \
        --global \
        --protocol=HTTPS \
        --load-balancing-scheme=EXTERNAL_MANAGED
    
    gcloud beta compute backend-services add-backend $LB_PREFIX-backend-service \
        --global \
        --network-endpoint-group=$LB_PREFIX-neg \
        --network-endpoint-group-region=$REGION
    
  4. כדי ליצור אישור מנוהל של Google לדומיין, מריצים את הפקודות הבאות:

    gcloud compute addresses create $LB_PREFIX-static-ip \
        --ip-version=IPV4 \
        --global
    gcloud compute ssl-certificates create $LB_PREFIX-ssl-cert \
        --domains=$DOMAIN_NAME \
        --global
    
    LB_IP="$(gcloud compute addresses describe $LB_PREFIX-static-ip --global --format='value(address)')"
    
  5. יוצרים מאזן עומסים חיצוני של אפליקציות (ALB) על סמך הקצה העורפי מהשלב הקודם על ידי הרצת הפקודות הבאות:

    gcloud compute url-maps create $LB_PREFIX-map-https \
        --default-service=$LB_PREFIX-backend-service
    
    gcloud compute target-https-proxies create $LB_PREFIX-https-lb-proxy \
        --url-map=$LB_PREFIX-map-https \
        --ssl-certificates=$LB_PREFIX-ssl-cert
    
    gcloud beta compute forwarding-rules create "$LB_PREFIX-https-lb-forwarding-rule" \
        --global \
        --target-https-proxy=$LB_PREFIX-https-lb-proxy \
        --address=$LB_IP \
        --ports=443 \
        --load-balancing-scheme=EXTERNAL_MANAGED
    

    אחרי שיוצרים את מאזן העומסים החיצוני של אפליקציות (ALB), אפשר לגשת לאפליקציה דרך האינטרנט באמצעות כתובת ה-IP הזו.

  6. אחרי שיוצרים את מאזן העומסים החיצוני של אפליקציות (ALB), צריך לשייך את כתובת ה-IP שלו לשם הדומיין כדי ש- Google Cloud יוכל לספק אישור SSL. פועלים לפי ההוראות של ספק ה-DNS כדי לשייך את כתובת ה-IP לשם ה-DNS. מריצים את הפקודה הבאה כדי לבדוק את סטטוס ההקצאה:

    1. הצגת כתובת ה-IP להגדרה אצל ספק ה-DNS:
      echo "Load Balancer ip address - $LB_IP"
      
    2. אחרי שמגדירים את ה-DNS, מריצים את הפקודה הבאה כדי לבדוק אם שם הדומיין מתפרש ככתובת ה-IP:
      dig $DOMAIN_NAME
      
    3. כדי לקבל את סטטוס ההקצאה, מריצים את הפקודה הבאה:
    gcloud compute ssl-certificates describe $LB_PREFIX-ssl-cert \
        --global \
        --format="get(name,managed.status, managed.domainStatus)"
    

    אחרי הקצאת אישור ה-SSL, אמורה להיות לכם גישה לאפליקציה באמצעות שם ה-DNS.

API

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודות הבאות:

    LB_PREFIX=web-app
    PROJECT_ID=my-project
    REGION=us-central1
    DOMAIN_NAME=app.example.com
    
    מחליפים את מה שכתוב בשדות הבאים:

    • web-app: הקידומת שמצורפת לשמות של כל משאבי מאזן העומסים.
    • my-project: מזהה הפרויקט ב- Google Cloud .
    • us-central1: האזור שבו יופעלו החיבור והשערים.
    • app.example.com: שם הדומיין של האפליקציה.
  2. יוצרים קבוצת נקודות קצה ברשת (NEG) באמצעות הפקודה הבאה:

    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/regions/${REGION}/networkEndpointGroups \
    -d "{ \
        'name': '${LB_PREFIX}-neg', \
        'network_endpoint_type': 'private-service-connect', \
        'psc_target_service': '${GATEWAY_URI}' \
    }"
    

    שדות אופציונליים:

    • מגדירים את השדה network כדי לציין את כתובת ה-URL של הרשת עבור נקודות הקצה ברשת ב-NEG. אם לא מציינים רשת, המערכת משתמשת ברשת ברירת המחדל של הפרויקט.
    • מגדירים את השדה subnetwork כדי לציין את כתובת ה-URL של רשת המשנה עבור נקודות הקצה ברשת ב-NEG. אם לא מציינים רשת משנה, נקודת הקצה ברשת יכולה להיות שייכת לכל רשת משנה באזור שבו נוצרה קבוצת נקודות הקצה ברשת.
  3. כדי ליצור שירות לקצה העורפי מבוסס-NEG ולחבר אותו לצירוף שירות Private Service Connect, מריצים את הפקודות הבאות:

    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/backendServices \
    -d "{ \
        'name': '${LB_PREFIX}-backend-service', \
        'service_protocol': 'HTTPS', \
        'port_name': 'https', \
        'load_balancing_scheme': 'EXTERNAL_MANAGED' \
    }"
    
    gcurl -X PATCH https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/backendServices/${LB_PREFIX}-backend-service \
    -d "{ \
        'backends': \
        [{ \
            'group': 'https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/regions/${REGION}/networkEndpointGroups/${LB_PREFIX}-neg' \
        }] \
    }"
    
  4. כדי ליצור אישור מנוהל של Google לדומיין, מריצים את הפקודות הבאות:

    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/addresses \
    -d "{ \
        'name': '${LB_PREFIX}-static-ip', \
        'ip_version': 'IPV4' \
    }"
    
    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/sslCertificates \
    -d "{ \
        'name': '${LB_PREFIX}-ssl-cert', \
        'managed': \
        { \
            'domains': '${DOMAIN_NAME}' \
        }, \
        'type': 'MANAGED' \
    }"
    
    LB_IP=$(gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/addresses/${LB_PREFIX}-static-ip | jq -r '.address')
    
  5. יוצרים מאזן עומסים חיצוני של אפליקציות (ALB) על סמך הקצה העורפי מהשלב הקודם על ידי הרצת הפקודות הבאות:

    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/urlMaps \
    -d "{ \
        'name': '${LB_PREFIX}-map-https', \
        'default_service': 'https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/backendServices/${LB_PREFIX}-backend-service' \
    }"
    
    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/targetHttpsProxies \
    -d "{ \
        'name': '${LB_PREFIX}-https-lb-proxy', \
        'url_map': 'https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/urlMaps/${LB_PREFIX}-map-https', \
        'ssl_certificate': 'https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/sslCertificates/${LB_PREFIX}-ssl-cert' \
    }"
    
    gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/forwardingRules \
    -d "{ \
        'name': '${LB_PREFIX}-https-lb-forwarding-rule', \
        target: 'https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/targetHttpsProxies/${LB_PREFIX}-https-lb-proxy', \
        'ip_address': '${LB_IP}', \
        'port_range': '443-443', \
        'load_balancing_scheme': 'EXTERNAL_MANAGED' \
    }"
    

    אחרי שיוצרים את מאזן העומסים החיצוני של אפליקציות (ALB), אפשר לגשת לאפליקציה דרך האינטרנט באמצעות כתובת ה-IP הזו.

  6. אחרי שיוצרים את מאזן העומסים החיצוני של אפליקציות (ALB), צריך לשייך את כתובת ה-IP שלו לשם הדומיין כדי ש- Google Cloud יוכל לספק אישור SSL. פועלים לפי ההוראות של ספק ה-DNS כדי לשייך את כתובת ה-IP לשם ה-DNS. מריצים את הפקודה הבאה כדי לבדוק את סטטוס ההקצאה:

    1. הצגת כתובת ה-IP להגדרה אצל ספק ה-DNS:
      echo "Load Balancer ip address - $LB_IP"
      
    2. אחרי שמגדירים את ה-DNS, מריצים את הפקודה הבאה כדי לבדוק אם שם הדומיין מתפרש ככתובת ה-IP:
      dig $DOMAIN_NAME
      
    3. כדי לקבל את סטטוס ההקצאה, מריצים את הפקודה הבאה:
    echo $(gcurl https://www.googleapis.com/compute/v1/projects/${PROJECT_NUMBER}/global/sslCertificates/${LB_PREFIX}-ssl-cert \
    | jq -r '.name + " " + .managed.status + " " + (.managed.domainStatus | keys[]) + "=" + .managed.domainStatus[]')
    

    אחרי הקצאת אישור ה-SSL, אמורה להיות לכם גישה לאפליקציה באמצעות שם ה-DNS.

הפעלת שרת proxy לאימות זהויות (IAP)

פועלים לפי ההוראות להגדרת שרת proxy לאימות זהויות (IAP). אחרי שמגדירים את IAP, צריך להפעיל את IAP בשירות לקצה העורפי. לשם כך, מבצעים את השלבים הבאים:

  1. עוברים לדף IAP:
    IAP

  2. בקטע HTTPS RESOURCES, מחפשים את $LB_PREFIX-backend-service. כדי להפעיל את IAP למשאב הזה, לוחצים על המתג בעמודה IAP. בחלון הפעלת IAP שמופיע, מסמנים את תיבת הסימון כדי לאשר את דרישות ההגדרה של המשאב הזה ולוחצים על הפעלה כדי לאשר שרוצים ש-IAP יאבטח את המשאב.

  3. כדי לתת למשתמשים גישה לאפליקציה, צריך להקצות להם את התפקיד משתמש באפליקציית אינטרנט מאובטחת באמצעות IAP בפרויקט. כדי לעשות את זה, מבצעים את הפעולות הבאות:

    1. מסמנים את תיבת הסימון $LB_PREFIX-backend-service.
    2. בחלונית המידע, בוחרים באפשרות הוספת גורם ראשי ומזינים את כתובות האימייל של הקבוצות או האנשים שצריכים לקבל גישה לאפליקציה.
    3. ברשימה הנפתחת Select a role, בוחרים באפשרות Cloud IAP > IAP-secured Web App User ולוחצים על Save.

האפליקציה המקומית שלכם אמורה להתפרסם עכשיו באינטרנט ולהיות מוגנת על ידי Chrome Enterprise Premium.

הגדרת מחבר האפליקציות באמצעות מסוף Google Cloud

כדי לפרוס את מחבר האפליקציות של Chrome Enterprise Premium באמצעות מסוף Google Cloud , צריך לבצע את הפעולות שמתוארות בקטע הזה.

הזנת פרטי הבקשה

כדי להוסיף את פרטי האפליקציה:

  1. נכנסים לדף IAP במסוף Google Cloud .
    כניסה לדף IAP

  2. לוחצים על הלחצן CONNECT NEW APPLICATION (קישור אפליקציה חדשה) ואז בוחרים באפשרות Connect via App Connector (קישור באמצעות כלי לחיבור אפליקציות).

  3. בשדה Application name (שם האפליקציה), מזינים את שם האפליקציה שרוצים לאבטח.

  4. בקטע כתובת URL של אפליקציה שמופנית כלפי חוץ, מזינים כתובת URL שנגישה לכולם כדי שהמשתמשים יוכלו לגשת לאפליקציה.

  5. לוחצים על הבא.

הגדרת החיבור אל Google Cloud

כדי ליצור קישוריות בין Google Cloud לבין סביבתGoogle Cloud שאינה Google Cloud , צריך לבצע את השלבים הבאים.

  1. לוחצים על הלחצן יצירת מחבר אפליקציות ומזינים את הפרטים הבאים:

    • שם מחבר האפליקציות: שם המחבר.
    • Region: האזור שבו רוצים לפרוס את שער החיבור ואת המחבר.
  2. לוחצים על הלחצן יצירה.

  3. פועלים לפי ההוראות בחלונית הקצאת מכונה וירטואלית כדי לפרוס את הסוכן המרוחק ב-VM.

  4. כדי לבדוק את החיבור, לוחצים על הלחצן בדיקת סטטוס החיבור.

  5. מגדירים את המחבר שיצרתם בשלב הקודם על ידי הזנת המידע הבא בקטע איפה Google Cloud יכולה למצוא את האפליקציה שלך?:

    • שם מארח פנימי: כתובת ה-IP או ה-FQDN המקומיים שמארחים את האפליקציה.
    • יציאה: מספר היציאה להתחברות לאפליקציה.

הענקת גישה לאפליקציה (אופציונלי)

  1. בשדה New principals, מזינים אחת או יותר מהאפשרויות הבאות:

    • כתובת האימייל בחשבון Google: user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין ב-Google Workspace: example.com
    • anybody (כל אחד): מזינים allUsers כדי להעניק גישה לכל המשתמשים
    • כל חשבונות Google: allAuthenticatedUsers כדי להעניק גישה לכל משתמש שמחובר לחשבון Google
  2. בוחרים רמת גישה אחת או יותר ולוחצים על הבא.

פרסום האפליקציה

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

  2. אחרי שמפרסמים את האפליקציה ומקבלים את האישור האפליקציה פורסמה בצורה מאובטחת, צריך ליצור רשומת DNS כדי להפנות את כתובת ה-URL של האפליקציה שמופנית כלפי חוץ לכתובת ה-IP של שרת ה-proxy. מבצעים את השלבים הבאים:

    • בקטע STEP 2 - Update DNS, מעתיקים את כתובת ה-IP מהשדה IP address. משתמשים בכתובת כדי ליצור רשומת DNS, לפי ההוראות של ספק ה-DNS לשיוך כתובת ה-IP לשם ה-DNS.
  3. אחרי שיוצרים את רשומת ה-DNS, בודקים אותה בלחיצה על הלחצן TEST (בדיקה). אמורה להופיע הודעה DNS test passed (בדיקת ה-DNS עברה).

  4. לוחצים על סיום.

הפעלת IAP

  1. עוברים לדף של הרכישה מתוך האפליקציה.
    כניסה לדף IAP

  2. ברשימת המשאבים, מאתרים את האפליקציה ולוחצים על הלחצן בעמודה IAP.

  3. בתיבת הדו-שיח Turn on IAP שמופיעה, מסמנים את התיבה I have read the configuration requirements and configured my Backend Service according to documentation (קראתי את דרישות ההגדרה והגדרתי את שירות ה-Backend בהתאם לתיעוד) ולוחצים על TURN ON (הפעלה).

האפליקציה המקומית שלכם אמורה להתפרסם עכשיו באינטרנט ולהיות מוגנת על ידי Chrome Enterprise Premium.

יצירת שער לאפליקציה (אופציונלי)

שערי אפליקציות נוצרים ומנוהלים באופן מרומז כשמחברים אפליקציה באמצעות מחבר האפליקציות. אפשר גם ליצור שערים משלכם לאפליקציות כדי לארגן את משאבי החיבורים לאפליקציות בקבוצות. התנועה של קישורים לאפליקציות שמארחות בשערי אפליקציות שונים מנותבת דרך תשתית וירטואלית נפרדת.

כדי ליצור ולציין שער לאפליקציה:

‫CLI של gcloud

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודה הבאה:

    CONNECTOR_NAME=CONNECTOR_NAME
    CONNECTION_NAME=CONNECTION_NAME
    GATEWAY_NAME=GATEWAY_NAME
    PROJECT_ID=PROJECT_ID
    REGION=REGION
    APP_ENDPOINT=APP_HOST:APP_PORT
    

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

    • CONNECTOR_NAME: שם המחבר, שהוגדר בשלב קודם.
    • CONNECTION_NAME: שם ייחודי לחיבור.
    • GATEWAY_NAME: השם של שער האפליקציה.
    • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
    • REGION: האזור שבו רוצים לפרוס את שער האפליקציה, למשל us-central1.
    • APP_HOST: כתובת ה-IP המקומית או שם דומיין מלא (FQDN) שמארח את האפליקציה.
    • APP_PORT: מספר היציאה להתחברות לאפליקציה.
  2. מריצים את הפקודה הבאה כדי ליצור שער לאפליקציה:

    gcloud beta beyondcorp app gateways create $GATEWAY_NAME \
    --project=$PROJECT_ID --location=$REGION --display-name=$GATEWAY_NAME
    
  3. כדי לציין שער אפליקציה בקריאה ליצירת חיבור, מריצים את הפקודה הבאה:

    gcloud beta beyondcorp app connections create $CONNECTION_NAME \
    --project=$PROJECT_ID \
    --location=$REGION \
    --application-endpoint=$APP_ENDPOINT \
    --type=tcp \
    --connectors=$CONNECTOR_NAME \
    --display-name=$CONNECTION_NAME \
    --app-gateway=$GATEWAY_NAME
    

API

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודה הבאה:

    CONNECTOR_NAME=CONNECTOR_NAME
    CONNECTION_NAME=CONNECTION_NAME
    GATEWAY_NAME=GATEWAY_NAME
    PROJECT_ID=PROJECT_ID
    REGION=REGION
    APP_ENDPOINT=APP_HOST:APP_PORT
    

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

    • CONNECTOR_NAME: שם המחבר, שהוגדר בשלב קודם.
    • CONNECTION_NAME: שם ייחודי לחיבור.
    • GATEWAY_NAME: השם של שער האפליקציה.
    • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
    • REGION: האזור שבו רוצים לפרוס את שער האפליקציה, למשל us-central1.
    • APP_HOST: כתובת ה-IP המקומית או שם דומיין מלא (FQDN) שמארח את האפליקציה.
    • APP_PORT: מספר היציאה להתחברות לאפליקציה.
  2. מריצים את הפקודה הבאה כדי ליצור שער לאפליקציה:

    gcurl https://beyondcorp.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/appGateways?app_gateway_id=${GATEWAY_NAME} \
    -d "{ \
    'type': 'TCP_PROXY', \
    'display_name': '${CONNECTION_NAME}' \
    }"
    
  3. כדי לציין שער אפליקציה בקריאה ליצירת חיבור, מריצים את הפקודה הבאה:

    gcurl https://beyondcorp.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/appConnections?app_connection_id=${CONNECTION_NAME} \
    -d "{ \
    'application_endpoint': \
    { \
    'host': '${APP_HOST}', \
    'port': '${APP_PORT}' \
    }, \
    'gateway': { 'app_gateway' : 'projects/${PROJECT_ID}/locations/${REGION}/appGateways/${GATEWAY_NAME}'}, \
    'connectors':['projects/${PROJECT_ID}/locations/${REGION}/appConnectors/${CONNECTOR_NAME}'], \
    'type': 'TCP_PROXY', \
    'display_name': '${CONNECTION_NAME}' \
    

השלבים הבאים

פתרון בעיות

לא ניתן למצוא משאבים שנוצרו בעבר

כשמשתמשים בגרסה 392.0.0 ואילך של CLI של gcloud, צריך להשתמש במשאבי ברירת המחדל החדשים של מחבר האפליקציות AppConnector ו-AppConnection. לדוגמה, gcloud alpha beyondcorp app connectors ו-gcloud alpha beyondcorp app connections מתייחסים למשאבים החדשים.

כדי לגשת למשאבים מדור קודם שנוצרו באמצעות גרסה של gcloud CLI שקודמת לגרסה 392.0.0, משתמשים במילת המפתח legacy. לדוגמה, gcloud alpha beyondcorp app legacy connectors ו-gcloud alpha beyondcorp app legacy connections מתייחסים למשאבים מדור קודם.

הגדרות שמשתמשות במשאבים מדור קודם ממשיכות לפעול כרגע, אבל הן יוצאו משימוש בעתיד.

  • כדי להגדיר משאבים חדשים, פועלים לפי ההוראות במדריך הזה.
  • אם ההגדרה שלכם משתמשת במשאבים מדור קודם, אתם יכולים להשתמש במילת המפתח legacy כדי לאתר את המשאבים האלה ולהסיר אותם. צריך ליצור מחדש את המשאבים לפי ההליכים שמתוארים במסמך הזה.
  • אם יש לכם הגדרה לא מלאה שמשתמשת במשאבים מדור קודם, תוכלו להשתמש במילת המפתח legacy כדי לאתר את המשאבים האלה ולהסיר אותם. צריך ליצור מחדש את המשאבים לפי ההליכים שמתוארים במסמך הזה.

שגיאות TLS/SSL

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

בדפדפן מוצגת השגיאה ERR_SSL_VERSION_OR_CIPHER_MISMATCH או שגיאות דומות של TLS/SSL, והדפדפן לא מבצע הפניה לדף ההתחברות.

  • בודקים את הסטטוס של האישורים Google Cloud בדף הפרטים של מאזן העומסים.

    הערה: הקצאת אישור שמנוהל על ידי Google עשויה להימשך עד 60 דקות.

TLS error

הדפדפן מציג את השגיאה upstream connect error or disconnect/reset before headers. retried and the latest reset reason: connection failure, transport failure reason: TLS error או שגיאות דומות של TLS/SSL אחרי הפניה לדף הכניסה.

  • מוודאים שנקודת הקצה של האפליקציה שמשמשת בחיבור היא HTTPS.
  • מוודאים שאפשר לגשת לנקודת הקצה של האפליקציה מ-VM של הסוכן המרוחק באמצעות curl:

    curl https://$APP_ENDPOINT
    

    יכול להיות שתצטרכו להשתמש בדגל -k אם אישור האפליקציה שלכם הוא בחתימה עצמית.

אימות ההגדרות של חומת האש

מוודאים שחומות האש בין הסוכן המרוחק לבין האינטרנט מאפשרות חיבורים יוצאים לדומיינים הבאים:

סוג החיבור דומיין יציאה
TCP raw.githubusercontent.com 443
TCP gcr.io 443
TCP *.googleapis.com 443
TCP tunnel.cloudproxy.app 443
TCP *.tunnel.cloudproxy.app 443
TCP accounts.google.com 443
TCP oauth2.googleapis.com 443

שינוי המחברים שמשויכים לחיבור

gcloud

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודה הבאה:

    CONNECTOR_NAME=my-connector
    CONNECTION_NAME=my-connection
    REGION=us-central1
    PROJECT_ID=my-project
    

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

    • my-connector: השם של המחבר. אפשר גם להזין רשימה מופרדת בפסיקים כמו connector1,connector2.
    • my-connection: השם של החיבור שרוצים לעדכן.
    • us-central1: האזור שבו נפרס החיבור.
    • my-project: מזהה הפרויקט ב- Google Cloud .
  2. כדי לשנות את המחברים שמשויכים לחיבור, מריצים את הפקודה הבאה:

    gcloud alpha beyondcorp app connections update $CONNECTION_NAME \
        --project=$PROJECT_ID \
        --location=$REGION \
        --connectors=$CONNECTOR_NAME
    

API

  1. מגדירים את משתני הסביבה הנדרשים על ידי הרצת הפקודה הבאה:

    CONNECTOR_NAME=my-connector
    CONNECTION_NAME=my-connection
    REGION=us-central1
    PROJECT_ID=my-project
    

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

    • my-connector: השם של המחבר.
    • my-connection: השם של החיבור שרוצים לעדכן.
    • us-central1: האזור שבו נפרס החיבור.
    • my-project: מזהה הפרויקט ב- Google Cloud .
  2. כדי לשנות את המחברים שמשויכים לחיבור, מריצים את הפקודה הבאה:

    gcurl -X PATCH \
    https://beyondcorp.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/appConnections/${CONNECTION_NAME}?update_mask=connectors \
    -d "{ \
        'connectors': ['projects/${PROJECT_ID}/locations/${REGION}/appConnectors/${CONNECTOR_NAME}'], \
    }"
    

    כדי לוודא שהעדכון בוצע, מריצים את הפקודה הבאה ובודקים את השדה connectors בפלט:

    gcurl https://beyondcorp.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/appConnections/${CONNECTION_NAME}
    

בשם אחרים

התמיכה בשרתי proxy הושקה בתחילת 2024, ונדרשים שינויים בקובץ systemd של BeyondCorp. אם התקנתם את הסוכן המרוחק לפני הזמן הזה ואתם רוצים להשתמש בשרת proxy, תצטרכו להתקין מחדש את הסוכן המרוחק.

  • מוודאים ששירות ה-daemon של Docker מוגדר בצורה נכונה כדי לעבוד עם שרתי proxy.

  • מוודאים שמשתני הסביבה של ה-proxy מסוג HTTP ו-HTTPS מוגדרים, וששניהם משתמשים בסכימה http://. אין תמיכה בסכימת https:// ובסכימות אחרות.

  • מריצים את הפקודה env כדי לוודא שמשתני הסביבה של ה-proxy מיוצאים לתהליכי משנה.

  • רק התווים HTTP_PROXY,‏ HTTPS_PROXY,‏ NO_PROXY והמקבילים שלהם באותיות קטנות נתמכים.

  • אם צריך לעדכן את הגדרות לשרת proxy אחרי ההתקנה, מעדכנים את משתני הסביבה ב-/var/beyondcorp/env/PROXY אם משתמשים במשתמש ברירת המחדל beyondcorp. אם משתמשים במשתמש בהתאמה אישית, צריך לעדכן את /home/$USER/.docker/config.json לפי ההוראות להגדרת לקוח Docker. כדי להחיל את השינויים בפרוקסי, מפעילים מחדש את הסוכן המרוחק באמצעות הפקודה הבאה:

    sudo systemctl restart beyondcorp
    

כלי אבחון

run-post-install-checks

run-post-install-checks הוא סקריפט שמותקן ב-/var/beyondcorp/scripts/ ומוודא שהסוכן המרוחק מותקן, רשום ותקין. אחרי שיוצרים בהצלחה app connection ומקצים אותו לסוכן מרוחק (מחבר), עוברים למכונה הווירטואלית של הסוכן המרוחק ומריצים את run-post-install-checks באמצעות הפקודה הבאה:

sudo /var/beyondcorp/scripts/run-post-install-checks

אם הכול תקין, הסקריפט מדפיס הודעה על הצלחה.

run-diagnostics

run-diagnostics הוא סקריפט שמותקן ב-/var/beyondcorp/scripts/ ומאבחן בעיות נפוצות במכונת ה-VM של הסוכן המרוחק, ומדפיס דוח שאפשר לשתף עם צוות התמיכה של Chrome Enterprise Premium. כדי להריץ את סקריפט האבחון הזה, מריצים את הפקודה הבאה:

sudo /var/beyondcorp/scripts/run-diagnostics

דוח האבחון נכתב במסוף וגם ב-./diagnostics-report.txt.

Remote Agent CLI

bce-connctl הוא ממשק שורת הפקודה (CLI) של סוכן מרוחק שמאפשר אינטראקציה עם הסוכן המרוחק באופן מקומי. ממשק ה-CLI הזה תומך בפקודות שונות, כמו הרשמה של הסוכן המרוחק, בדיקת הסטטוס והגדרת ערכי תצורה.

פקודת init

אפשר להשתמש בפקודה Init כדי לאתחל את הסוכן המרוחק וליצור סקריפט לרישום הסוכן.

דוגמה:

bce-connctl init --project=$PROJECT_ID --region=$REGION --connector=$CONNECTOR_NAME

פקודות סטטוס

אפשר להשתמש בפקודות הסטטוס כדי לנהל את הסטטוס של הסוכן המרוחק.

  • רשימה: משתמשים בפקודה הזו כדי לראות את הסטטוס הכללי של הסוכן המרוחק, וגם את הסטטוס של כל החיבורים שהסוכן הזה תומך בהם. לדוגמה: bce-connctl status list

פקודות להגדרת תצורה

אפשר להשתמש בפקודות Config כדי לנהל את ערכי ההגדרות של הסוכן המרוחק.

  • רשימה: משתמשים בפקודה הזו כדי להציג את ערכי ההגדרה של הסוכן המרוחק. לדוגמה: bce-connctl config list
  • הגדרה: משתמשים בפקודה הזו כדי להגדיר ערך של סוכן מרוחק. לדוגמה: bce-connctl config set <key> <value>

פקודות הרשמה

אפשר להשתמש בפקודות ההרשמה כדי לנהל את ההרשמה של הסוכן המרוחק.

  • תיאור: משתמשים בפקודה הזו כדי לקבל את סטטוס ההרשמה של הסוכן המרוחק. לדוגמה: bce-connctl enrollment describe

    כשהסקריפט של ההרשמה מ-bce-connctl init מסתיים בהצלחה, והמפתח הציבורי מועלה בהצלחה, הסטטוס הוא ENROLLED.

עזרה

אפשר להוסיף את הדגל -h או --help לכל פקודת bce-connctl כדי להדפיס מידע על השימוש.

bce-connctl init -h