GCP - VPC & Networking

HackTricks को समर्थन दें

GCP Compute Networking संक्षेप में

VPCs में Firewall नियम होते हैं जो VPC में आने वाले ट्रैफ़िक की अनुमति देते हैं। VPCs में subnetworks भी होते हैं जहां virtual machines को कनेक्ट किया जाएगा। AWS की तुलना में, Firewall AWS Security Groups और NACLs के सबसे करीब होगा, लेकिन इस मामले में ये VPC में परिभाषित होते हैं और प्रत्येक instance में नहीं।

GCP में VPC, Subnetworks और Firewalls

Compute Instances subnetworks से जुड़े होते हैं जो VPCs (Virtual Private Clouds) का हिस्सा होते हैं। GCP में security groups नहीं होते, बल्कि VPC firewalls होते हैं जिनके नियम नेटवर्क स्तर पर परिभाषित होते हैं लेकिन प्रत्येक VM Instance पर लागू होते हैं।

Subnetworks

एक VPC में कई subnetworks हो सकते हैं। प्रत्येक subnetwork एक क्षेत्र में होता है।

Firewalls

डिफ़ॉल्ट रूप से, प्रत्येक नेटवर्क में दो implied firewall rules होते हैं: allow outbound और deny inbound

जब एक GCP प्रोजेक्ट बनाया जाता है, तो एक VPC जिसे default कहा जाता है, भी बनाया जाता है, जिसमें निम्नलिखित firewall नियम होते हैं:

  • default-allow-internal: default नेटवर्क पर अन्य instances से सभी ट्रैफ़िक की अनुमति दें

  • default-allow-ssh: हर जगह से 22 की अनुमति दें

  • default-allow-rdp: हर जगह से 3389 की अनुमति दें

  • default-allow-icmp: हर जगह से ping की अनुमति दें

जैसा कि आप देख सकते हैं, firewall नियम आंतरिक IP पतों के लिए अधिक अनुमतिपूर्ण होते हैं। डिफ़ॉल्ट VPC Compute Instances के बीच सभी ट्रैफ़िक की अनुमति देता है।

डिफ़ॉल्ट VPC या नए VPCs के लिए अधिक Firewall नियम बनाए जा सकते हैं। Firewall नियम निम्नलिखित विधियों के माध्यम से instances पर लागू किए जा सकते हैं:

दुर्भाग्य से, इंटरनेट पर खुले पोर्ट्स के साथ सभी Compute Instances को दिखाने के लिए कोई सरल gcloud कमांड नहीं है। आपको firewall नियमों, नेटवर्क टैग्स, सेवा खातों और instances के बीच संबंध स्थापित करना होगा।

इस प्रक्रिया को इस python script का उपयोग करके स्वचालित किया गया था जो निम्नलिखित को निर्यात करेगा:

  • CSV फ़ाइल जो instance, सार्वजनिक IP, अनुमत TCP, अनुमत UDP दिखाती है

  • nmap स्कैन जो सार्वजनिक इंटरनेट (0.0.0.0/0) से ingress की अनुमति वाले पोर्ट्स पर सभी instances को लक्षित करता है

  • masscan जो उन instances की पूरी TCP रेंज को लक्षित करता है जो सार्वजनिक इंटरनेट (0.0.0.0/0) से सभी TCP पोर्ट्स की अनुमति देते हैं

Hierarchical Firewall Policies

Hierarchical firewall policies आपको अपने संगठन में एक सुसंगत firewall नीति बनाने और लागू करने की अनुमति देती हैं। आप hierarchical firewall policies को संगठन के रूप में या व्यक्तिगत फोल्डर्स के रूप में असाइन कर सकते हैं। इन नीतियों में नियम होते हैं जो स्पष्ट रूप से कनेक्शनों को अस्वीकार या अनुमति दे सकते हैं।

आप firewall नीतियों को अलग-अलग चरणों में बनाते और लागू करते हैं। आप संगठन या फोल्डर नोड्स पर firewall नीतियों को बना और लागू कर सकते हैं resource hierarchy के। एक firewall नीति नियम कनेक्शनों को ब्लॉक कर सकता है, कनेक्शनों की अनुमति दे सकता है, या firewall नियम मूल्यांकन को निचले स्तर के फोल्डर्स या VPC नेटवर्क में परिभाषित VPC firewall नियमों को स्थगित कर सकता है

डिफ़ॉल्ट रूप से, सभी hierarchical firewall नीति नियम संगठन या फोल्डर के तहत सभी प्रोजेक्ट्स में सभी VMs पर लागू होते हैं जहां नीति जुड़ी होती है। हालाँकि, आप target networks या target service accounts निर्दिष्ट करके किसी दिए गए नियम को प्राप्त करने वाले VMs को प्रतिबंधित कर सकते हैं।

आप यहां पढ़ सकते हैं कि Hierarchical Firewall Policy कैसे बनाएं

Firewall Rules Evaluation

  1. Org: संगठन को असाइन की गई firewall नीतियां

  2. Folder: फोल्डर को असाइन की गई firewall नीतियां

  3. VPC: VPC को असाइन की गई firewall नियम

  4. Global: एक और प्रकार के firewall नियम जो VPCs को असाइन किए जा सकते हैं

  5. Regional: VM के NIC और क्षेत्र के VPC नेटवर्क से जुड़े firewall नियम

VPC Network Peering

दो Virtual Private Cloud (VPC) नेटवर्क को कनेक्ट करने की अनुमति देता है ताकि प्रत्येक नेटवर्क में संसाधन एक दूसरे के साथ संचार कर सकें। Peered VPC नेटवर्क एक ही प्रोजेक्ट में, एक ही संगठन के विभिन्न प्रोजेक्ट्स में, या विभिन्न संगठनों के विभिन्न प्रोजेक्ट्स में हो सकते हैं।

ये आवश्यक अनुमतियां हैं:

  • compute.networks.addPeering

  • compute.networks.updatePeering

  • compute.networks.removePeering

  • compute.networks.listPeeringRoutes

डॉक्स में और अधिक

References

HackTricks को समर्थन दें

Last updated