Azure नेटवर्क सुरक्षा समूह (NSG) को वर्चुअल मशीन पर लागू करने की पूरी गाइड
Azure NSG एक क्लाउड-स्तरीय फ़ायरवॉल है जो इनबाउंड/आउटबाउंड ट्रैफ़िक को फ़िल्टर करता है। इसे VM के NIC या सबनेट से जोड़ा जा सकता है।
NSG मूल बातें
- नियम: अनुमति/अस्वीकार, प्राथमिकता (100-4096), स्रोत/गंतव्य (IP/ASG/सेवा टैग), पोर्ट, प्रोटोकॉल (TCP/UDP/*)
- डिफ़ॉल्ट नियम: VNet में अनुमति, इंटरनेट आउटबाउंड अनुमति, इनबाउंड इंटरनेट अस्वीकार
- स्कोप: सबनेट-स्तर (सबनेट में सभी NIC पर लागू) या NIC-स्तर (विशिष्ट VM)
- ASG (एप्लिकेशन सुरक्षा समूह): VM को तार्किक रूप से समूहित करें, NSG नियमों में ASG को स्रोत/गंतव्य के रूप में उपयोग करें
चरण-दर-चरण: NSG बनाएं और VM पर लागू करें
विधि 1: Azure पोर्टल (GUI)
- Azure पोर्टल → नेटवर्क सुरक्षा समूह → बनाएं
- सब्सक्रिप्शन, रिसोर्स ग्रुप, नाम, क्षेत्र चुनें → समीक्षा + बनाएं
- NSG बनने के बाद → इनबाउंड सुरक्षा नियम → जोड़ें
- नियम कॉन्फ़िगर करें:
- स्रोत: कोई भी / IP पते / सेवा टैग (इंटरनेट, वर्चुअलनेटवर्क, AzureLoadBalancer) / ASG
- स्रोत पोर्ट रेंज: * (सभी) या विशिष्ट
- गंतव्य: कोई भी / IP पते / ASG
- सेवा: ड्रॉपडाउन से चुनें (SSH, RDP, HTTP, HTTPS, कस्टम) या कस्टम पोर्ट
- कार्रवाई: अनुमति / अस्वीकार
- प्राथमिकता: 100-4096 (कम = उच्च प्राथमिकता)
- नाम: वर्णनात्मक (उदाहरण: Allow-HTTP-Inbound)
- आउटबाउंड नियमों के लिए समान प्रक्रिया
- NSG को VM से जोड़ें:
- विकल्प A (NIC-स्तर): VM → नेटवर्किंग → नेटवर्क इंटरफेस क्लिक करें → नेटवर्क सुरक्षा समूह → अपना NSG चुनें → सहेजें
- विकल्प B (सबनेट-स्तर): वर्चुअल नेटवर्क → सबनेट → नेटवर्क सुरक्षा समूह → अपना NSG चुनें → सहेजें
विधि 2: Azure CLI
# NSG बनाएं
az network nsg create --resource-group myRG --name myNSG --location eastus
# इनबाउंड नियम जोड़ें (उदाहरण: HTTP 80 अनुमति दें)
az network nsg rule create --resource-group myRG --nsg-name myNSG \
--name Allow-HTTP --priority 100 --direction Inbound \
--source-address-prefixes Internet --destination-port-ranges 80 \
--protocol Tcp --access Allow
# NSG को NIC से जोड़ें
az network nic update --resource-group myRG --name myVMNIC --network-security-group myNSG
# या सबनेट से जोड़ें
az network vnet subnet update --resource-group myRG --vnet-name myVNet \
--name mySubnet --network-security-group myNSG
विधि 3: PowerShell (Az मॉड्यूल)
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName myRG -Location eastus -Name myNSG
Add-AzNetworkSecurityRuleConfig -NetworkSecurityGroup $nsg -Name Allow-HTTP -Access Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 80
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg
# NIC से जोड़ें
$nic = Get-AzNetworkInterface -ResourceGroupName myRG -Name myVMNIC
$nic.NetworkSecurityGroup = $nsg
Set-AzNetworkInterface -NetworkInterface $nic
विधि 4: ARM टेम्पलेट / Bicep / Terraform (IaC)
उत्पादन वातावरण के लिए बुनियादी ढांचे को कोड के रूप में उपयोग करें। Bicep उदाहरण:
resource nsg 'Microsoft.Network/networkSecurityGroups@2023-05-01' = {
name: 'myNSG'
location: resourceGroup().location
properties: {
securityRules: [
{
name: 'Allow-HTTP'
properties: {
priority: 100
protocol: 'Tcp'
direction: 'Inbound'
access: 'Allow'
sourceAddressPrefix: 'Internet'
sourcePortRange: '*'
destinationAddressPrefix: '*'
destinationPortRange: '80'
}
}
]
}
}
VM सुरक्षा के लिए अनुशंसित NSG नियम
| नाम | दिशा | प्राथमिकता | स्रोत | गंतव्य पोर्ट | कार्रवाई | उद्देश्य |
|---|---|---|---|---|---|---|
| Allow-SSH/RDP-Admin | Inbound | 100 | एडमिन IP / बास्टियन होस्ट IP | 22 / 3389 | Allow | प्रशासनिक पहुंच प्रतिबंधित |
| Allow-HTTP/HTTPS | Inbound | 110 | Internet / AzureFrontDoor.Backend | 80, 443 | Allow | वेब ट्रैफ़िक |
| Allow-App-Port | Inbound | 120 | विशिष्ट स्रोत (ASG/सबनेट) | ऐप पोर्ट | Allow | एप्लिकेशन-स्तरीय पहुंच |
| Allow-Azure-LB | Inbound | 65000 | AzureLoadBalancer | * | Allow | स्वास्थ्य जांच (न हटाएं) |
| Deny-All-Inbound | Inbound | 4096 | * | * | Deny | डिफ़ॉल्ट अस्वीकार (अंतर्निहित) |
| Allow-Outbound-Internet | Outbound | 100 | * | 80, 443, 53 | Allow | अपडेट, DNS, API कॉल |
| Deny-All-Outbound | Outbound | 4096 | * | * | Deny | प्रतिबंधित आउटबाउंड (उन्नत) |
NSG बनाम Azure फ़ायरवॉल
| विशेषता | NSG | Azure फ़ायरवॉल |
|---|---|---|
| OSI परत | लेयर 3/4 (नेटवर्क/ट्रांसपोर्ट) | लेयर 3/4/7 (एप्लिकेशन) |
| FQDN फ़िल्टरिंग | नहीं (केवल IP/सेवा टैग) | हां (वाइल्डकार्ड FQDN समर्थन) |
| SNAT/DNAT | नहीं | हां |
| खतरा खुफिया | नहीं | हां (Microsoft/तृतीय-पक्ष फीड) |
| लागत | मुफ्त (नियम सीमाओं के साथ) | ~$1.25/घंटा + डेटा प्रोसेसिंग |
| उपयोग करें | मूल नेटवर्क सेगमेंटेशन, VM-स्तर फ़िल्टरिंग | केंद्रीकृत एंटरप्राइज़ फ़ायरवॉल, ऐप-लेयर निरीक्षण |