Aracılığıyla paylaş


PowerShell kullanarak siteden siteye VPN bağlantısıyla sanal ağ oluşturma

Bu makalede, şirket içi ağınızdan VNet'e siteden siteye VPN ağ geçidi bağlantısı oluşturmak için PowerShell'in nasıl kullanılacağı gösterilmektedir. Bu makaledeki adımlar Resource Manager dağıtım modeli için geçerlidir. Ayrıca aşağıdaki listeden farklı bir seçenek belirtip farklı bir dağıtım aracı veya dağıtım modeli kullanarak da bu yapılandırmayı oluşturabilirsiniz:

IPsec/IKE (IKEv1 veya IKEv2) VPN tüneli üzerinden şirket içi ağınızı azure sanal ağına bağlamak için siteden siteye VPN ağ geçidi bağlantısı kullanılır. Bu bağlantı türü için, şirket içinde yer alan ve kendisine atanmış dışarıya yönelik bir genel IP adresi atanmış olan bir VPN cihazı gerekir. VPN ağ geçitleri hakkında daha fazla bilgi için bkz. VPN ağ geçidi hakkında.

Siteler arası VPN Gateway şirket içi bağlantıların diyagramı.

Başlamadan önce

Yapılandırmanıza başlamadan önce aşağıdaki ölçütleri karşıladığınızı doğrulayın:

  • Uyumlu bir VPN cihazı ve bu cihazı yapılandırabilecek birinin bulunduğundan emin olun. Uyumlu VPN cihazları ve cihaz yapılandırması hakkında daha fazla bilgi için bkz.VPN Cihazları Hakkında.
  • VPN cihazınız için dışarıya dönük genel bir IPv4 adresi olduğunu doğrulayın.
  • Şirket içi ağ yapılandırmanızda bulunan IP adresi aralıklarını bilmiyorsanız, bu ayrıntıları sizin için sağlayabilecek biriyle koordine olmanız gerekir. Bu yapılandırmayı oluşturduğunuzda, Azure’un şirket içi konumunuza yönlendireceği IP adres aralığı ön eklerini oluşturmanız gerekir. Şirket içi ağınızın alt ağlarından hiçbiri, bağlanmak istediğiniz sanal ağ alt ağlarıyla çakışamaz.

Azure PowerShell

Bu makalede PowerShell cmdlet'leri kullanılır. Cmdlet'leri çalıştırmak için Azure Cloud Shell'i kullanabilirsiniz. Cloud Shell, bu makaledeki adımları çalıştırmak için kullanabileceğiniz ücretsiz bir etkileşimli kabukdur. Yaygın Azure araçları, kabuğa önceden yüklenmiştir ve kabuk, hesabınızla birlikte kullanılacak şekilde yapılandırılmıştır.

Cloud Shell'i açmak için bir kod bloğunun sağ üst köşesinden CloudShell'i Aç'ı seçmeniz gerekir. Cloud Shell'i adresine giderek https://shell.azure.com/powershellayrı bir tarayıcı sekmesinde de açabilirsiniz. Kod bloklarını kopyalamak için Kopyala'yı seçin, bunları Cloud Shell'e yapıştırın ve çalıştırmak için Enter tuşunu seçin.

Ayrıca Azure PowerShell cmdlet'lerini bilgisayarınıza yerel olarak yükleyebilir ve çalıştırabilirsiniz. PowerShell cmdlet'leri sık sık güncelleştirilir. En son sürümü yüklemediyseniz, yönergelerde belirtilen değerler başarısız olabilir. Bilgisayarınızda yüklü Azure PowerShell sürümlerini bulmak için cmdlet'ini Get-Module -ListAvailable Az kullanın. Yüklemek veya güncelleştirmek için bkz . Azure PowerShell modülünü yükleme.

Örnek değerler

Bu makaledeki örneklerde aşağıdaki değerler kullanılır. Bu değerleri kullanarak bir test ortamı oluşturabilir veya bu makaledeki örnekleri daha iyi anlamak için bunlara bakabilirsiniz.

#Example values

VnetName                = VNet1
ResourceGroup           = TestRG1
Location                = East US 
AddressSpace            = 10.1.0.0/16 
SubnetName              = Frontend 
Subnet                  = 10.1.0.0/24 
GatewaySubnet           = 10.1.255.0/27
LocalNetworkGatewayName = Site1
LNG Public IP           = <On-premises VPN device IP address> 
Local Address Prefixes  = 10.0.0.0/24, 20.0.0.0/24
Gateway Name            = VNet1GW
PublicIP                = VNet1GWPIP
Gateway IP Config       = gwipconfig1 
VPNType                 = RouteBased 
GatewayType             = Vpn 
ConnectionName          = VNet1toSite1

1. Sanal ağ ve ağ geçidi alt ağı oluşturma

Sanal ağınız yoksa bir sanal ağ oluşturun. Sanal ağ oluştururken, belirlediğiniz adres alanlarının şirket içi ağınızdaki adres alanlarından herhangi biriyle çakışmadığından emin olun.

Not

Bu VNet’in bir şirket içi konuma bağlanması için şirket içi ağ yöneticinizle bu ağ için özellikle kullanabileceğiniz bir IP adresi aralığı ayırma işlemini koordine etmeniz gerekir. VPN bağlantısının her iki tarafında da yinelenen bir adres aralığı varsa trafik beklediğiniz şekilde yönlendirilmez. Ayrıca, bu sanal ağı başka bir sanal ağa bağlamak isterseniz adres alanı diğer sanal ağ ile örtüşemez. Ağ yapılandırmanızı uygun şekilde planlamaya dikkat edin.

Ağ geçidi alt ağı hakkında

Sanal ağ geçidi, ağ geçidi alt ağı adlı belirli bir alt ağ kullanır. Ağ geçidi alt ağı, sanal ağınızı yapılandırırken belirttiğiniz sanal ağ IP adresi aralığının bir parçasıdır. Sanal ağ geçidi kaynaklarının ve hizmetlerinin kullandığı IP adreslerini içerir. Azure’ın ağ geçidi kaynaklarını dağıtması için alt ağ, 'GatewaySubnet' olarak adlandırılmalıdır. Ağ geçidi kaynaklarının dağıtılacağı farklı bir alt ağ belirtemezsiniz. 'GatewaySubnet' adlı bir alt ağınız yoksa, kendi VPN ağ geçidinizi oluştururken bu başarısız olur.

Ağ geçidi alt ağı oluştururken, alt ağın içerdiği IP adresi sayısını belirtirsiniz. Gerekli IP adresi sayısı, oluşturmak istediğiniz VPN ağ geçidi yapılandırmasına bağlıdır. Bazı yapılandırmalar için diğerlerinden daha fazla IP adresi gerekir. /27 veya /28 kullanan bir ağ geçidi alt ağı oluşturmanızı öneririz.

Adres alanının bir alt ağ ile çakıştığını veya alt ağın sanal ağınız için adres alanında bulunmadığını belirten bir hata görürseniz VNet adres aralığınızı denetleyin. Sanal ağınız için oluşturduğunuz adres aralığında yeterli IP adresi kullanılabilir olmayabilir. Örneğin, varsayılan alt ağınız tüm adres aralığını kapsıyorsa, ek alt ağlar oluşturmak için bir IP adresi kalmamıştır. IP adreslerini serbest bırakmak için mevcut adres alanında alt ağlarınızı ayarlayabilir veya ek bir adres aralığı belirtip orada ağ geçidi alt ağını oluşturabilirsiniz.

Önemli

Ağ geçidi alt ağındaki ağ güvenlik grupları (NSG) desteklenmez. Bir ağ güvenlik grubunun bu alt ağ ile ilişkilendirilmesi, sanal ağ geçidinizin (VPN ve ExpressRoute ağ geçitleri) beklendiği gibi çalışmayı durdurmasına neden olabilir. Ağ güvenlik grupları hakkında daha fazla bilgi için bkz. Ağ güvenlik grubu nedir?

Sanal ağ ve ağ geçidi alt ağı oluşturma

Bu örnekte, sanal ağ ve ağ geçidi alt ağı oluşturulur. Ağ geçidi alt ağı eklemeniz gereken bir sanal ağınız zaten varsa, bkz. Önceden oluşturduğunuz bir sanal ağa, bir ağ geçidi alt ağı eklemek için.

Kaynak grubu oluşturma:

New-AzResourceGroup -Name TestRG1 -Location 'East US'

Sanal ağınızı oluşturun.

  1. Değişkenleri ayarlayın.

    $subnet1 = New-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 10.1.255.0/27
    $subnet2 = New-AzVirtualNetworkSubnetConfig -Name 'Frontend' -AddressPrefix 10.1.0.0/24
    
  2. VNet'i oluşturun.

    New-AzVirtualNetwork -Name VNet1 -ResourceGroupName TestRG1 `
    -Location 'East US' -AddressPrefix 10.1.0.0/16 -Subnet $subnet1, $subnet2
    

Önceden oluşturduğunuz bir sanal ağa, bir ağ geçidi alt ağı eklemek için

Zaten bir sanal ağınız varsa, ancak bir ağ geçidi alt ağı eklemeniz gerekiyorsa bu bölümdeki adımları kullanın.

  1. Değişkenleri ayarlayın.

    $vnet = Get-AzVirtualNetwork -ResourceGroupName TestRG1 -Name VNet1
    
  2. Ağ geçidi alt ağını oluşturun.

    Add-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 10.1.255.0/27 -VirtualNetwork $vnet
    
  3. Yapılandırmayı ayarlayın.

    Set-AzVirtualNetwork -VirtualNetwork $vnet
    

2. Yerel ağ geçidini oluşturma

Yerel ağ geçidi (LNG) genellikle şirket içi konumunuzu ifade eder. Sanal ağ geçidiyle aynı değildir. Siteye Azure’un başvuruda bulunmak için kullanabileceği bir ad verir, ardından bağlantı oluşturacağınız şirket içi VPN cihazının IP adresini belirtirsiniz. Ayrıca, VPN ağ geçidi üzerinden VPN cihazına yönlendirilecek IP adresi ön eklerini de belirtirsiniz. Belirttiğiniz adres ön ekleri, şirket içi adresinizde yer alan ön eklerdir. Şirket içi ağınız değişirse, ön ekleri kolayca güncelleştirebilirsiniz.

Aşağıdaki örneklerden birini seçin. Örneklerde kullanılan değerler şunlardır:

  • GatewayIPAddress şirket içi VPN cihazınızın IP adresidir.
  • AddressPrefix şirket içi adres alanınızdır.

Tek adres ön eki örneği

New-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1 `
-Location 'East US' -GatewayIpAddress '23.99.221.164' -AddressPrefix '10.0.0.0/24'

Birden çok adres ön eki örneği

New-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1 `
-Location 'East US' -GatewayIpAddress '23.99.221.164' -AddressPrefix @('20.0.0.0/24','10.0.0.0/24')

3. Genel IP adresi isteme

VPN ağ geçidinin genel IP adresi olmalıdır. İlk olarak IP adresi kaynağını istemeniz, sonra sanal ağ geçidinizi oluştururken bu kaynağa başvurmanız gerekir. VPN ağ geçidi oluşturulurken, IP adresi kaynağa dinamik olarak atanır. Genel IP adresinin değişmesinin tek zamanı, ağ geçidinin silinip yeniden oluşturulmasıdır. VPN ağ geçidiniz üzerinde gerçekleştirilen yeniden boyutlandırma, sıfırlama veya diğer iç bakım/yükseltme işlemleri sırasında değişmez.

Sanal ağ VPN ağ geçidiniz için bir genel IP adresi isteyin.

$gwpip= New-AzPublicIpAddress -Name VNet1GWPIP -ResourceGroupName TestRG1 -Location 'East US' -AllocationMethod Static -Sku Standard

4. Ağ geçidi IP adresleme yapılandırmasını oluşturma

Ağ geçidi yapılandırması, kullanılacak alt ağı ('GatewaySubnet') ve genel IP adresini tanımlar. Ağ geçidi yapılandırmanızı oluşturmak için aşağıdaki örneği kullanın:

$vnet = Get-AzVirtualNetwork -Name VNet1 -ResourceGroupName TestRG1
$subnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
$gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $subnet.Id -PublicIpAddressId $gwpip.Id

5. VPN ağ geçidini oluşturma

Sanal ağ VPN ağ geçidini oluşturun. Bir ağ geçidinin oluşturulması, seçili ağ geçidi SKU’suna bağlı olarak 45 dakika veya daha uzun sürebilir. Örnekte aşağıdaki değerler kullanılır:

  • Siteden siteye yapılandırma için -GatewayType, Vpn'dir. Ağ geçidi türü her zaman uyguladığınız yapılandırmaya özgüdür. Örneğin, diğer ağ geçidi yapılandırmaları -GatewayType ExpressRoute gerektirebilir.
  • -VpnType, RouteBased (bazı belgelerde Dinamik Ağ Geçidi olarak adlandırılır) veya PolicyBased (bazı belgelerde Statik Ağ Geçidi olarak adlandırılır) olabilir. VPN ağ geçidi türleri hakkında daha fazla bilgi için bkz. VPN Gateway Hakkında.
  • Kullanmak istediğiniz Ağ Geçidi SKU'sunu seçin. Bazı SKU’larda yapılandırma sınırlamaları vardır. Daha fazla bilgi için bkz. Ağ geçidi SKU'ları. VPN ağ geçidini oluştururken -GatewaySku ile ilgili bir hata alırsanız, PowerShell cmdlet'lerinin en son sürümünü yüklediğinizi doğrulayın.
New-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroupName TestRG1 `
-Location 'East US' -IpConfigurations $gwipconfig -GatewayType Vpn `
-VpnType RouteBased -GatewaySku VpnGw2

6. VPN cihazınızı yapılandırma

Şirket içi ağa siteden siteye bağlantılar bir VPN cihazı gerektirir. Bu adımda VPN cihazınızı yapılandıracaksınız. VPN cihazınızı yapılandırırken aşağıdaki öğelere ihtiyacınız vardır:

  • Paylaşılan bir anahtar. Bu, siteden siteye VPN bağlantınızı oluştururken belirttiğiniz paylaşılan anahtarla aynıdır. Bu örneklerde temel bir paylaşılan anahtar kullanılır. Kullanmak için daha karmaşık bir anahtar oluşturmanız önerilir.

  • Sanal ağ geçidinizin genel IP adresi. Azure Portal, PowerShell veya CLI kullanarak genel IP adresini görüntüleyebilirsiniz. PowerShell kullanarak sanal ağ geçidinizin genel IP adresini bulmak için aşağıdaki örneği kullanın. Bu örnekte VNet1GWPIP, önceki bir adımda oluşturduğunuz genel IP adresi kaynağının adıdır.

    Get-AzPublicIpAddress -Name VNet1GWPIP -ResourceGroupName TestRG1
    

Sahip olduğunuz VPN cihazına bağlı olarak bir VPN cihazı yapılandırma betiği indirebilirsiniz. Daha fazla bilgi için bkz. VPN cihazı yapılandırma betiklerini indirme.

Aşağıdaki bağlantılar daha fazla yapılandırma bilgisi sağlar:

7. VPN bağlantısını oluşturma

Ardından sanal ağ geçidinizle VPN cihazınız arasında siteden siteye VPN bağlantısını oluşturun. Değerlerin kendinizinkilerle değiştirildiğinden emin olun. Paylaşılan anahtar, VPN cihazınızın yapılandırması için kullandığınız değerin aynısı olmalıdır. Siteden siteye için '-ConnectionType' öğesinin IPsec olduğuna dikkat edin.

  1. Değişkenleri ayarlayın.

    $gateway1 = Get-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroupName TestRG1
    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. Bağlantıyı oluşturun.

    New-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1 `
    -Location 'East US' -VirtualNetworkGateway1 $gateway1 -LocalNetworkGateway2 $local `
    -ConnectionType IPsec -SharedKey 'abc123'
    

Kısa bir süre içerisinde bağlantı kurulur.

8. VPN bağlantısını doğrulama

VPN bağlantınızı doğrulamanın birkaç farklı yolu vardır.

'-Debug' ile veya '-Debug' olmadan 'Get-AzVirtualNetworkGatewayConnection' cmdlet'ini kullanarak bağlantınızın başarılı olduğunu doğrulayabilirsiniz.

  1. Aşağıdaki cmdlet örneğini kullanın ve değerleri, kendi değerlerinizle eşleşecek şekilde yapılandırın. İstendiğinde "Tümünü" çalıştırmak için "A" seçeneğini belirleyin. Örnekte bulunan "-Name", test etmek istediğiniz bağlantının adıdır.

    Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1
    
  2. cmdlet tamamlandıktan sonra değerleri görüntüleyin. Aşağıdaki örnekte, bağlantı durumu "Bağlandı" olarak gösterilir; ayrıca giriş ve çıkış baytlarını görebilirsiniz.

    "connectionStatus": "Connected",
    "ingressBytesTransferred": 33509044,
    "egressBytesTransferred": 4142431
    

Sanal makineye bağlanma

SANAL makinenize uzak masaüstü bağlantısı oluşturarak sanal ağınıza dağıtılan bir VM'ye bağlanabilirsiniz. Sanal makinenize bağlanabildiğinizi doğrulamanın en iyi yolu, bilgisayar yerine özel IP adresini kullanarak bağlantı kurmaktır. Bu şekilde, ad çözümlemenin düzgün yapılandırılıp yapılandırılmadığını değil bağlanıp bağlanamayacağınızı test edersiniz.

  1. Özel IP adresini bulun. Azure portalında VM'nin özelliklerine bakarak veya PowerShell kullanarak vm'nin özel IP adresini bulabilirsiniz.

    • Azure portalı: Azure portalında VM'nizi bulun. VM’nin özelliklerini görüntüleyin. Özel IP adresi listelenir.

    • PowerShell: Örneği kullanarak kaynak gruplarınızdaki VM'lerin ve özel IP adreslerinin listesini görüntüleyin. Bu örneği kullanmadan önce değiştirmeniz gerekmez.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. Sanal ağınıza bağlı olduğunuzu doğrulayın.

  3. Görev çubuğundaki arama kutusuna RDP veya Uzak Masaüstü Bağlantısı girerek Uzak Masaüstü Bağlantısı'nı açın. Ardından Uzak Masaüstü Bağlantısı'nı seçin. PowerShell'de komutunu kullanarak Uzak Masaüstü Bağlantısı'nı mstsc da açabilirsiniz.

  4. Uzak Masaüstü Bağlantısı'nda VM'nin özel IP adresini girin. Diğer ayarları yapmak ve ardından bağlanmak için Seçenekleri Göster'i seçebilirsiniz.

VPN bağlantınız üzerinden bir VM'ye bağlanırken sorun yaşıyorsanız aşağıdaki noktaları denetleyin:

  • VPN bağlantınızın başarılı olduğunu doğrulayın.
  • VM'nin özel IP adresine bağlandığınızı doğrulayın.
  • Sanal makineye bilgisayar adını değil özel IP adresini kullanarak bağlanabiliyorsanız, DNS'yi doğru yapılandırdığınızdan emin olun. VM'lerde ad çözümlemenin nasıl çalıştığı hakkında daha fazla bilgi için bkz . VM'ler için ad çözümlemesi.

RDP bağlantıları hakkında daha fazla bilgi için bkz. Bir VM ile Uzak Masaüstü bağlantılarında sorun giderme.

Yerel bir ağ geçidinin IP adresi ön eklerini değiştirmek için

Şirket içi konumunuza yönlendirilmesini istediğiniz IP adresi ön ekleri değişirse, yerel ağ geçidini değiştirebilirsiniz. Bu örnekleri kullanırken, değerleri ortamınızla eşleşecek şekilde değiştirin.

Başka adres ön ekleri eklemek için:

  1. LocalNetworkGateway için değişkeni ayarlayın.

    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. Ön ekleri değiştirin. Belirttiğiniz değerler önceki değerlerin üzerine yazılır.

    Set-AzLocalNetworkGateway -LocalNetworkGateway $local `
    -AddressPrefix @('10.101.0.0/24','10.101.1.0/24','10.101.2.0/24')
    

Adres ön eklerini kaldırmak için:

Artık gereği olmayan önekleri bırakın. Bu örnekte artık 10.101.2.0/24 ön ekini (önceki örnekten) gerektirmediğinden, yerel ağ geçidini güncelleştirip bu ön eki hariç tutacağız.

  1. LocalNetworkGateway için değişkeni ayarlayın.

    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. Ağ geçidini güncelleştirilmiş ön eklerle ayarlayın.

    Set-AzLocalNetworkGateway -LocalNetworkGateway $local `
    -AddressPrefix @('10.101.0.0/24','10.101.1.0/24')
    

Yerel bir ağ geçidi için ağ geçidi IP adresini değiştirme

Bağlanmak istediğiniz VPN cihazının genel IP adresi değiştiyse, yerel ağ geçidini bu değişikliği yansıtacak şekilde değiştirmeniz gerekir. Bu değeri değiştirirken aynı zamanda adres ön eklerini de değiştirebilirsiniz. Geçerli ayarların üzerine yazmak için yerel ağ geçidinizin mevcut adını kullandığınızdan emin olun. Farklı bir ad kullanırsanız mevcut olanın üzerine yazmak yerine yeni bir yerel ağ geçidi oluşturursunuz.

New-AzLocalNetworkGateway -Name Site1 `
-Location "East US" -AddressPrefix @('10.101.0.0/24','10.101.1.0/24') `
-GatewayIpAddress "5.4.3.2" -ResourceGroupName TestRG1

Ağ geçidi bağlantısını silmek için

Bağlantınızın adını bilmiyorsanız , 'Get-AzVirtualNetworkGatewayConnection' cmdlet'ini kullanarak bulabilirsiniz.

Remove-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 `
-ResourceGroupName TestRG1

Sonraki adımlar