ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Microsoft ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Azure Linux 3.0, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π½Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ»ΡΡ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ CBL-Mariner. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ Linux-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅, edge-ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ Microsoft. ΠΡΠΎΠ΅ΠΊΡ Π½Π°ΡΠ΅Π»Π΅Π½ Π½Π° ΡΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ Π² Microsoft Linux-ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ Linux-ΡΠΈΡΡΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΠ°ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ MIT. Π‘Π±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠΎΡΠΌΠΈΡΡΡΡΡΡ Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ aarch64 ΠΈ x86_64. Π Π°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π·Π° 740 ΠΠ.
Π‘ΡΠ΅Π΄ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ:
- Π―Π΄ΡΠΎ Linux ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 6.6 (ΡΠ°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΎΡΡ ΡΠ΄ΡΠΎ 5.15). ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠ°ΡΡΠ΅ΠΉ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ ΡΠ΄ΡΠΎ (live patching), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΡΡΡΡΠ°Π½ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² ΡΠ΄ΡΠ΅ Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ systemd 255, glibc 2.38, GCC 13.2, clang 18.1, OpenSSL 3.3, rpm 4.18.2, ruby 3.3.0, BIND 9.20, containerd 1.7.13, ΠΊunc 1.1.12, ostree 2024.5, rust 1.75, Perl 5.38, Python 3.12.3, QEMU 8.2.0.
- Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ° SELinux ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΡΠ΅ΠΆΠΈΠΌ «enforcing».
- ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Π° ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡ cgroups v2. ΠΠ»ΡΡΠ΅Π²ΡΠΌ ΠΎΡΠ»ΠΈΡΠΈΠ΅ΠΌ cgroups v2 ΠΎΡ v1 ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΉ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ cgroups Π΄Π»Ρ Π²ΡΠ΅Ρ Π²ΠΈΠ΄ΠΎΠ² ΡΠ΅ΡΡΡΡΠΎΠ², Π²ΠΌΠ΅ΡΡΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΡΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΉ Π΄Π»Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² CPU, Π΄Π»Ρ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ Π΄ΡΡΠ³ΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² (OSsku In-Place Migration) Π½Π° ΡΠ·Π»Π°Ρ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Microsoft Azure, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ Ubuntu Π½Π° Azure Linux.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΠ²ΡΡ GPU NVIDIA, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ NVIDIA A100 ΠΈ H100, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ NVIDIA GPU Operator Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ NVIDIA Π½Π° ΡΠ·Π»Π°Ρ Ρ Azure Linux.
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Azure Linux ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΈΠΏΠΎΠ²ΠΎΠΉ Π½Π°Π±ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π²ΡΡΡΡΠΏΠ°ΡΡΠΈΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π°ΡΠΈΠ½ΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², Ρ ΠΎΡΡ-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΡ Π² ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°Ρ ΠΈ Π½Π° edge-ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ ΠΏΡΡΡΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΠΎΠ²Π΅ΡΡ Azure Linux, Π½ΠΎ ΠΎΡΠ½ΠΎΠ²Π° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Azure Linux ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠ½ΠΎΠ²Ρ ΠΌΠΈΠ½ΠΈ-Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° WSLg, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ° Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΡΠΊΠ° GUI-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Linux Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ Π½Π° Π±Π°Π·Π΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL2 (Windows Subsystem for Linux). Π Π°ΡΡΠΈΡΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ Π² WSLg ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Weston, XWayland, PulseAudio ΠΈ FreeRDP.
ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ systemd. ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ RPM ΠΈ DNF. SSH-ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ. ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ, ΡΠ°ΠΊ ΠΈ Π² Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ°Ρ . Π ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΎΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΏΠΎΠ»Π½ΡΠΌ ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π°, Π²ΡΠ±ΠΎΡΠ° ΠΈΠΌΠ΅Π½ΠΈ Ρ ΠΎΡΡΠ° ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠ±ΠΎΡΠΊΠΈ Azure Linux ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ RPM-ΠΏΠ°ΠΊΠ΅ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ SPEC-ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ², ΡΠ°ΠΊ ΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΎΠ±ΡΠ°Π·Ρ, ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ rpm-ostree ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌΡΠ΅ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎ Π±Π΅Π· ΡΠ°Π·Π±ΠΈΠ²ΠΊΠΈ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π΄Π²Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ: ΡΠ΅ΡΠ΅Π· ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π·Π°. ΠΠΎΡΡΡΠΏΠ΅Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΠΎΠΊΠΎΠ»ΠΎ 3000 ΡΠΆΠ΅ ΡΠΎΠ±ΡΠ°Π½Π½ΡΡ RPM-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠ°Π·ΠΎΠ²Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΌΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π° Π΄Π»Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ. Π ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ «ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ», ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠΈΠΉ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π·Π°ΡΠΈΡΡ:
- Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° seccomp.
- Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ².
- ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΠΎ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ.
- Π Π°Π½Π΄ΠΎΠΌΠΈΠ·Π°ΡΠΈΡ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°.
- ΠΠ°ΡΠΈΡΠ° ΠΎΡ Π°ΡΠ°ΠΊ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ, mmap, /dev/mem ΠΈ /dev/kmem.
- Π Π΅ΠΆΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π² ΠΎΠ±Π»Π°ΡΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΡΠ΄ΡΠ° ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
- ΠΠΏΡΠΈΡ Π΄Π»Ρ Π·Π°ΠΏΡΠ΅ΡΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΄ΡΠ° ΠΏΠΎΡΠ»Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ iptables Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
- ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² Π·Π°ΡΠΈΡΡ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ΅ΠΊΠ°, ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π±ΡΡΠ΅ΡΠ° ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΡΠΎΠΊ (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru