azure CLI kullanarak MySQL için Azure Veritabanı için güvenlik duvarı kurallarını yönetme - Esnek Sunucu

ŞUNLAR IÇIN GEÇERLIDIR: MySQL için Azure Veritabanı - Esnek Sunucu

MySQL için Azure Veritabanı esnek sunucu, esnek sunucunuza bağlanmak için birbirini dışlayan iki ağ bağlantısı yöntemini destekler. Bu iki seçenek şunlardır:

  • Genel erişim (izin verilen IP adresleri)
  • Özel erişim (Sanal Ağ Tümleştirmesi)

Bu makalede, Azure CLI kullanarak Genel erişime (izin verilen IP adresleri) sahip MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturmaya odaklanacağız. Bu makalede, sunucu oluşturduktan sonra güvenlik duvarı kuralları oluşturmak, güncelleştirmek, silmek, listelemek ve göstermek için kullanabileceğiniz Azure CLI komutlarına genel bir bakış sağlanır. Genel erişim (izin verilen IP adresleri) ile MySQL için Azure Veritabanı esnek sunucu örneğine bağlantılar yalnızca izin verilen IP adresleriyle kısıtlanır. güvenlik duvarı kurallarında istemci IP adreslerine izin verilmelidir. Bu konuda daha fazla bilgi edinmek için Genel erişim (izin verilen IP adresleri) bölümüne bakın. Güvenlik duvarı kuralları sunucu oluşturma sırasında tanımlanabilir (önerilir) ancak daha sonra da eklenebilir.

Azure Cloud Shell'i başlatma

Azure 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 kod bloğunun sağ üst köşesinden Deneyin'i seçmeniz yeterlidir. Cloud Shell'i adresine giderek https://shell.azure.com/bashayrı bir tarayıcı sekmesinde de açabilirsiniz. Kod bloklarını kopyalamak için Kopyala'yı seçin, Cloud Shell'e yapıştırın ve çalıştırmak için Enter tuşuna basın.

CLI'yi yerel olarak yükleyip kullanmayı tercih ediyorsanız, bu hızlı başlangıç için Azure CLI sürüm 2.0 veya üzeri gerekir. Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.

Önkoşullar

az login komutunu kullanarak hesabınızda oturum açmanız gerekir. Azure hesabınızın Abonelik Kimliği'ne başvuran ID özelliğine dikkat edin.

az login

az account set komutunu kullanarak hesabınızın altındaki belirli aboneliği seçin. komuttaki abonelik bağımsız değişkeninin değeri olarak kullanılacak az login çıkışındaki kimlik değerini not edin. Birden fazla aboneliğiniz varsa kaynağın faturalanacağı uygun aboneliği seçin. Tüm aboneliklerinizi almak için az account list komutunu kullanın.

az account set --subscription <subscription id>

Azure CLI kullanarak esnek sunucu sırasında güvenlik duvarı kuralı oluşturma

Komutunu kullanarak az mysql flexible-server --public access Genel erişim (izin verilen IP adresleri) ile MySQL için Azure Veritabanı esnek sunucu örneği oluşturabilir ve sunucuyu oluştururken güvenlik duvarı kurallarını yapılandırabilirsiniz. Sunucuya bağlanabilen izin verilen IP adreslerini sağlamak için --public-access anahtarını kullanabilirsiniz. İzin verilen IP'ler listesine dahil edilecek tek ip adresi veya aralığı sağlayabilirsiniz. IP adresi aralığı kesik çizgiyle ayrılmış olmalıdır ve boşluk içermez. Aşağıdaki örneklerde gösterildiği gibi Azure CLI kullanarak MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturmak için çeşitli seçenekler vardır.

Yapılandırılabilir CLI parametrelerinin tam listesi için Azure CLI başvuru belgelerine bakın . Örneğin, aşağıdaki komutlarda isteğe bağlı olarak kaynak grubunu belirtebilirsiniz.

  • Genel erişimle MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturun ve sunucuya erişimi olması için istemci IP adresini ekleyin.

    az mysql flexible-server create --public-access <my_client_ip>
    
  • Genel erişimle MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturun ve bu sunucuya erişmek için IP adresi aralığını ekleyin.

    az mysql flexible-server create --public-access <start_ip_address-end_ip_address>
    
  • Genel erişimle MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturun ve Azure IP adreslerinden uygulamaların sunucunuza bağlanmasına izin verin.

    az mysql flexible-server create --public-access 0.0.0.0
    

    Önemli

    Bu seçenek, güvenlik duvarını, diğer müşterilerin aboneliklerinden gelen bağlantılar da dahil olmak üzere Azure'ın içindeki Azure hizmetlerinden ve kaynaklarından bu sunucuya genel erişime izin verecek şekilde yapılandırmaktadır. Bu seçeneği belirtirken oturum açma ve kullanıcı izinlerinizin erişimi yalnızca yetkili kullanıcılarla sınırladığından emin olun.

  • Genel erişime sahip MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturun ve tüm IP adreslerine izin verin.

    az mysql flexible-server create --public-access all
    

    Not

    Yukarıdaki komut, başlangıç IP adresi=0.0.0.0, bitiş IP adresi=255.255.255.255 olan bir güvenlik duvarı kuralı oluşturur ve hiçbir IP adresi engellenmez. İnternet'te herhangi bir konak bu sunucuya erişebilir. Bu kuralın yalnızca geçici olarak ve yalnızca hassas veri içermeyen test sunucularında kullanılması kesinlikle önerilir.

  • Genel erişime sahip ve IP adresi olmayan MySQL için Azure Veritabanı esnek bir sunucu örneği oluşturun.

    az mysql flexible-server create --public-access none
    

    Not

    Herhangi bir güvenlik duvarı kuralı olmadan sunucu oluşturmanızı önermeyiz. Herhangi bir güvenlik duvarı kuralı eklemezseniz, hiçbir istemci sunucuya bağlanamaz.

Sunucu oluşturulduktan sonra güvenlik duvarı kuralı oluşturma ve yönetme

Az mysql flexible-server firewall-rule komutu Azure CLI'dan güvenlik duvarı kuralları oluşturmak, silmek, listelemek, göstermek ve güncelleştirmek için kullanılır.

Komutlar:

  • create: MySQL için Azure Veritabanı esnek sunucu güvenlik duvarı kuralı oluşturun.
  • list: MySQL için Azure Veritabanı esnek sunucu güvenlik duvarı kurallarını listeleyin.
  • güncelleştirme: MySQL için Azure Veritabanı esnek sunucu güvenlik duvarı kuralını güncelleştirin.
  • show: MySQL için Azure Veritabanı esnek sunucu güvenlik duvarı kuralının ayrıntılarını gösterir.
  • delete: MySQL için Azure Veritabanı esnek sunucu güvenlik duvarı kuralını silin.

Yapılandırılabilir CLI parametrelerinin tam listesi için Azure CLI başvuru belgelerine bakın . Örneğin, aşağıdaki komutlarda isteğe bağlı olarak kaynak grubunu belirtebilirsiniz.

Güvenlik duvarı kuralı oluşturma

az mysql flexible-server firewall-rule create Sunucuda yeni güvenlik duvarı kuralı oluşturmak için komutunu kullanın. Bir IP adresi aralığına erişime izin vermek için, bu örnekte olduğu gibi IP adresini Başlangıç ve Bitiş IP adresleri olarak belirtin.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.15

Tek bir IP adresine erişime izin vermek için, bu örnekte olduğu gibi tek bir IP adresi sağlayın.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 1.1.1.1

Azure IP adreslerindeki uygulamaların MySQL için Azure Veritabanı esnek sunucu örneğine bağlanmasına izin vermek için, bu örnekte olduğu gibi Başlangıç IP'si olarak 0.0.0.0 IP adresini sağlayın.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 0.0.0.0

Önemli

Bu seçenek, güvenlik duvarını, diğer müşterilerin aboneliklerinden gelen bağlantılar da dahil olmak üzere Azure'ın içindeki Azure hizmetlerinden ve kaynaklarından bu sunucuya genel erişime izin verecek şekilde yapılandırmaktadır. Bu seçeneği belirlerken, oturum açma ve kullanıcı izinlerinizin erişimi yalnızca yetkili kullanıcılarla sınırladığından emin olun.

Başarılı olduğunda, her oluşturma komutu çıkışı JSON biçiminde oluşturduğunuz güvenlik duvarı kuralının ayrıntılarını listeler (varsayılan olarak). Bir hata varsa, sonuç bunun yerine bir hata iletisi metni gösterir.

Güvenlik duvarı kurallarını listeleme

Komutu kullanarak az mysql flexible-server firewall-rule list sunucudaki mevcut sunucu güvenlik duvarı kurallarını listeleyin. Sunucu adı özniteliğinin --name anahtarında belirtildiğine dikkat edin.

az mysql flexible-server firewall-rule list --name mydemoserver

Çıkış, varsa kuralları JSON biçiminde (varsayılan olarak) listeler. Sonuçları daha okunabilir bir tablo biçiminde çıkarmak için --output tablo anahtarını kullanabilirsiniz.

az mysql flexible-server firewall-rule list --name mydemoserver --output table

Güvenlik duvarı kuralını güncelleştirme

az mysql flexible-server firewall-rule update Sunucuda var olan bir güvenlik duvarı kuralını güncelleştirmek için komutunu kullanın. Giriş olarak mevcut güvenlik duvarı kuralının adını ve güncelleştirilecek başlangıç IP adresi ve bitiş IP adresi özniteliklerini belirtin.

az mysql flexible-server firewall-rule update --name mydemoserver --rule-name FirewallRule1 --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.1

Başarılı olduğunda, komut çıkışı JSON biçiminde güncelleştirdiğiniz güvenlik duvarı kuralının ayrıntılarını listeler (varsayılan olarak). Bir hata varsa, çıkış bunun yerine bir hata iletisi metni gösterir.

Not

Güvenlik duvarı kuralı yoksa, update komutu kuralı oluşturur.

Güvenlik duvarı kuralı ayrıntılarını göster

Sunucudan az mysql flexible-server firewall-rule show mevcut güvenlik duvarı kuralı ayrıntılarını göstermek için komutunu kullanın. Giriş olarak mevcut güvenlik duvarı kuralının adını belirtin.

az mysql flexible-server firewall-rule show --name mydemoserver --rule-name FirewallRule1

Başarılı olduğunda, komut çıkışı JSON biçiminde belirttiğiniz güvenlik duvarı kuralının ayrıntılarını listeler (varsayılan olarak). Bir hata varsa, çıkış bunun yerine bir hata iletisi metni gösterir.

Güvenlik duvarı kuralını silme

az mysql flexible-server firewall-rule delete Var olan bir güvenlik duvarı kuralını sunucudan silmek için komutunu kullanın. Geçerli güvenlik duvarı kuralının adını belirtin.

az mysql flexible-server firewall-rule delete --name mydemoserver --rule-name FirewallRule1

Başarılı olduğunda çıkış olmaz. Hata durumunda bir hata iletisi metni görüntülenir.

Sonraki adımlar