AWS - VPC & Networking Basic Information
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
A VPC contains a network CIDR like 10.0.0.0/16 (with its routing table and network ACL).
यह VPC नेटवर्क उपनेटवर्क में विभाजित है, इसलिए एक उपनेटवर्क सीधे VPC, रूटिंग टेबल और नेटवर्क ACL से संबंधित है।
फिर, सेवाओं (जैसे EC2 उदाहरण) से जुड़े नेटवर्क इंटरफेस उपनेटवर्क से सुरक्षा समूहों के साथ जुड़े होते हैं।
इसलिए, एक सुरक्षा समूह नेटवर्क इंटरफेस का उपयोग करते समय उजागर पोर्ट को सीमित करेगा, उपनेटवर्क से स्वतंत्र। और एक नेटवर्क ACL पूरे नेटवर्क के लिए उजागर पोर्ट को सीमित करेगा।
इसके अलावा, इंटरनेट तक पहुँचने के लिए कुछ दिलचस्प कॉन्फ़िगरेशन हैं जिन्हें जांचना है:
एक उपनेटवर्क सार्वजनिक IPv4 पते स्वचालित रूप से असाइन कर सकता है
नेटवर्क में बनाए गए उदाहरण को IPv4 पते स्वचालित रूप से असाइन किया जा सकता है
एक इंटरनेट गेटवे को VPC से जुड़ा होना चाहिए
आप Egress-only इंटरनेट गेटवे का भी उपयोग कर सकते हैं
आपके पास एक NAT गेटवे एक निजी उपनेट में हो सकता है ताकि उस निजी उपनेट से बाहरी सेवाओं से कनेक्ट करना संभव हो, लेकिन इसे बाहर से पहुँचाना संभव नहीं है।
NAT गेटवे सार्वजनिक (इंटरनेट तक पहुँच) या निजी (अन्य VPCs तक पहुँच) हो सकता है
Amazon वर्चुअल प्राइवेट क्लाउड (Amazon VPC) आपको एक वर्चुअल नेटवर्क में AWS संसाधनों को लॉन्च करने की अनुमति देता है जिसे आपने परिभाषित किया है। इस वर्चुअल नेटवर्क में कई उपनेट होंगे, इंटरनेट गेटवे इंटरनेट तक पहुँचने के लिए, ACLs, सुरक्षा समूह, आईपी...
उपनेट सुरक्षा के एक उच्च स्तर को लागू करने में मदद करते हैं। समान संसाधनों का तार्किक समूह आपके बुनियादी ढांचे में प्रबंधन में आसानी बनाए रखने में भी मदद करता है।
मान्य CIDR एक /16 नेटमास्क से लेकर /28 नेटमास्क तक हैं।
एक उपनेट एक ही समय में विभिन्न उपलब्धता क्षेत्रों में नहीं हो सकता।
AWS प्रत्येक उपनेट के पहले तीन होस्ट IP पते को आंतरिक AWS उपयोग के लिए आरक्षित करता है: पहला होस्ट पता VPC राउटर के लिए उपयोग किया जाता है। दूसरा पता AWS DNS के लिए आरक्षित है और तीसरा पता भविष्य के उपयोग के लिए आरक्षित है।
उन्हें सार्वजनिक उपनेट कहा जाता है जिनका इंटरनेट तक सीधा पहुँच है, जबकि निजी उपनेट नहीं है।
रूट टेबल एक VPC के भीतर एक उपनेट के लिए ट्रैफ़िक रूटिंग निर्धारित करती हैं। वे निर्धारित करते हैं कि कौन सा नेटवर्क ट्रैफ़िक इंटरनेट या VPN कनेक्शन के लिए अग्रेषित किया जाता है। आप आमतौर पर निम्नलिखित तक पहुँच पाएंगे:
स्थानीय VPC
NAT
इंटरनेट गेटवे / Egress-only इंटरनेट गेटवे (जो VPC को इंटरनेट तक पहुँच देने के लिए आवश्यक हैं)।
एक उपनेट को सार्वजनिक बनाने के लिए आपको अपने VPC से इंटरनेट गेटवे को बनाना और जोड़ना होगा।
VPC एंडपॉइंट (निजी नेटवर्क से S3 तक पहुँचने के लिए)
निम्नलिखित चित्रों में आप एक डिफ़ॉल्ट सार्वजनिक नेटवर्क और एक निजी नेटवर्क के बीच के अंतर देख सकते हैं:
नेटवर्क एक्सेस कंट्रोल सूचियाँ (ACLs): नेटवर्क ACLs फ़ायरवॉल नियम हैं जो एक उपनेट के लिए आने वाले और जाने वाले नेटवर्क ट्रैफ़िक को नियंत्रित करते हैं। इन्हें विशिष्ट IP पते या रेंज के लिए ट्रैफ़िक को अनुमति या अस्वीकृत करने के लिए उपयोग किया जा सकता है।
सुरक्षा समूहों का उपयोग करके पहुँच को अनुमति/अस्वीकृत करना सबसे सामान्य है, लेकिन यह स्थापित रिवर्स शेल को पूरी तरह से काटने का एकमात्र तरीका है। सुरक्षा समूह में संशोधित नियम पहले से स्थापित कनेक्शनों को रोकता नहीं है
हालाँकि, यह पूरे उपनेट पर लागू होता है, इसलिए चीज़ों को प्रतिबंधित करते समय सावधान रहें क्योंकि आवश्यक कार्यक्षमता प्रभावित हो सकती है
सुरक्षा समूह एक वर्चुअल फ़ायरवॉल हैं जो VPC में उदाहरणों के लिए इनबाउंड और आउटबाउंड नेटवर्क ट्रैफ़िक को नियंत्रित करते हैं। संबंध 1 SG से M उदाहरणों (आमतौर पर 1 से 1)। आमतौर पर इसका उपयोग उदाहरणों में खतरनाक पोर्ट खोलने के लिए किया जाता है, जैसे कि उदाहरण के लिए पोर्ट 22:
An Elastic IP address is a static IPv4 address designed for dynamic cloud computing. An Elastic IP address is allocated to your AWS account, and is yours until you release it. By using an Elastic IP address, you can mask the failure of an instance or software by rapidly remapping the address to another instance in your account.
By default, all subnets have the automatic assigned of public IP addresses turned off but it can be turned on.
A local route within a route table enables communication between VPC subnets.
यदि आप एक उपनेट को एक अलग उपनेट से जोड़ रहे हैं तो आप अन्य उपनेट से जुड़े उपनेट्स तक पहुँच नहीं सकते, आपको उनके साथ सीधे कनेक्शन बनाना होगा। यह इंटरनेट गेटवे पर भी लागू होता है। आप इंटरनेट तक पहुँचने के लिए एक उपनेट कनेक्शन के माध्यम से नहीं जा सकते, आपको अपने उपनेट को इंटरनेट गेटवे असाइन करना होगा।
VPC पीयरिंग आपको दो या अधिक VPCs को एक साथ जोड़ने की अनुमति देती है, IPV4 या IPV6 का उपयोग करते हुए, जैसे कि वे एक ही नेटवर्क का हिस्सा हों।
एक बार जब पीयर कनेक्टिविटी स्थापित हो जाती है, तो एक VPC में संसाधन दूसरे VPC में संसाधनों तक पहुँच सकते हैं। VPCs के बीच कनेक्टिविटी मौजूदा AWS नेटवर्क अवसंरचना के माध्यम से लागू की जाती है, और इसलिए यह उच्च उपलब्धता के साथ होती है और कोई बैंडविड्थ बाधा नहीं होती है। चूंकि पीयर्ड कनेक्शन ऐसे काम करते हैं जैसे वे एक ही नेटवर्क का हिस्सा हों, आपके CIDR ब्लॉक रेंज के उपयोग के मामले में कुछ प्रतिबंध हैं। यदि आपके VPC के लिए ओवरलैपिंग या डुप्लिकेट CIDR रेंज हैं, तो आप VPCs को एक साथ पीयर नहीं कर पाएंगे। प्रत्येक AWS VPC केवल अपने पीयर के साथ संवाद करेगा। उदाहरण के लिए, यदि आपके पास VPC 1 और VPC 2 के बीच एक पीयरिंग कनेक्शन है, और VPC 2 और VPC 3 के बीच एक और कनेक्शन है, जैसा कि दिखाया गया है, तो VPC 1 और 2 एक-दूसरे के साथ सीधे संवाद कर सकते हैं, जैसे कि VPC 2 और VPC 3, हालाँकि, VPC 1 और VPC 3 नहीं कर सकते। आप एक VPC के माध्यम से दूसरे VPC तक नहीं पहुँच सकते।
Within your VPC, you could potentially have hundreds or even thousands of resources all communicating between different subnets both public and private and also between different VPCs through VPC peering connections. VPC Flow Logs allow you to capture IP traffic information that flows between your network interfaces of your resources within your VPC.
Unlike S3 access logs and CloudFront access logs, the log data generated by VPC Flow Logs is not stored in S3. Instead, the log data captured is sent to CloudWatch logs.
Limitations:
If you are running a VPC peered connection, then you'll only be able to see flow logs of peered VPCs that are within the same account.
If you are still running resources within the EC2-Classic environment, then unfortunately you are not able to retrieve information from their interfaces
Once a VPC Flow Log has been created, it cannot be changed. To alter the VPC Flow Log configuration, you need to delete it and then recreate a new one.
The following traffic is not monitored and captured by the logs. DHCP traffic within the VPC, traffic from instances destined for the Amazon DNS Server.
Any traffic destined to the IP address for the VPC default router and traffic to and from the following addresses, 169.254.169.254 which is used for gathering instance metadata, and 169.254.169.123 which is used for the Amazon Time Sync Service.
Traffic relating to an Amazon Windows activation license from a Windows instance
Traffic between a network load balancer interface and an endpoint network interface
For every network interface that publishes data to the CloudWatch log group, it will use a different log stream. And within each of these streams, there will be the flow log event data that shows the content of the log entries. Each of these logs captures data during a window of approximately 10 to 15 minutes.
Customer Gateway:
A Customer Gateway is a resource that you create in AWS to represent your side of a VPN connection.
It is essentially a physical device or software application on your side of the Site-to-Site VPN connection.
You provide routing information and the public IP address of your network device (such as a router or a firewall) to AWS to create a Customer Gateway.
It serves as a reference point for setting up the VPN connection and doesn't incur additional charges.
Virtual Private Gateway:
A Virtual Private Gateway (VPG) is the VPN concentrator on the Amazon side of the Site-to-Site VPN connection.
It is attached to your VPC and serves as the target for your VPN connection.
VPG is the AWS side endpoint for the VPN connection.
It handles the secure communication between your VPC and your on-premises network.
Site-to-Site VPN Connection:
A Site-to-Site VPN connection connects your on-premises network to a VPC through a secure, IPsec VPN tunnel.
This type of connection requires a Customer Gateway and a Virtual Private Gateway.
It's used for secure, stable, and consistent communication between your data center or network and your AWS environment.
Typically used for regular, long-term connections and is billed based on the amount of data transferred over the connection.
Client VPN Endpoint:
A Client VPN endpoint is a resource that you create in AWS to enable and manage client VPN sessions.
It is used for allowing individual devices (like laptops, smartphones, etc.) to securely connect to AWS resources or your on-premises network.
It differs from Site-to-Site VPN in that it is designed for individual clients rather than connecting entire networks.
With Client VPN, each client device uses a VPN client software to establish a secure connection.
अपने ऑन-प्रिमाइसेस नेटवर्क को अपने VPC से कनेक्ट करें।
VPN कनेक्शन: आपके ऑन-प्रिमाइसेस उपकरण और आपके VPCs के बीच एक सुरक्षित कनेक्शन।
VPN टनल: एक एन्क्रिप्टेड लिंक जहां डेटा ग्राहक नेटवर्क से AWS या इसके विपरीत पास कर सकता है।
प्रत्येक VPN कनेक्शन में दो VPN टनल शामिल होते हैं जिन्हें आप उच्च उपलब्धता के लिए एक साथ उपयोग कर सकते हैं।
ग्राहक गेटवे: एक AWS संसाधन जो AWS को आपके ग्राहक गेटवे डिवाइस के बारे में जानकारी प्रदान करता है।
ग्राहक गेटवे डिवाइस: आपके साइट-से-साइट VPN कनेक्शन के आपके पक्ष पर एक भौतिक डिवाइस या सॉफ़्टवेयर एप्लिकेशन।
वर्चुअल प्राइवेट गेटवे: साइट-से-साइट VPN कनेक्शन के Amazon पक्ष पर VPN कंसंट्रेटर। आप साइट-से-साइट VPN कनेक्शन के Amazon पक्ष के लिए गेटवे के रूप में एक वर्चुअल प्राइवेट गेटवे या एक ट्रांजिट गेटवे का उपयोग करते हैं।
ट्रांजिट गेटवे: एक ट्रांजिट हब जिसका उपयोग आप अपने VPCs और ऑन-प्रिमाइसेस नेटवर्क को इंटरकनेक्ट करने के लिए कर सकते हैं। आप साइट-से-साइट VPN कनेक्शन के Amazon पक्ष के लिए गेटवे के रूप में एक ट्रांजिट गेटवे या वर्चुअल प्राइवेट गेटवे का उपयोग करते हैं।
IPv6 ट्रैफ़िक वर्चुअल प्राइवेट गेटवे पर VPN कनेक्शनों के लिए समर्थित नहीं है।
एक AWS VPN कनेक्शन पथ MTU खोज का समर्थन नहीं करता है।
इसके अलावा, साइट-से-साइट VPN का उपयोग करते समय निम्नलिखित पर विचार करें।
जब आप अपने VPCs को एक सामान्य ऑन-प्रिमाइसेस नेटवर्क से जोड़ते हैं, तो हम अनुशंसा करते हैं कि आप अपने नेटवर्क के लिए गैर-ओवरलैपिंग CIDR ब्लॉक का उपयोग करें।
अपने मशीन से अपने VPC से कनेक्ट करें
Client VPN endpoint: वह संसाधन जिसे आप ग्राहक VPN सत्रों को सक्षम और प्रबंधित करने के लिए बनाते और कॉन्फ़िगर करते हैं। यह वह संसाधन है जहां सभी ग्राहक VPN सत्र समाप्त होते हैं।
लक्षित नेटवर्क: एक लक्षित नेटवर्क वह नेटवर्क है जिसे आप एक ग्राहक VPN एंडपॉइंट के साथ जोड़ते हैं। एक VPC से एक उपनेट एक लक्षित नेटवर्क है। एक ग्राहक VPN एंडपॉइंट के साथ एक उपनेट को जोड़ने से आपको VPN सत्र स्थापित करने की अनुमति मिलती है। आप उच्च उपलब्धता के लिए एक ग्राहक VPN एंडपॉइंट के साथ कई उपनेट्स को जोड़ सकते हैं। सभी उपनेट्स को एक ही VPC से होना चाहिए। प्रत्येक उपनेट को एक अलग उपलब्धता क्षेत्र में होना चाहिए।
रूट: प्रत्येक ग्राहक VPN एंडपॉइंट में एक रूट टेबल होती है जो उपलब्ध गंतव्य नेटवर्क रूट का वर्णन करती है। रूट टेबल में प्रत्येक रूट विशिष्ट संसाधनों या नेटवर्क के लिए ट्रैफ़िक के लिए पथ निर्दिष्ट करता है।
अधिकार नियम: एक अधिकार नियम उन उपयोगकर्ताओं को प्रतिबंधित करता है जो एक नेटवर्क तक पहुँच सकते हैं। एक निर्दिष्ट नेटवर्क के लिए, आप सक्रिय निर्देशिका या पहचान प्रदाता (IdP) समूह को कॉन्फ़िगर करते हैं जिसे पहुँच की अनुमति है। केवल इस समूह के सदस्य निर्दिष्ट नेटवर्क तक पहुँच सकते हैं। डिफ़ॉल्ट रूप से, कोई अधिकार नियम नहीं होते हैं और आपको संसाधनों और नेटवर्क तक पहुँच सक्षम करने के लिए अधिकार नियम कॉन्फ़िगर करने की आवश्यकता होती है।
क्लाइंट: अंतिम उपयोगकर्ता जो ग्राहक VPN एंडपॉइंट से कनेक्ट करके एक VPN सत्र स्थापित करता है। अंतिम उपयोगकर्ताओं को एक OpenVPN क्लाइंट डाउनलोड करने की आवश्यकता होती है और VPN सत्र स्थापित करने के लिए आपने जो ग्राहक VPN कॉन्फ़िगरेशन फ़ाइल बनाई है उसका उपयोग करना होता है।
क्लाइंट CIDR रेंज: एक IP पता रेंज जिससे ग्राहक IP पते असाइन किए जाते हैं। ग्राहक VPN एंडपॉइंट से प्रत्येक कनेक्शन को ग्राहक CIDR रेंज से एक अद्वितीय IP पता असाइन किया जाता है। आप ग्राहक CIDR रेंज चुनते हैं, उदाहरण के लिए, 10.2.0.0/16
।
क्लाइंट VPN पोर्ट: AWS ग्राहक VPN TCP और UDP दोनों के लिए पोर्ट 443 और 1194 का समर्थन करता है। डिफ़ॉल्ट पोर्ट 443 है।
क्लाइंट VPN नेटवर्क इंटरफेस: जब आप अपने ग्राहक VPN एंडपॉइंट के साथ एक उपनेट को जोड़ते हैं, तो हम उस उपनेट में ग्राहक VPN नेटवर्क इंटरफेस बनाते हैं। ग्राहक VPN एंडपॉइंट से VPC में भेजा गया ट्रैफ़िक ग्राहक VPN नेटवर्क इंटरफेस के माध्यम से भेजा जाता है। स्रोत नेटवर्क पता अनुवाद (SNAT) तब लागू किया जाता है, जहां ग्राहक CIDR रेंज से स्रोत IP पता ग्राहक VPN नेटवर्क इंटरफेस IP पते में अनुवादित होता है।
कनेक्शन लॉगिंग: आप अपने ग्राहक VPN एंडपॉइंट के लिए कनेक्शन लॉगिंग सक्षम कर सकते हैं ताकि कनेक्शन घटनाओं को लॉग किया जा सके। आप इस जानकारी का उपयोग फोरेंसिक्स चलाने, यह विश्लेषण करने के लिए कि आपका ग्राहक VPN एंडपॉइंट कैसे उपयोग किया जा रहा है, या कनेक्शन समस्याओं को डिबग करने के लिए कर सकते हैं।
स्व-सेवा पोर्टल: आप अपने ग्राहक VPN एंडपॉइंट के लिए एक स्व-सेवा पोर्टल सक्षम कर सकते हैं। ग्राहक अपने क्रेडेंशियल का उपयोग करके वेब-आधारित पोर्टल में लॉग इन कर सकते हैं और ग्राहक VPN एंडपॉइंट कॉन्फ़िगरेशन फ़ाइल का नवीनतम संस्करण डाउनलोड कर सकते हैं, या AWS द्वारा प्रदान किए गए क्लाइंट का नवीनतम संस्करण डाउनलोड कर सकते हैं।
क्लाइंट CIDR रेंज स्थानीय CIDR के साथ ओवरलैप नहीं कर सकती है जिसमें संबंधित उपनेट स्थित है, या ग्राहक VPN एंडपॉइंट की रूट टेबल में मैन्युअल रूप से जोड़े गए किसी भी रूट के साथ।
ग्राहक CIDR रेंज का आकार कम से कम /22 होना चाहिए और /12 से अधिक नहीं होना चाहिए।
ग्राहक CIDR रेंज में पते का एक भाग ग्राहक VPN एंडपॉइंट के उपलब्धता मॉडल का समर्थन करने के लिए उपयोग किया जाता है, और इसे ग्राहकों को असाइन नहीं किया जा सकता। इसलिए, हम अनुशंसा करते हैं कि आप एक CIDR ब्लॉक असाइन करें जिसमें अधिकतम संख्या में IP पते शामिल हों जो आप ग्राहक VPN एंडपॉइंट पर समर्थन करने की योजना बना रहे हैं।
ग्राहक VPN एंडपॉइंट बनाने के बाद क्लाइंट CIDR रेंज को बदलना संभव नहीं है।
एक ग्राहक VPN एंडपॉइंट के साथ जुड़े उपनेट्स को एक ही VPC में होना चाहिए।
आप एक ग्राहक VPN एंडपॉइंट के साथ एक ही उपलब्धता क्षेत्र से कई उपनेट्स को जोड़ नहीं सकते।
एक ग्राहक VPN एंडपॉइंट समर्पित टेनेसी VPC में उपनेट संघों का समर्थन नहीं करता है।
ग्राहक VPN केवल IPv4 ट्रैफ़िक का समर्थन करता है।
ग्राहक VPN संघीय सूचना प्रसंस्करण मानकों (FIPS) के लिए अनुपालन नहीं है।
यदि आपके सक्रिय निर्देशिका के लिए बहु-कारक प्रमाणीकरण (MFA) बंद है, तो उपयोगकर्ता पासवर्ड निम्नलिखित प्रारूप में नहीं हो सकता है।
स्व-सेवा पोर्टल म्यूचुअल प्रमाणीकरण का उपयोग करके प्रमाणीकरण करने वाले ग्राहकों के लिए उपलब्ध नहीं है।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)