Azure Arc özellikli sunucular güvenliğine genel bakış

Bu makalede, kuruluşunuzda Azure Arc özellikli sunucuları dağıtmadan önce değerlendirmeniz gereken güvenlik yapılandırması ve dikkat edilmesi gerekenler açıklanmaktadır.

Kimlik ve erişim denetimi

Azure rol tabanlı erişim denetimi , Azure Arc özellikli sunucunuzu hangi hesapların görebileceğini ve yönetebileceğini denetlemek için kullanılır. Azure portalındaki Erişim Denetimi (IAM) sayfasından Azure Arc özellikli sunucunuza kimlerin erişimi olduğunu doğrulayabilirsiniz.

Azure Arc-enabled server access control

Kaynağa katkıda bulunan veya yönetici rolü erişimi verilen kullanıcılar ve uygulamalar, makinedeki uzantıları dağıtma veya silme de dahil olmak üzere kaynakta değişiklik yapabilir. Uzantılar ayrıcalıklı bir bağlamda çalışan rastgele betikler içerebilir, bu nedenle Azure kaynağındaki katkıda bulunanları sunucunun dolaylı yöneticisi olarak değerlendirin.

Azure Bağlan makine ekleme rolü, büyük ölçekli ekleme için kullanılabilir ve yalnızca Azure'da yeni Azure Arc özellikli sunucuları okuyabilir veya oluşturabilir. Zaten kayıtlı sunucuları silmek veya uzantıları yönetmek için kullanılamaz. En iyi yöntem olarak, bu rolü yalnızca uygun ölçekte makineleri eklemek için kullanılan Microsoft Entra hizmet sorumlusuna atamanızı öneririz.

Azure Bağlan Ed Machine Resource Yönetici istrator rolünün üyesi olan kullanıcılar bir makineyi okuyabilir, değiştirebilir, yeniden ekleyebilir ve silebilir. Bu rol, Azure Arc özellikli sunucuların yönetimini desteklemek için tasarlanmıştır, ancak kaynak grubu veya abonelikteki diğer kaynakları desteklemez.

Aracı güvenliği ve izinleri

Windows'da Azure Bağlan ed Machine aracısını (azcmagent) yönetmek için kullanıcı hesabınızın yerel Yönetici istrators grubunun üyesi olması gerekir. Linux'ta kök erişim izinlerine sahip olmanız gerekir.

Azure Bağlan ed Machine aracısı, makinenizde çalışan üç hizmetlerden oluşur.

  • Karma Örnek Meta Veri Hizmeti (himds) hizmeti Arc'ın tüm temel işlevlerinden sorumludur. Bu, Azure'a sinyal göndermeyi, makinenin Azure kaynak kimliği hakkında bilgi edinmek için diğer uygulamalar için yerel bir örnek meta veri hizmetini kullanıma sunmayı ve diğer Azure hizmetlerinde kimlik doğrulaması yapmak için Microsoft Entra belirteçlerini almayı içerir. Bu hizmet, Windows üzerinde ayrıcalıksız bir sanal hizmet hesabı (NT SERVICE\himds) ve Linux üzerinde himds kullanıcısı olarak çalışır. Sanal hizmet hesabı, Doğrudan Windows'ta Hizmet Olarak Oturum Aç'a ihtiyaç duyar.

  • Konuk Yapılandırma hizmeti (GCService), makinedeki Azure İlkesi değerlendirmekle sorumludur.

  • Konuk Yapılandırma Uzantısı hizmeti (ExtensionService), makineye uzantıları (aracılar, betikler veya diğer yazılımlar) yüklemekten, yükseltmekten ve silmekten sorumludur.

Konuk yapılandırma ve uzantı hizmetleri, Windows'da Yerel Sistem olarak ve Linux'ta kök olarak çalışır.

Yerel aracı güvenlik denetimleri

Aracı sürüm 1.16'dan başlayarak, isteğe bağlı olarak sunucunuza yüklenebilen uzantıları sınırlayabilir ve Konuk Yapılandırması'nı devre dışı bırakabilirsiniz. Bu denetimler, sunucularda diğer yönetim özelliklerinin kullanılmasına izin vermeden olay günlüklerini toplama gibi tek bir amaç için sunucuları Azure'a bağlarken yararlı olabilir.

Bu güvenlik denetimleri yalnızca sunucuda bir komut çalıştırılarak yapılandırılabilir ve Azure'dan değiştirilemez. Bu yaklaşım, Azure Arc ile uzaktan yönetim senaryolarını etkinleştirirken sunucu yöneticisinin amacını korur, ancak daha sonra değiştirmeye karar verirseniz ayarı değiştirmenin daha zor olduğu anlamına gelir. Bu özellik hassas sunucular (örneğin, Active Directory Etki Alanı Denetleyicileri, ödeme verilerini işleyen sunucular ve katı değişiklik denetimi önlemlerine tabi sunucular) için tasarlanmıştır. Diğer çoğu durumda, bu ayarların değiştirilmesi gerekmez.

Uzantı izin verilenler ve blok listeleri

Sunucunuza hangi uzantıların yüklenebileceğini sınırlamak için, sunucuda izin vermek ve engellemek istediğiniz uzantıların listelerini yapılandırabilirsiniz. Uzantı yöneticisi, uzantının sunucuya yüklenip yüklenmediğini belirlemek için uzantı yükleme, güncelleştirme veya yükseltme isteklerini izin verilenler listesine ve blok listesine göre değerlendirir. Silme isteklerine her zaman izin verilir.

En güvenli seçenek, yüklenmesini beklediğiniz uzantılara açıkça izin vermektir. İzin verilenler listesinde olmayan tüm uzantılar otomatik olarak engellenir. Azure Bağlan ed Machine aracısını yalnızca Linux için Azure İzleyici Aracısı'na izin verecek şekilde yapılandırmak için her sunucuda aşağıdaki komutu çalıştırın:

azcmagent config set extensions.allowlist "Microsoft.Azure.Monitor/AzureMonitorLinuxAgent"

Bir veya daha fazla uzantıyı blok listesine ekleyerek engelleyebilirsiniz. Uzantı hem izin verilenler listesinde hem de blok listesinde mevcutsa engellenir. Linux için Özel Betik uzantısını engellemek için aşağıdaki komutu çalıştırın:

azcmagent config set extensions.blocklist "Microsoft.Azure.Extensions/CustomScript"

Uzantıları yayımcısı ve türüyle, eğik çizgiyle /ayırarak belirtin. Belgelerdeki en yaygın uzantıların listesine bakın veya portalda, Azure PowerShell'de veya Azure CLI'da sunucunuzda zaten yüklü olan VM uzantılarını listeleyin.

Tabloda, allowlist veya blocklist yapılandırılmış bir aracıya yönelik bir uzantı işlemi gerçekleştirirken oluşan davranış açıklanır.

İşlem İzin verilenler listesinde Blok listesinde hem izin verilenler listesinde hem de blok listesinde Hiçbir listede yok, ancak izin verilenler listesi yapılandırıldı
Uzantıyı yükleme İzin Verilir Engellendi Engellendi Engellendi
Uzantıyı güncelleştirme (yeniden yapılandırma) İzin Verilir Engellendi Engellendi Engellendi
Uzantıyı yükseltme İzin Verilir Engellendi Engellendi Engellendi
Uzantıyı silme İzin Verilir İzin Verilir İzin Verilir İzin Verilir

Önemli

Bir uzantı, izin verilenler listesi veya blok listesi yapılandırmadan önce sunucunuzda zaten yüklüyse, uzantı otomatik olarak kaldırılmaz. Uzantıyı makineden tamamen kaldırmak için Uzantıyı Azure'dan silmek sizin sorumluluğunuzdadır. Silme istekleri bu senaryoya uyum sağlamak için her zaman kabul edilir. Silindikten sonra, izin verilenler listesi ve blok listesi gelecekteki yükleme girişimlerine izin verilip verilmeyeceğini belirler.

Aracı sürüm 1.35'den başlayarak, uzantı yöneticisine çalıştırılmasını bildirir, ancak uzantıların yüklenmesine izin vermez özel bir izin verilenler listesi değeri Allow/Nonevardır. Bu, azure arc kullanarak başka uzantılar kullanmayı planlamadan Windows Server 2012 Genişletilmiş Güvenlik Güncelleştirmeler (ESU) sunarken önerilen yapılandırmadır.

azcmagent config set extensions.allowlist "Allow/None"

Konuk Yapılandırmasını etkinleştirme veya devre dışı bırakma

Azure İlkesi Konuk Yapılandırması özelliği, Azure'dan sunucunuzdaki ayarları denetlemenize ve yapılandırmanıza olanak tanır. Aşağıdaki komutu çalıştırarak bu işleve izin vermek istemiyorsanız, Konuk Yapılandırması'nın sunucunuzda çalışmasını devre dışı bırakabilirsiniz:

azcmagent config set guestconfiguration.enabled false

Konuk Yapılandırması devre dışı bırakıldığında, Azure'da makineye atanan tüm Konuk Yapılandırma ilkeleri uyumsuz olarak gösterilir. Bu makinelerin uyumsuz olarak bildirilmesini istemiyorsanız, bu makineler için bir muafiyet oluşturmayı veya ilke atamalarınızın kapsamını değiştirmeyi göz önünde bulundurun.

Uzantı yöneticisini etkinleştirme veya devre dışı bırakma

Uzantı yöneticisi, sunucunuzdaki VM Uzantılarını yüklemek, güncelleştirmek ve kaldırmakla sorumludur. Sunucunuzdaki uzantıların yönetilmesini önlemek için uzantı yöneticisini devre dışı bırakabilirsiniz, ancak daha ayrıntılı denetim için bunun yerine izin verilenler ve engelleme listelerini kullanmanızı öneririz.

azcmagent config set extensions.enabled false

Uzantı yöneticisinin devre dışı bırakılması, sunucunuzda zaten yüklü olan uzantıları kaldırmaz. Log Analytics Aracısı gibi kendi Windows veya Linux hizmetlerinde barındırılan uzantılar, uzantı yöneticisi devre dışı bırakıldığında bile çalışmaya devam edebilir. Uzantı yöneticisi tarafından barındırılan Azure İzleyici Aracısı gibi diğer uzantılar, uzantı yöneticisi devre dışı bırakılırsa çalışmaz. Sunucuda hiçbir uzantının çalışmaya devam etmediğinden emin olmak için uzantı yöneticisini devre dışı bırakmadan önce uzantıları kaldırmanız gerekir.

Kilitli makine en iyi yöntemleri

Azure Bağlan ed Machine aracısını azaltılmış bir özellik kümesiyle yapılandırırken, birinin bu kısıtlamaları kaldırmak ve uygun denetimleri uygulamak için kullanabileceği mekanizmaları göz önünde bulundurmak önemlidir. Sunucuda yönetici veya kök kullanıcı olarak komut çalıştırabilen herkes Azure Bağlan Makine aracısı yapılandırmasını değiştirebilir. Uzantılar ve konuk yapılandırma ilkeleri sunucunuzda ayrıcalıklı bağlamlarda yürütülür ve bu nedenle aracı yapılandırmasını değiştirebilir. Aracıyı kilitlemek için yerel aracı güvenlik denetimleri uygularsanız, Microsoft aracı yapılandırmasını yalnızca yerel sunucu yöneticilerinin güncelleştirebildiğinden emin olmak için aşağıdaki en iyi yöntemleri önerir:

  • Mümkün olduğunda blok listeleri yerine uzantılar için izin verilenler listesini kullanın.
  • Aracı yapılandırmasını değiştirebilecek rastgele betiklerin yürütülmesini önlemek için uzantı izin listesine Özel Betik Uzantısını eklemeyin.
  • Aracı yapılandırmasını değiştirebilecek özel Konuk Yapılandırması ilkelerinin kullanılmasını önlemek için Konuk Yapılandırması'nı devre dışı bırakın.

İzleme ve güvenlik senaryoları için örnek yapılandırma

Azure İzleyici ve Microsoft Sentinel ile sunucularınızı izlemek ve Bulut için Microsoft Defender ile bunların güvenliğini sağlamak için Azure Arc'ı kullanmak yaygın bir uygulamadır. Bu bölüm, aracıyı yalnızca izleme ve güvenlik senaryolarını destekleyecek şekilde kilitlemeye yönelik örnekler içerir.

Yalnızca Azure İzleyici Aracısı

Windows sunucularınızda, yükseltilmiş bir komut konsolunda aşağıdaki komutları çalıştırın:

azcmagent config set extensions.allowlist "Microsoft.Azure.Monitor/AzureMonitorWindowsAgent"
azcmagent config set guestconfiguration.enabled false

Linux sunucularınızda aşağıdaki komutları çalıştırın:

sudo azcmagent config set extensions.allowlist "Microsoft.Azure.Monitor/AzureMonitorLinuxAgent"
sudo azcmagent config set guestconfiguration.enabled false

Yalnızca Log Analytics ve bağımlılık (Azure İzleyici VM Analizler)

Bu yapılandırma, eski Log Analytics aracıları ve bağımlılık aracısı içindir.

Windows sunucularınızda, yükseltilmiş bir konsolda aşağıdaki komutları çalıştırın:

azcmagent config set extensions.allowlist "Microsoft.EnterpriseCloud.Monitoring/MicrosoftMonitoringAgent,Microsoft.Azure.Monitoring.DependencyAgent/DependencyAgentWindows"
azcmagent config set guestconfiguration.enabled false

Linux sunucularınızda aşağıdaki komutları çalıştırın:

sudo azcmagent config set extensions.allowlist "Microsoft.EnterpriseCloud.Monitoring/OMSAgentForLinux,Microsoft.Azure.Monitoring.DependencyAgent/DependencyAgentLinux"
sudo azcmagent config set guestconfiguration.enabled false

İzleme ve güvenlik

Bulut için Microsoft Defender, sunucunuzdaki güvenlik açığı bulunan yazılımları belirlemek ve Uç Nokta için Microsoft Defender (yapılandırıldıysa) etkinleştirmek için sunucunuza uzantılar dağıtır. Bulut için Microsoft Defender, mevzuat uyumluluğu özelliği için Konuk Yapılandırması'ni da kullanır. Aracı sınırlamalarını geri almak için özel bir Konuk Yapılandırması ataması kullanılabildiğinden, mevzuat uyumluluğu özelliğine ihtiyacınız olup olmadığını ve bunun sonucunda konuk yapılandırmasının makinede etkinleştirilmesi gerekip gerekmediğini dikkatlice değerlendirmeniz gerekir.

Windows sunucularınızda, yükseltilmiş bir komut konsolunda aşağıdaki komutları çalıştırın:

azcmagent config set extensions.allowlist "Microsoft.EnterpriseCloud.Monitoring/MicrosoftMonitoringAgent,Qualys/WindowsAgent.AzureSecurityCenter,Microsoft.Azure.AzureDefenderForServers/MDE.Windows,Microsoft.Azure.AzureDefenderForSQL/AdvancedThreatProtection.Windows"
azcmagent config set guestconfiguration.enabled true

Linux sunucularınızda aşağıdaki komutları çalıştırın:

sudo azcmagent config set extensions.allowlist "Microsoft.EnterpriseCloud.Monitoring/OMSAgentForLinux,Qualys/LinuxAgent.AzureSecurityCenter,Microsoft.Azure.AzureDefenderForServers/MDE.Linux"
sudo azcmagent config set guestconfiguration.enabled true

Aracı modları

İzleme ve güvenlik senaryoları için yerel güvenlik denetimlerini yapılandırmanın daha basit bir yolu, aracı sürüm 1.18 ve daha yeni sürümlerle kullanılabilen izleme modunu kullanmaktır. Modlar, Uzantı izin verilenler listesinin ve Microsoft tarafından tutulan konuk yapılandırma aracısının önceden tanımlanmış yapılandırmalarıdır. İzleme senaryolarını etkinleştiren yeni uzantılar kullanıma sunulduktan sonra Microsoft, izin verilenler listesini ve aracı yapılandırmasını yeni işlevselliği uygun şekilde içerecek veya hariç tutacak şekilde güncelleştirecektir.

Aralarından seçim yapabileceğiniz iki mod vardır:

  1. full - varsayılan mod. Bu, tüm aracı işlevlerine izin verir.
  2. monitor - konuk yapılandırma ilkesi aracısını devre dışı bırakabilen ve yalnızca izleme ve güvenlikle ilgili uzantıların kullanılmasına izin veren kısıtlı mod.

İzleme modunu etkinleştirmek için aşağıdaki komutu çalıştırın:

azcmagent config set config.mode monitor

Aracının ve izin verilen uzantıların geçerli modunu aşağıdaki komutla kontrol edebilirsiniz:

azcmagent config list

İzleme modundayken uzantı izin verilenler listesini veya blok listesini değiştiremezsiniz. Her iki listeyi de değiştirmeniz gerekiyorsa aracıyı yeniden tam moda döndürerek kendi izin verilenler listenizi ve blok listenizi belirtin.

Aracıyı yeniden tam moda döndürmek için aşağıdaki komutu çalıştırın:

azcmagent config set config.mode full

Azure Arc özellikli sunucularla yönetilen kimlik kullanma

Varsayılan olarak Arc tarafından kullanılan Microsoft Entra sistem tarafından atanan kimlik yalnızca Azure'da Azure Arc özellikli sunucunun durumunu güncelleştirmek için kullanılabilir. Örneğin, son görülen sinyal durumu. Sunucunuzdaki bir uygulama diğer Azure hizmetlerine erişmek için sistem tarafından atanan kimliği kullanıyorsa isteğe bağlı olarak kimliğe başka roller atayabilirsiniz. Azure kaynaklarına erişmek için sistem tarafından atanan yönetilen kimliği yapılandırma hakkında daha fazla bilgi edinmek için bkz . Azure Arc özellikli sunucularla Azure kaynaklarında kimlik doğrulaması.

Karma Örnek Meta Veri Hizmeti'ne makinede çalışan herhangi bir uygulama tarafından erişilebilir ancak sistem tarafından atanan kimlik için yalnızca yetkili uygulamalar Microsoft Entra belirtecini isteyebilir. İlk belirteç URI'sine erişme girişiminde hizmet, dosya sistemindeki yalnızca güvenilen arayanların okuyabileceği bir konumda rastgele oluşturulmuş bir şifreleme blobu oluşturur. Çağıranın daha sonra dosyayı okuması (uygun izne sahip olduğunu kanıtlama) ve bir Microsoft Entra belirtecini başarıyla almak için yetkilendirme üst bilgisindeki dosya içeriğiyle isteği yeniden denemesi gerekir.

  • Windows'da, çağıranın blobu okuyabilmesi için yerel Yönetici istrators grubunun veya Karma Aracı Uzantısı Uygulamaları grubunun üyesi olması gerekir.

  • Linux'ta çağıranın blobu okuyabilmesi için himds grubunun bir üyesi olması gerekir.

Azure kaynaklarının kimliğini doğrulamak ve bu kaynaklara erişmek için Arc özellikli sunucularla yönetilen kimlik kullanma hakkında daha fazla bilgi edinmek için aşağıdaki videoya bakın.

Disk şifrelemesi kullanma

Azure Bağlan ed Machine aracısı, Azure hizmetiyle iletişim kurmak için ortak anahtar kimlik doğrulamasını kullanır. Azure Arc'a bir sunucu eklediğinizde, diske özel bir anahtar kaydedilir ve aracı Azure ile iletişim kurarken kullanılır. Çalınırsa, özel anahtar hizmetle iletişim kurmak ve özgün sunucu gibi davranabilmek için başka bir sunucuda kullanılabilir. Bu, sistem tarafından atanan kimliğe ve kimliğin erişimi olan tüm kaynaklara erişim sağlamayı içerir. Özel anahtar dosyası yalnızca himds hesabının okumasına izin verecek şekilde korunur. Çevrimdışı saldırıları önlemek için, sunucunuzun işletim sistemi biriminde tam disk şifrelemesi (örneğin, BitLocker, dm-crypt vb.) kullanılmasını kesinlikle öneririz.

Sonraki adımlar