linux mimarisine genel bakış Azure

Azure Linux, Fedora ekosistemi üzerinde oluşturulmuş ve Azure için iyileştirilmiş Microsoft bakımlı bir Linux dağıtımıdır. Bu makalede Azure Linux'un nasıl yapılandırıldığı, varsayılan olarak neler içerdiği ve kasıtlı olarak sınırların nereye çizildiği açıklanmaktadır.

Note

Azure Linux 4.0 artık preview içindedir ve kesinlikle değerlendirme ve test amaçlarıyla sınırlıdır. Üretim kullanımı için uygun değildir.

Azure Linux'un Fedora ile ilişkisi

Azure Linux, Fedora türetilir ve aynı RPM tabanlı paketleme ekosistemini kullanır. dnf5, Fedora derleme araçlarına (mock, fedpkg, koji, kiwi) ve modern derleyici araç zincirlerine aşina olmanın rahatlığını elde edersiniz — bunların tümü Fedora upstream’inden takip edilir. Bu temelin üzerine Microsoft bulut iş yükleri için uygun Azure sağlamlaştırma, özel çekirdek ve yönetilen yaşam döngüsü ekler.

Çekirdek, Hyper-V konuk sürücüleri, Azure’a özgü performans ayarlamaları ve Azure VM SKU’ları genelinde doğrulanmış güvenlik sağlamlaştırmalarıyla genişletilmiş 6.18 LTS sürümü olarak sunulur.

Katmanlı mimari

Azure Linux katmanlı bir model kullanır. Her katman, en altta donanım ve üretici yazılımından başlayıp en üstte iş yüklerinize kadar, altındaki katmanın üzerine inşa edilir.

Azure Linux katmanlı mimarisini gösteren bir diyagramın ekran görüntüsü.

Çekirdek katmanı

Özel Azure Linux çekirdeği Hyper-V konuk sürücülerini, güvenlik sağlamlaştırma düzeltme eklerini ve Azure altyapısı için ayarlanmış performans iyileştirmelerini içerir. Kararlılık için Long-Term Destek (LTS) çekirdekleri veya yeni donanım ve GPU desteği için Donanım Etkinleştirme (HWE) çekirdekleri arasında seçim yapabilirsiniz. Ayrıntılar için bkz. Sürüm temposu ve yaşam döngüsü .

Çekirdek işletim sistemi katmanı

Bu katman asgari kök dosya sistemini sağlar: hizmet yönetimi için systemd, C çalışma zamanı olarak glibc ve şifreleme için OpenSSL. Bunlar Katman 1 bileşenleridir. Bu bileşenler, büyük bir sürümün kullanım ömrü boyunca sürüm kilitli olduğu ve yalnızca güvenlik arka uçlarını aldığı anlamına gelir. Bu, uygulama ikili arabirimini (ABI) kararlı ve davranışı tahmin edilebilir tutar.

Kullanıcı alanı paketleri katmanı

Dil çalışma zamanları (Python, Go, Rust, Node.js), kapsayıcı araçları ve uygulama bağımlılıkları burada yer alır. Katman 1 paketleri kararlılık için kilitlenir. Katman 2 paketleri tahmin edilebilir bir tempoda güncelleştirilir. Daha fazla bilgi için bkz. Sürüm temposu ve yaşam döngüsü.

İş yükü katmanı

Azure hizmetleriniz ve uygulamalarınız burada çalışır. Azure Linux, AKS, Azure VM'ler veya kapsayıcı görüntüleri üzerinde çalışırken aynı işletim sistemi temelini, paket kümesini ve davranışı sunar.

Platform kapsamı

Azure Linux, Azure bulut iş yükleri için tasarlanmıştır. Azure Linux açık kaynaklı olsa da, Microsoft’un destek ve yaşam döngüsü taahhütleri yalnızca Azure senaryoları için geçerlidir.

Aşağıdaki tabloda, Azure Linux'ta nelerin desteklendiği ve nelerin desteklenmeyği özetlenmektedir:

Alan Destekleniyor Desteklenmiyor
Mimarileri x86-64 (v2 minimum), ARMv8 (64 bit) 32 bit mimariler
Ortamlar Azure VM'leri, AKS, kapsayıcı görüntüleri ISO görüntüleri, şirket içi, çoklu bulut, IoT, uç cihazlar
Kullanıcı arabirimi Metin tabanlı konsol, SSH Grafik masaüstü ortamları, GUI yükleyicisi
Sanallaştırma KVM konukları, Hyper-V Xen
Çevre donanımı Azure bağlı depolama, ağ, GPU'lar Bluetooth, Wi-Fi, yazıcılar, ses/video, robotik
Güvenilir platform TPM 2.0 TPM 1.x
Dil desteği Küresel yerel ayar desteği mevcut Temel görüntüye tüm dil paketleri dahil değildir

Her Azure Linux görüntüsü waagent ve cloud-init içerir. Bu bileşenler Azure tümleştirme için gereklidir ve her zaman mevcut olmalıdır.

Depo yapısı

Azure Linux paketleri birkaç ayrı depoda teslim eder. Bir paketin hangi depodan geldiğini bilmek desteklenebilirlik, kullanıma sunulanlar ve kabul etmeniz gerekenler hakkında düşünmenize yardımcı olur. Günlük paket yönetimi bilgileri için bkz. Paket yönetimi.

Ağ varsayılanları

Azure Linux, Azure VM'ler, AKS düğümleri ve kapsayıcı iş yükleri için ayarlanmış bir ağ yığınıyla birlikte gönderilir. Çoğu iş yükü, varsayılan değerleri değişiklik yapmadan kullanabilir.

Aşağıdaki tabloda, Azure Linux'taki varsayılan ağ bileşenleri ve belirli bir senaryo için varsayılanları geçersiz kılmanız gerekiyorsa kullanılabilen alternatifler özetlenmiştir:

Bileşen Varsayılan Alternatif Notlar
Ağ yöneticisi systemd‑networkd + cloud‑init NetworkManager (varsayılan değil kullanılabilir) systemd-networkd, Azure VM ve kapsayıcı senaryoları için varsayılandır.
Güvenlik duvarı güvenlik duvarı N/A Varsayılan olarak, geleni engelleyen ve gidene izin veren ilkesiyle etkindir.
Güvenlik duvarı arka ucu nftables iptables (eski, kullanılabilir) nftables, iptables'ın modern halefidir. iptables eski desteği kullanılabilir ancak varsayılan değildir.
IPv6 Etkinleştirilmiş ve güçlendirilmiş N/A Hem IPv4 hem de IPv6 için katı sysctl sıkılaştırması uygulandı.

Depolama varsayılanları

Azure Linux depolama varsayılanları, Azure bağlı diskler ve her Azure VM'nin altında Hyper-V hiper yöneticisi için ayarlanmıştır. Dosya sistemi, önyükleme yükleyicisi ve saat kaynağı, anlık görüntüler ve yönetilen diskler gibi Azure platform özellikleriyle öngörülebilir performans ve uyumluluk için seçilir.

Aşağıdaki tabloda, Azure Linux'taki varsayılan depolama ayarları ve belirli bir senaryo için varsayılanları geçersiz kılmanız gerekiyorsa kullanılabilen alternatifler özetlenir:

Setting Varsayılan Alternatifler
Dosya Sistemi ext4 xfs, btrfs
Önyükleme GRUB2 önyükleyici N/A
Saat Hyper-V PTP saat kaynağı N/A
NVMe Azure’a bağlı depolama için ayarlanmış zaman aşımı N/A

Güvenlik mimarisi

Azure Linux, çekirdekten tedarik zincirine kadar her katmanda sağlamlaştırılmıştır. Aşağıdaki bölümlerde, varsayılan olarak etkinleştirilen güvenlik denetimleri açıklanmaktadır. Daha fazla bilgi için bkz . Güvenlik ve uyumluluk .

Zorunlu erişim denetimi

Zorunlu erişim denetimi (MAC), kök olarak çalıştırıldığında bile işlemleri gerçekten ihtiyaç duydukları erişimle sınırlandırıyor.

Azure Linux 4.0 önizlemesi, MAC çerçevesi için SELinux'u zorlayıcı modda etkinleştirir.

Güvenli Önyükleme

Güvenli Önyükleme yalnızca imzalı önyükleme yükleyicilerinin ve çekirdeklerin çalışmasını sağlar. Çekirdek kilitleme, çalışan çekirdeği korur ve çalışma zamanında güvenilmeyen çekirdek modüllerinin yüklenmesini devre dışı bırakır.

Note

Azure Linux 4.0 artık preview içindedir ve bileşenleri henüz Güvenli Önyükleme için imzalanmamıştır.

Çekirdek ve sistem sağlamlaştırma

Çekirdek ve kullanıcı alanı, istismar kodları geliştirmeyi zorlaştıran ve başarılı olmaları durumunda etkilerini sınırlamayı kolaylaştıran azaltım önlemleriyle derlenir.

Aşağıdaki tabloda, Azure Linux'taki çekirdek ve sistem sağlamlaştırma özellikleri özetlemektedir:

Kapasite Description
ASLR Güçlü adres alanı yerleşimi rastgeleleştirmesi etkinleştirildi.
Yığın koruması Tüm paketlere uygulanan derleyici düzeyinde yığın korumaları.
Syscall kısıtlamaları Varsayılan seccomp profilleri ve syscall filtrelemesi.
En az temel görüntü Minimum paket kümesi aracılığıyla azaltılmış saldırı yüzeyi.

Cryptography

Azure Linux, şifreleme ilkesini merkezi hale getirerek algoritmaların ve anahtar boyutlarının OpenSSL, GnuTLS, NSS ve OpenSSH genelinde tutarlı kalmasını sağlar.

Aşağıdaki tabloda Azure Linux'taki şifreleme ayarları özetlemektedir:

Setting Value
FIPS FIPS 140-3 sertifikası zorunludur.
Şifreleme ilkeleri Fedora şifreleme ilkeleri tutarlı algoritma seçimi için benimsenmiştir.
Kuantum sonrası ML-KEM, Fedora ve RHEL yol haritasıyla uyumlu olarak planlandı.

Günlükleme ve denetim

Aşağıdaki tablo, Azure Linux'taki günlüğe kaydetme ve denetim ayarlarını özetler:

Setting Value
Denetim daemon'ları denetim etkin.
Günlük depolama Kalıcı günlük depolama.