PolicyKit'in şifre istemesini nasıl önleyebilirim?


24

Yıllarca, dosyamda aşağıdakiler vardı sudoers:

scott   ALL=NOPASSWD: ALL

Bilmeyenler için bu, sudoarkadaşlarınızın ( gksudovb.) Şifre istemesini engeller . Ancak yıllar geçtikçe, bir zamanlar kullanılan ve gittikçe daha fazla şey sudoPolicyKit kullanılmaya başlandı.

PolicyKit için eşdeğer bir konfigürasyon arıyorum, öyle ki şifremi asla istemeyecek.

İsteğimi beğenmeyenler için şunu söylememe izin verin: Varsayılan yapılandırmanın nedenlerini anladım ve sağlamlar. Ayrıca yapmak istediğim yapılandırmada ortaya çıkan riskleri de anlıyorum. Yine de, sistemimi kurmak istediğim yol bu. Yukarıdakileri tam olarak anlamayanlar, denediğim şeyi denememelidir.

Yanıtlar:


15

PolicyKit'i kandırabilir ve eylemi bir jokerle değiştirerek TÜM şifre istemlerini bastırabilirsiniz.

YASAL UYARI: Aşağıdakiler, oturum açma ekranı hariç olmak üzere, yönetici grubuna dahil olan herkes için TÜM parola istemlerini genel olarak bastırır. Son derece tehlikelidir ve ASLA UYGULANMAMALIDIR, çünkü SİZİN SİSTEMİNİZİ KAZANMAK ZORUNDA OLACAKTIR!

Uyarılmadığını söyleme!

NOT: 12.04 veya üstü kullanıyorsanız, "admin" yerine "admin" yazın!

"Username" i 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 ve çık. O zaman git, genellikle şifre gerektiren bir şeyi dene. :)

NOT: .pkla dosya adınız olarak ne kullandığınız fark etmez. İstediğin her şeye isim verebilirsin.

Ve son olarak, bu şifre taleplerini bastırma konusunda ihtiyaç duyacağınız SADECE politikadır, çünkü yine de bunu küresel olarak yapar.


Bu, aynı zamanda admingrubu ikame ettiğinizde Fedora'da da çalışır wheel. Teşekkürler!
Kenny Rasschaert

3
Birisi bunun sistemi nasıl "kıracağını" açıklayabilir mi?
Mehrdad,

3
Evet lütfen. Bu sistemi nasıl bozacak? Bu değil! Bundan sonra yaptığın aptalca bir şey sistemi kıracak, ama bu değil! Bu, ana bilgisayarda parola olmadan bir şey yapmanıza olanak sağlar. Aptalca bir şey yaparsanız, sistemi kıracaksınız. Eğer şifreyi koymak zorunda kalırsanız ve aptalca bir şey yaparsanız, sistemi kıracaksınız. Bu, aslında, aptalca bir şey yapmayı biraz kolaylaştırıyor .
dangonfast

1
@ jeckyll2hide NOT'u okuyun - OP'nin neden seçtiğini açıklar [Install package file]. Ya buna katılmıyorum ve NOT benzer bir düzenleme gerektiriyor ya da düzenlemeniz geçersiz ve geri alınmalı.
bcbc

1
@prusswan Identity=unix-user:scott, sadece "scott" kullanıcısının işlemi yapmasına izin vermek için kullanabilirsiniz . Ayrıca, yalnızca belirli işlemlere izin vermek istiyorsanız, /var/log/auth.log dosyasını grep edebilirsiniz. Polkitd, şifreniz istendiğinde denediğiniz polkitin tam adını verir. cat /var/log/auth.log | grep polkitdsize oldukça hızlı bir listesini vereceğim
Scott

8

Eylem gruplarına göre hepsi bir arada ya da bir ya da bir .pkla oluşturabilirsiniz, gerçekten önemli değil.

Başvuru için / usr / share / polkit-1 / actions dizinine bakın, ilgi kimliğini almak için ilgilendiğinizleri bir metin düzenleyicide açın.

Bir .pkla veya 2'ye kadar onları koymak için en iyi yeri buluyorum, herhangi bir güncellemeden korunacak

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

Mesela burada ana paketim: package-manager.pkla, paket yönetim politikasından biraz daha fazla olsa da

[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'te başlayarak "admin" kullanıcısı için kullanılan grubun sudo, yani.

Identity=unix-group:sudo

Ayrıca, eylemlerin bölüm başına bir araya getirilebileceğini, boşluk kullanmadan, a; kimlikleri arasında


Her program için ayrı ayrı ayarları yapıyorsunuz gibi görünüyor. Özellikle daha sonra PolicyKit kullanmak isteyen başka bir program yüklersem çok sıkıcı görünüyor. Her şeyi etkileyen küresel bir yapılandırma değişikliği yapmanın bir yolunu arıyorum.
Scott Severance

1
'Global'i' etkilemenin hiçbir yolunu hiç görmedim, politika setinin böyle çalıştığına inanmayın, eylem başına bir politika belirlenir
doug

0

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

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


1
Çok fazla gerekli paketleri gibi kaldırır network-manager, gnome-control-centerve daha çok fazlası. Daha ince taneli bir yol var mı?
Suncatcher
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.