Azure Firewall

Azure Firewall, Azure Virtual Network kaynaklarınızı koruyan, yönetilen, bulut tabanlı bir güvenlik hizmetidir.

Azure Firewall şu anda yönetilen genel önizleme aşamasındadır. “Register-AzureRmProviderFeature” PowerShell komutunu kullanarak bu uygulamayı açıkça etkinleştirmiş olursunuz.

Bu genel önizleme bir hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yüklerinde kullanılmamalıdır. Belirli özellikler desteklenmiyor olabilir, kısıtlı yeteneklere sahip olabilir veya tüm Azure bölgelerinde mevcut olmayabilir.

 

Resim 01

Aboneliklerle sanal ağlarda uygulama ve ağ bağlantısı ilkelerini merkezi olarak oluşturabilir, zorlayabilir ve günlüğe alabilirsiniz. Azure Firewall, dış güvenlik duvarlarının sanal ağınızdan kaynaklanan trafiği tanımlamasına olanak tanımak amacıyla sanal ağ kaynaklarınız için statik genel bir IP adresi kullanır. Hizmet, günlük ve analiz için Azure İzleyici ile tamamen tümleşik çalışır.

Azure Güvenlik Duvarı genel önizlemesi şu özellikleri sunar:

Yerleşik yüksek kullanılabilirlik

Yüksek kullanılabilirlik yerleşiktir; bu nedenle, ek bir yük dengeleyici gerekmez ve yapılandırmanız gereken hiçbir şey yoktur.

Kısıtlamasız bulut ölçeklenebilirliği

Azure Firewall, değişen ağ trafiği akışlarıyla başa çıkmak için gerek duyduğunuz kadar ölçeklenebilir, bu sayede trafiğinizin en yoğun olduğu durum için bütçe ayarlamak zorunda kalmazsınız.

FQDN filtreleme

Giden HTTP/S trafiğini, joker karakter de içerebilen tam etki alanı adlarının (FQDN) belirtilen bir listesiyle sınırlayabilirsiniz. Bu özelliğe SSL sonlandırması gerekmez.

Ağ trafiği filtreleme kuralları

Ağ filtreleme kurallarını kaynak ve hedef IP adresine, bağlantı noktasına ve protokole göre merkezi olarak oluşturabilir, izin verebilir veya reddedebilirsiniz. Azure Güvenlik Duvarı tamamen durum bilgisine sahiptir; bu nedenle, farklı türden bağlantıların geçerli paketlerini tanıyabilir. Kurallar, birden çok abonelik ve sanal ağda zorlanır ve günlüğe kaydedilir.

Giden SNAT desteği

Tüm giden sanal ağ trafiği IP adresleri Azure Güvenlik Duvarı genel IP’sine çevrilir (Kaynak Ağ Adresi Çevirisi). Sanal ağınızdan kaynaklanan uzak İnternet hedeflerine yönelik trafiği tanımlayabilir ve buna izin verebilirsiniz.

Azure İzleyici günlükleri

Günlükleri depolama hesabında arşivleyebilmeniz, olayların Event Hub’a akışını yapabilmeniz ve bunları Log Analytics’e gönderebilmeniz için, tüm olaylar Azure Monitor ile tümleştirilmiştir.

 

Azure Firewall hakkında genel olarak bilgileri paylaştık. Peki Azure Firewall’u nasıl etkinleştirebiliriz?

İşlemi portal üzerinden veya PowerShell kullanarak gerçekleştirebiliyoruz. Ben PowerShell kullanarak bu işlemleri gerçekleştireceğim.

 

##Azure aboneliğine girişi sağlıyoruz.

Login-AzureRmAccount

##Birden fazla Azure aboneliğimiz varsa abonelik listesini çekiyoruz.

Get-AzureRmSubscription

##Çalışmayı gerçekleştireceğimiz aboneliği seçiyoruz.

Select-AzureRmSubscription -SubscriptionName "Visual Studio Offer"

 

Resim 02

 

#Kaynakgrubu ve lokasyon bilgilerini aşağıdaki değişkenlere giriyoruz.

$RG="rg-seyhan"

$Location="westeurope"

#Tüm lokasyon listesini görmek için aşağıdaki komutu çalıştırabilirsiniz.

Get-AzureRmLocation | Select Location

 

Resim 03

#Kaynak grubu oluşturuyoruz.

New-AzureRmResourceGroup -Name $RG -Location $Location

 

Resim 04

#Azure üzerinde oluşturmuş olduğumuz kaynak grubu içerisine sanal ağ oluşturuyoruz.

$VnetName=$RG+"Vnet"

New-AzureRmVirtualNetwork -ResourceGroupName $RG -Name $VnetName -AddressPrefix 192.168.0.0/16 -Location $Location

 

Resim 05

 

#Oluşturmuş olduğumuz sanağ ağ içerisinde ağ içerisinde kullanılacak olan alt ağları belirliyoruz. Burada "AzureFirewallSubnet" isminin kullanılması gerekiyor.

$vnet = Get-AzureRmVirtualNetwork -ResourceGroupName $RG -Name $VnetName

Add-AzureRmVirtualNetworkSubnetConfig -Name AzureFirewallSubnet -VirtualNetwork $vnet -AddressPrefix 192.168.1.0/24

Add-AzureRmVirtualNetworkSubnetConfig -Name FrontEndSubnet -VirtualNetwork $vnet -AddressPrefix 192.168.0.0/24

Add-AzureRmVirtualNetworkSubnetConfig -Name BackEndSubnet -VirtualNetwork $vnet -AddressPrefix 192.168.2.0/24

Set-AzureRmVirtualNetwork -VirtualNetwork $vnet

 

Resim 06

 

#Azure üzerinde oluşturacağımız vm için ve yük dağıtıcı için genel ip adresi oluşturuyoruz.

$LBPipName = $RG + "PublicIP"

$LBPip = New-AzureRmPublicIpAddress -Name $LBPipName -ResourceGroupName $RG -Location $Location -AllocationMethod Static -Sku Standard

$seyhanvmpip = New-AzureRmPublicIpAddress -Name "seyhanHostPublicIP" -ResourceGroupName $RG -Location $Location -AllocationMethod Static -Sku Basic

 

Resim 07

# Sanal makine için ağ güvenlik grubu için, 3389 portunu açıyoruz.

$nsgRuleRDP = New-AzureRmNetworkSecurityRuleConfig -Name myNetworkSecurityGroupRuleSSH  -Protocol Tcp -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389 -Access Allow

 

Resim 08

# Ağ güvenlik grubunu oluşturuyoruz.

$NsgName = $RG+"NSG"

$nsg = New-AzureRmNetworkSecurityGroup -ResourceGroupName $RG -Location $Location -Name $NsgName -SecurityRules $nsgRuleRDP

 

Resim 09

#Sanal sunucu üzerinde kullanacağımız hesap bilgilerini giriyoruz.

$securePassword = ConvertTo-SecureString ‘Password1***’ -AsPlainText -Force

$cred = New-Object System.Management.Automation.PSCredential ("AzfwUser", $securePassword)

 

Resim 10

#Sanal makinemizi oluşturuyoruz.

$vnet = Get-AzureRmVirtualNetwork -ResourceGroupName $RG -Name $VnetName

$FrontEndSubnetId = $vnet.Subnets[1].Id

# Create a virtual network card and associate with seyhanvm public IP address

$seyhanvmNic = New-AzureRmNetworkInterface -Name seyhanvmNic -ResourceGroupName $RG -Location $Location -SubnetId $FrontEndSubnetId -PublicIpAddressId $seyhanvmpip.Id -NetworkSecurityGroupId $nsg.Id

$seyhanvmConfig = New-AzureRmVMConfig -VMName seyhanvm -VMSize Standard_DS1_v2 | Set-AzureRmVMOperatingSystem -Windows -ComputerName seyhanvm -Credential $cred | Set-AzureRmVMSourceImage -PublisherName "MicrosoftWindowsServer" -Offer "WindowsServer" -Skus "2012-R2-Datacenter" -Version latest | Add-AzureRmVMNetworkInterface -Id $seyhanvmNic.Id

New-AzureRmVM -ResourceGroupName $RG -Location $Location -VM $seyhanvmConfig

 

Resim 11

#Yeni bir tane sanal makine oluşturuyoruz.

$BackEndSubnetId = $vnet.Subnets[2].Id

$ServerVmNic = New-AzureRmNetworkInterface -Name ServerVmNic -ResourceGroupName $RG -Location $Location -SubnetId $BackEndSubnetId

$ServerVmConfig = New-AzureRmVMConfig -VMName ServerVm -VMSize Standard_DS1_v2 | Set-AzureRmVMOperatingSystem -Windows -ComputerName ServerVm -Credential $cred | Set-AzureRmVMSourceImage -PublisherName "MicrosoftWindowsServer" -Offer "WindowsServer" -Skus "2012-R2-Datacenter" -Version latest | Add-AzureRmVMNetworkInterface -Id $ServerVmNic.Id

New-AzureRmVM -ResourceGroupName $RG -Location $Location -VM $ServerVmConfig

Resim12

#Azure Firewall oluşturuyoruz.

$GatewayName = $RG + "Azfw"

$Azfw = New-AzureRmFirewall -Name $GatewayName -ResourceGroupName $RG -Location $Location -VirtualNetworkName $vnet.Name -PublicIpName $LBPip.Name

 

Resim 13

# *microsoft.com alan adları için kural oluşturuyoruz.

$Azfw = Get-AzureRmFirewall -ResourceGroupName $RG

$Rule = New-AzureRmFirewallApplicationRule -Name R1 -Protocol "http:80","https:443" -TargetFqdn "*microsoft.com"

$RuleCollection = New-AzureRmFirewallApplicationRuleCollection -Name RC1 -Priority 100 -Rule $Rule -ActionType "Allow"

$Azfw.ApplicationRuleCollections = $RuleCollection

Set-AzureRmFirewall -AzureFirewall $Azfw

 

Resim 14

#Gerekli olan route ayarlarını gerçekleştiriyoruz.

$Azfw = Get-AzureRmFirewall -ResourceGroupName $RG

$AzfwRouteName = $RG + "AzfwRoute"

$AzfwRouteTableName = $RG + "AzfwRouteTable"

$IlbCA = $Azfw.IpConfigurations[0].PrivateIPAddress

$AzfwRoute = New-AzureRmRouteConfig -Name $AzfwRouteName -AddressPrefix 0.0.0.0/0 -NextHopType VirtualAppliance -NextHopIpAddress $IlbCA

$AzfwRouteTable = New-AzureRmRouteTable -Name $AzfwRouteTableName -ResourceGroupName $RG -location $Location -Route $AzfwRoute

 

Resim 15

#Yazmış olduğumuz route kuralını sunucuların olduğu vnet’e atama işlemini gerçekleştiriyoruz.

$vnet.Subnets[2].RouteTable = $AzfwRouteTable

Set-AzureRmVirtualNetwork -VirtualNetwork $vnet

 

Resim 16

Daha sonrasında sunucu networkümüz içerisine dahil olan sunucu üzerinde internet sayfası erişimleri kontrol ediyoruz.

Resim 17

Gördüğünüz gibi *microsoft.com alan adı hariç diğer sayfalara erişim engellenmiş durumda.

Resim 18

Bu makalemizde Azure Firewall nedir? Kurulum ve konfigürasyonunu nasıl yapılırı anlatmış olduk. Umarım faydalı bir makale olmuştır. Bir sonraki makalemizde görüşmek dileğiyle.

 

 

Exit mobile version