PolicyKit'in şifre sormasını nasıl engellerim?

22

Yıllar, sudoers dosyamda aşağıdakileri yaşadım:

scott   ALL=NOPASSWD: ALL

Bilmeyenler için bu, sudo ve arkadaşlarının ( gksudo , vb.) şifre sormasını engeller. Bununla birlikte, yıllar içinde, bir keresinde sudo kullanan daha fazla şey PolicyKit kullanarak değiştirilmiştir.

PolitikaKiti için eşdeğer bir yapılandırma arıyorum, böylece şifremi asla istemez.

İsteğimi beğenmeyenler için şunu söyleyeyim: Varsayılan yapılandırmanın nedenlerini anladım ve onlar da sağlam. Yapmak istediğim konfigürasyonda var olan riskleri de anlıyorum. Yine de, sistemimi kurmak istediğim yol bu. Yukarıdakileri tam olarak anlamayanlar, ne denediğimi denememelidir.

    
sordu Scott Severance 24.01.2012 07:02

3 cevap

14

Aslında bu tamamen doğru değil. PolicyKit'i kandırabilir ve eylemi joker karakteriyle değiştirerek TÜM şifre istemlerini engelleyebilirsiniz.

YASAL UYARI: Aşağıdakiler, giriş ekranı hariç olmak üzere, yönetici grubuna ait herkes için genel olarak TÜM şifre uyarılarını engelleyecektir. Son derece tehlikeli ve ASLA UYGULANMAMALIDIR çünkü SİZİN SİZİN SİZİN SİSTEMİNİZİ KESİNTEYECEĞİNİZ!

Sen uyarılmadığını söyleme!

NOT: Eğer 12.04 veya daha sonra çalışıyorsanız, "admin" i "sudo" ile değiştirin!

"kullanıcı adını" gerçek kullanıcı adınızla değiştirin:

usermod -aG admin username

Köke geç:

sudo -i

Yeni bir politika oluştur:

gedit /var/lib/polkit-1/localauthority/50-local.d/disable-passwords.pkla

Aşağıdakileri ekleyin:

[Do anything you want]
Identity=unix-group:admin
Action=*
ResultActive=yes

Kaydet, çık ve bilgisayarı yeniden başlat. O zaman, genellikle bir şifre gerektiren bir şeyi deneyin. :)

NOT: .pkla dosya adınız olarak ne kullandığınız önemli değil. İstediğin herşeyi adlandırabilirsin. AMA, meşru bir politika kullandığınız önemli değil. Bu yüzden "Paket dosyasını yükle" ile gittim. Ubuntu'nun tanıdığı ilke listesinde olduğu sürece, yaptığım şeyle gitmek zorunda değilsiniz.

Ve son olarak, şifre istemlerini bastırmaya geldiğinde ihtiyacınız olan tek SADECE politikası bu, çünkü yine küresel olarak yapıyor.

    
verilen cevap user55572 19.04.2012 00:09
7

Bir ya da birkaç eylem grubunu temel alan bir .pkla oluşturabilirsiniz, gerçekten önemli değil.

/ usr / share / polkit-1 / actions referanslarına bakmak için, işlem kimliklerini almak için bir metin düzenleyicide ilgilenenleri açın.

Bir .pkla veya 2'ye kadar onları yerleştirmek için en uygun yeri buluyorum. Bu, herhangi bir güncellemeden korunacaktır

/var/lib/polkit-1/localauthority/50-local.d

Öyleyse, örneğin, paket yönetimi politikasının

yerine biraz daha ileriye uzanmasına rağmen, benim ana paketim paket-manager.pkla.
[Install package file]
Identity=unix-group:admin
Action=org.debian.apt.install-file;org.debian.apt.update-cache;org.debian.apt.install-or-remove-packages;org.debian.apt.upgrade-packages
ResultActive=yes

[Install package synaptic]
Identity=unix-group:admin
Action=com.ubuntu.pkexec.synaptic
ResultActive=yes

[Change add repo]
Identity=unix-group:admin
Action=com.ubuntu.softwareproperties.applychanges;org.debian.apt.change-repository
ResultActive=yes

[usbcreator format]
Identity=unix-group:admin
Action=com.ubuntu.usbcreator.format
ResultActive=yes

[Install bootloader]
Identity=unix-group:admin
Action=com.ubuntu.usbcreator.bootloader
ResultActive=yes

[Add users]
Identity=unix-group:admin
Action=org.freedesktop.accounts.user-administration
ResultActive=yes

12.04 'den başlayarak "admin" kullanıcısı için kullanılan grubun sudo olarak değiştirileceğini unutmayın.

Identity=unix-group:sudo

Ayrıca, eylemlerin her bölüm için bir araya getirilebildiğine, boşluk bırakılmayacağına; kimliğin arasında

    
verilen cevap doug 24.01.2012 09:08
1

Bir seçenek, ne yaptığınızı biliyorsanız, politika kitini tamamen devre dışı bırakmaktır.

sudo apt-get remove libpolkit-agent-1-0

    
verilen cevap viksit 08.06.2017 11:04

Etiketlerdeki diğer soruları oku