Dosyalar çalıştırılabilir mi?
Sistem birimlerini komut dosyaları olarak değil, yapılandırma dosyaları olarak düşünün. Çekirdek tarafından çalıştırılmazlar; #!
Shebang hattı ve bu nedenle çalıştırılabilir olması gerekmez. (Aslında eğer sen yap Onları çalıştırılabilir kılın, systemd sistem günlüklerine bir uyarı yazdıracaktır.)
Dosyalar root olmayan kullanıcılar tarafından okunabilir mi?
Evet, içeriği gizlemenin bir anlamı yoktur (bunlar üzerinden alınabilir) systemctl
Neyse). Yine sistemd, birimleri halka açık olmayan yararsız girişimler konusunda uyaracaktır.
Dosyalar olmalı yazılabilir root olmayan kullanıcılar tarafından mı?
Yalnızca kullanıcı tamamen güvenilirse (örneğin, bir sistem yöneticisi). Neleri başarabileceklerini düşünün: ünite dosyasına rasgele komutlar koyabilir, sistemi yeniden başlatabilir ve bu komutlar tam olarak çalıştırılabilir. kök ayrıcalıkları.
Bu nedenle, güvenilmeyen bir kullanıcı sistem .service dosyalarına yazabilirse, çok hızlı bir şekilde kök olabilir.
Dosyalar root tarafından mı tutulmalı?
Bunlar sistem yapılandırma dosyalarıdır. /etc
, bu yüzden kök doğal seçim olacaktır. (O kadar önemli değil - ama yap yazılabilirlik hakkında önceki bölüme bakınız.)
Diğer dosyalar gerçekten "tamamen açık" mı?
Onlar değil. Senin örnek symlink, dosya değil. Sembolik bağlantıların hiçbir şekilde kendi izinleri yoktur - sistem daima aynı kukla değeri verir, ancak hiçbir zaman hiçbir şey için kullanmaz. (Bu arada, rwx rwx rwx
0777, 0755 değil.)
Eğer hepsine bakarsan düzenli içindeki dosyalar /etc/systemd/system
veya /usr/lib/systemd/system
, hemen hemen hepsinin izinlere sahip olduğunu göreceksiniz 0644 ( rw- r-- r--
).