सही सावधानी न बरतने पर, आपके सिस्टम में जोखिम की संभावना नई हो सकती है. इसलिए, फ़ायरवॉल के नियम बनाकर, Google Cloud पर अपने इंस्टेंस में आने और जाने वाले ट्रैफ़िक को कंट्रोल करना ज़रूरी है. इस कोडलैब में आपको Google Cloud के फ़ायरवॉल नियमों के बारे में जानकारी मिलेगी. साथ ही, इन्हें कंप्यूट इंजन वीएम इंस्टेंस पर लागू करने का तरीका भी पता चलेगा.
फ़ायरवॉल के नियम क्या हैं?
Google Cloud के फ़ायरवॉल नियम, आपके तय किए गए कॉन्फ़िगरेशन के हिसाब से आपके वीएम इंस्टेंस पर आने और आने वाले ट्रैफ़िक को अनुमति देते हैं या अस्वीकार करते हैं. फ़ायरवॉल के चालू होने वाले नियम हमेशा लागू होते हैं, चाहे वे आपके कॉन्फ़िगरेशन और ऑपरेटिंग सिस्टम पर ध्यान दिए बिना इंस्टेंस को सुरक्षित रखते हों.
हर VPC नेटवर्क, डिस्ट्रिब्यूटेड फ़ायरवॉल के रूप में काम करता है. हालांकि, फ़ायरवॉल के नियम, नेटवर्क के हिसाब से तय किए जाते हैं, लेकिन हर विकल्प के हिसाब से कनेक्शन इस्तेमाल किए जा सकते हैं या नहीं. आप फ़ायरवॉल के नियमों को न सिर्फ़ अपने इंस्टेंस और अन्य नेटवर्क के बीच, बल्कि एक ही नेटवर्क में मौजूद अलग-अलग इंस्टेंस के बीच समझ सकते हैं.
आप क्या बनाते हैं
- अलग-अलग सबनेटवर्क में दो कंप्यूट इंजन इंस्टेंस
- नेटवर्क पिंग टेस्ट
- इंस्टेंस टैग का इस्तेमाल करने वाले फ़ायरवॉल के नियम
- यह आर्किटेक्चर:
आप क्या #39;जानेंगे
- फ़ायरवॉल के नियम
- इंस्टेंस टैग का इस्तेमाल करके, इंस्टेंस पर फ़ायरवॉल के नियम लागू करने का तरीका
- फ़ायरवॉल के नियमों के लिए सबसे सही तरीके
आपको क्या चाहिए
- Google खाता
- दो Compute Engine इंस्टेंस
अपनी सुविधा के हिसाब से एनवायरमेंट सेट अप करना
अगर आपके पास पहले से कोई Google खाता नहीं है, तो आपको एक खाता बनाना होगा. Google Cloud Console में साइन इन करके नया प्रोजेक्ट बनाएं:
प्रोजेक्ट आईडी याद रखें, जो सभी Google क्लाउड प्रोजेक्ट में एक यूनीक नाम होता है. इन्हें कोडलैब में PROJECT_ID के तौर पर दिखाया जाएगा.
इसके बाद, आपको Google Cloud के संसाधनों का इस्तेमाल करने के लिए, Cloud Console में बिलिंग को चालू करना होगा.
इस कोडलैब के जवाब में कुछ डॉलर से ज़्यादा खर्च नहीं करना चाहिए. हालांकि, अगर आप संसाधनों का इस्तेमाल करना जारी रखना चाहते हैं या उन्हें चलाना छोड़ देते हैं, तो यह ज़्यादा हो सकता है. Google Cloud के नए उपयोगकर्ता, 300 डॉलर का मुफ़्त ट्रायल पा सकते हैं.
प्रोजेक्ट प्रोजेक्ट की प्रोसेस शुरू करना
Compute > Compute Engine > VM इंस्टेंस पर जाएं.
Compute Engine API चालू करने के बाद, आपका ज़्यादातर काम Cloud Shell के साथ होगा. इससे आप किसी भी ब्राउज़र में कमांड-लाइन से अपने इंफ़्रास्ट्रक्चर और ऐप्लिकेशन को मैनेज कर पाएंगे. Debian आधारित वीएम को उन सभी डेवलपमेंट टूल के साथ लोड किया जाता है जिनकी आपको (gcloud
कमांड-लाइन टूल, Git
, और अन्य) ज़रूरत होती है. साथ ही, यह लगातार पांच जीबी की होम डायरेक्ट्री ऑफ़र करती है. स्क्रीन के सबसे ऊपर दाएं सेक्शन में मौजूद आइकॉन पर क्लिक करके, Cloud Shell खोलें.
आप अलग-अलग ज़ोन भी चुन सकते हैं और चुन सकते हैं. ज़्यादा जानकारी के लिए, क्षेत्र और क्षेत्र देखें.
Network > VPC नेटवर्क > फ़ायरवॉल के नियम पर जाकर, फ़ायरवॉल के मौजूदा नियम देखें.
ध्यान दें कि डिफ़ॉल्ट नेटवर्क के लिए सिर्फ़ फ़ायरवॉल के नियम बनाए गए हैं.
आपको अपने मौजूदा Compute Engine इंस्टेंस के लिए, फ़ायरवॉल के नियम बनाने होंगे, ताकि यह पक्का किया जा सके कि custom-network1
बनाते समय आपने फ़ायरवॉल का कोई नियम न बताया हो.
इसके बाद, फ़ायरवॉल से जुड़ा एक नियम बनाएं. इससे आप टैग किए गए इंस्टेंस को ssh ऐक्सेस कर पाएंगे.
फ़ायरवॉल के नियमों वाले पेज पर बने रहें. फ़ायरवॉल नियम बनाएं पर क्लिक करें.
यहां दी गई जानकारी जोड़ें:
- नाम: allow-ssh
- नेटवर्क: custom-network1
- ट्रैफ़िक की दिशा: प्रवेश
- मैच पर कार्रवाई: अनुमति दें
- टारगेट: तय किए गए टारगेट टैग
- टारगेट टैग: iperf-access
- सोर्स आईपी रेंज: 0.0.0.0/0
- प्रोटोकॉल और पोर्ट: तय किए गए प्रोटोकॉल और पोर्ट: tcp: 22
अपने दो मौजूदा इंस्टेंस पर टैग लागू करें.
Compute > Compute Engine > VM इंस्टेंस पर जाकर कंप्यूट इंजन इंस्टेंस पेज पर जाएं.
इंस्टेंस-1 पर क्लिक करें और वीएम इंस्टेंस की जानकारी देखें. 'बदलाव करें' पर क्लिक करें.
नीचे नेटवर्क टैग सेक्शन तक स्क्रोल करें और उसे iperf-access नाम से टैग दें.
नीचे 'सेव करें' पर क्लिक करें. वर्चुअल मशीन के इंस्टेंस पेज पर वापस जाएं. इसके बाद, इंस्टेंस पर क्लिक करके इंस्टेंस-2 को दोहराएं. इसके लिए, बदलाव करें पर क्लिक करें और इंस्टेंस टैग के तौर पर iperf-access
को जोड़ें.
iPerf
iPerf आम तौर पर इस्तेमाल किया जाने वाला नेटवर्क टेस्टिंग टूल है, जो टीसीपी या यूडीपी डेटा स्ट्रीम बना सकता है. साथ ही, यह नेटवर्क की क्षमता को मेज़र करता है. आप इसका इस्तेमाल #custom-network1
के अंदर अलग-अलग सबनेटवर्क में तेज़ी से टेस्ट करने के लिए कर सकते हैं.
iPerf इंस्टॉल करना
कंप्यूट इंजन इंस्टेंस पेज पर नेविगेट करें.
हर इंस्टेंस लिस्टिंग के बगल में मौजूद, ssh बटन पर क्लिक करके, पिछले कोडलैब में बनाए गए दो वीएम पर टैप करें.
आपको दो ssh विंडो पॉप-अप दिखेंगी. इन निर्देशों के साथ दोनों में iPerf इंस्टॉल करें:
sudo apt-get install iperf
iPerf टेस्ट चलाना
instance-2
में, बताएं कि यह इंस्टेंस-2 ssh टर्मिनल में यह जानकारी डालकर, iPerf सर्वर है:
iperf -s
इंस्टेंस-1 एसएसएच विंडो में, instance-2
का अंदरूनी आईपी के साथ यह निर्देश डालें:
iperf -c [INSTANCE-2 INTERNAL IP]
यह रुक जाएगा, क्योंकि आपने instance-1
और instance-2
के बीच संचार की अनुमति देने के लिए दूसरा फ़ायरवॉल नियम लागू नहीं किया है. Control+Z (Macintosh पर Command+Z) डालकर कमांड को खत्म करें.
इस बार, आप Cloud Shell से फ़ायरवॉल का नियम बनाएंगे.
पक्का करें कि आप Cloud Shell में हों, न कि इंस्टेंस इंस्टेंस ssh सेशन में. यह नियम डालकर फ़ायरवॉल नियम बनाएं:
gcloud compute firewall-rules create iperf-access --allow tcp:5001 \ --source-ranges 0.0.0.0/0 \ --network custom-network1 \ --target-tags=iperf-access
पुष्टि करें कि यह पहले से ही इस्तेमाल हो रहा है:
gcloud compute firewall-rules list NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED allow-ssh custom-network1 INGRESS 1000 tcp:22 False default-allow-icmp default INGRESS 65534 icmp False default-allow-internal default INGRESS 65534 tcp:0-65535,udp:0-65535,icmp False default-allow-rdp default INGRESS 65534 tcp:3389 False default-allow-ssh default INGRESS 65534 tcp:22 False iperf-access custom-network1 INGRESS 1000 tcp:5001 False
instance-2
के लिए एसएसएच विंडो पर वापस जाएं. आपका आईपी सेशन अब भी चालू होना चाहिए. अगर यह ##39 नहीं है, तो फिर से यह निर्देश चलाएं.
iperf -s
instance-1
एसएसएच विंडो में, instance-2
के अंदरूनी आईपी के साथ यह निर्देश डालें:
iperf -c [INSTANCE-2 INTERNAL IP]
आपको iPerf को instance-2
से कनेक्ट करते हुए देखना चाहिए. साथ ही, instance-1
और instance-2
के बीच अंदरूनी नेटवर्क परफ़ॉर्मेंस का आउटपुट देना चाहिए.
अब आप Google Cloud में फ़ायरवॉल के नियम बनाने की बुनियादी बातें जानते हैं.
आपने क्या कवर किया
- इंस्टेंस पर फ़ायरवॉल के नियमों का क्या असर होता है
- Cloud Console और Cloud Shell की मदद से फ़ायरवॉल नियम बनाने का तरीका
- फ़ायरवॉल के नियमों और इंस्टेंस पर टैग लागू करने का तरीका
- इंस्टेंस के बीच iPerf टेस्ट कैसे चलाएं
अगले चरण
- फ़ायरवॉल के नियमों की खास जानकारी से, फ़ायरवॉल के नियमों के बारे में ज़्यादा जानें.
Cloud Shell के इन निर्देशों का इस्तेमाल करके, कंप्यूट इंजन इंस्टेंस मिटाएं:
gcloud compute instances delete instance-1 --zone us-central1-a The following instances will be deleted. Any attached disks configured to be auto-deleted will be deleted unless they are attached to any other instances or the `--keep-disks` flag is given and specifies them for keeping. Deleting a disk is irreversible and any data on the disk will be lost. - [instance-1] in [us-central1-a] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/ypc-demo/zones/us-central1-a/instances/instance-1].
gcloud compute instances delete instance-2 --zone europe-west1-d The following instances will be deleted. Any attached disks configured to be auto-deleted will be deleted unless they are attached to any other instances or the `--keep-disks` flag is given and specifies them for keeping. Deleting a disk is irreversible and any data on the disk will be lost. - [instance-2] in [europe-west1-d] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/ypc-demo/zones/europe-west1-d/instances/instance-2].
फ़ायरवॉल के नियमों को, इन निर्देशों का इस्तेमाल करके मिटाएं:
gcloud compute firewall-rules delete allow-ssh The following firewalls will be deleted: - [allow-ssh] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/vpc-demo-241520/global/firewalls/allow-ssh].
gcloud compute firewall-rules delete iperf-access The following firewalls will be deleted: - [iperf-access] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/vpc-demo-241520/global/firewalls/iperf-access].
इन कमांड के साथ सबनेटवर्क मिटाएं:
gcloud compute networks subnets delete subnet-us-central-192 --region us-central1 The following subnetworks will be deleted: - [subnet-us-central-192] in [us-central1] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/vpc-demo-241520/regions/us-central1/subnetworks/subnet-us-central-192].
gcloud compute networks subnets delete subnet-europe-west-192 --region europe-west1 The following subnetworks will be deleted: - [subnet-europe-west-192] in [europe-west1] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/vpc-demo-241520/regions/europe-west1/subnetworks/subnet-europe-west-192].
पसंद के मुताबिक वीपीसी को इस निर्देश के साथ मिटाएं:
gcloud compute networks delete custom-network1 The following networks will be deleted: - [custom-network1] Do you want to continue (Y/n)? y Deleted [https://www.googleapis.com/compute/v1/projects/vpc-demo-241520/global/networks/custom-network1].