Linux Süreç Yönetimi: systemd, cgroups ve Container Güvenliği
systemd service dosyaları, cgroups ile kaynak sınırlama ve Docker container güvenlik hardening teknikleri.
systemd Service Dosyası Yazmak
Kendi uygulamanızı sistem servisi olarak çalıştırmak için /etc/systemd/system/ altına bir .service dosyası oluşturun.
Service dosyası Unit, Service ve Install bölümlerinden oluşur. Unit bölümünde Description ve After direktifleri bulunur. Service bölümünde Type, User, WorkingDirectory, ExecStart ve Restart ayarları yapılır. Güvenlik için NoNewPrivileges, ProtectSystem ve ProtectHome direktifleri eklenir.
Servis yönetimi için systemctl daemon-reload, systemctl enable ve systemctl status komutları kullanılır.
cgroups ile Kaynak Sınırlama
systemctl set-property komutuyla MemoryLimit ve CPUQuota parametreleri ayarlanabilir. systemd-cgtop ile anlık kaynak kullanımı izlenir.
Docker Container Hardening
Dockerfile içinde root olmayan kullanıcı oluşturulur. addgroup ve adduser komutlarıyla appuser tanımlanır ve USER direktifiyle aktif edilir.
docker-compose.yml dosyasında securityopt ile no-new-privileges aktif edilir. readonly true ile filesystem salt okunur yapılır. capdrop ALL ile tüm yetenekler kaldırılır, yalnızca gerekli olanlar capadd ile geri eklenir.
Sonuç
Linux ta güvenli ve izole servis çalıştırmak için systemd, cgroups ve container hardening katmanlarını birlikte kullanın.
İlgili yazılar