Uygulamalara erişimi denetlemek için Gatekeeper'ı kullanma
spctl
Onaylı ve onaylanmamış uygulamaların listesini oluşturmak için (Gatekeeper) kullanabilirsiniz .
Örneğin, Posta'ya izin vermek ancak Chrome'u engellemek istediğinizi varsayalım.
sudo spctl --add --label "ApprovedApps" /Applications/Mail.app
sudo spctl --add --label "DeniedApps" /Applications/Chrome.app
Yukarıdaki komut, Posta ve Chrome'u sırasıyla "Onaylandı" ve "Reddedildi" olarak "etiketleyecektir (kendi tanımlayıcılarınızı kullanabilirsiniz).
Şimdi, uygulamaları etkinleştirmek / devre dışı bırakmak için komutları verirsiniz:
sudo spctl --enable --label "ApprovedApps"
sudo spctl --disable --label "DeniedApps"
Bunun avantajı, her iki listeye de başka bir uygulama eklemek için sadece uygun etiketi eklemenizdir:
sudo spctl --add --label "ApprovedApps" /Applications/Another.app
Ayrıca, Mac App Store'daki kodların çalışmasını yasaklayabilirsiniz ( spctl
man sayfasında bulunur man spctl
).
spctl --disable --label "Mac App Store"
Bu, herhangi birinin bir uygulamayı App Store'dan indirmesini ve yüklemesini / çalıştırmasını engeller.
Yöneticilerle başa çıkmak /sudoers
Yorumlarda belirtildiği gibi, bir Yöneticinin yapabileceği her şey, başka bir Yönetici geri alabilir. Kullanmak spctl
için root gerekir, ancak sudoers dosyasını belirli bir komuta erişimi kısıtlamak için düzenlemek diğer kullanıcıların / yöneticilerin değişikliklerinizi geri almasını engelleyebilir.
Bkz. Sudo kullanıcılarının belirli komutları çalıştırmasını nasıl önleyebilirim? sudoers
dosyanızda "istisna içeren bir beyaz listenin" nasıl yapılandırılacağı ile ilgili ayrıntılar için .
Örneğin, tüm komutlara kullanıcı Sam erişmesine izin vermek için hariç spctl
Eğer Sudoers dosyasında koyardı:
sam ALL = ALL, !/usr/sbin/spctl
Şimdi, bu erişimi engellemek için "hızlı ve kirli" bir yol spctl
ama nihayetinde, bu etkili değildir çünkü diğer yönetici stratejinize akıllı davranırsa, tek yapması gereken komutu yeniden adlandırmak ve erişime sahip olmaktır.
Gönderen sudoers
adam sayfası:
Genel olarak, bir kullanıcı TÜMÜNÜ sudo ALL varsa, herhangi bir ``! '' kullanıcı şartnamesindeki öğeler.
Gerçekten kilitlemek için, ya diğer kullanıcıyı su
farklı bir kullanıcı (örneğin operatör) olarak zorlamanız veya varsayılan olarak diğer her şeyi engellemeyi varsayılan olarak izin verilen komutların bir beyaz listesini oluşturmanız gerekir. Bununla birlikte, insanları kritik işlevlerden uzak tutabileceğiniz için bu zaman alıcıdır ve oldukça tehlikelidir.