Virt-manager'ın root şifresini sormasını nasıl önleyebilirim?


18

Virt-manager'ı başlatırken, root şifresini ister.

Virt-manager, libvirtd arka plan programının birkaç argümanla pkcheck çalıştırmasına neden oluyor ve bu da bu kimlik doğrulama iletişim kutusunu gösteriyor. Yani root şifresini isteyen PolicyKit.

Resmi web sitesi (libvirt.org) şifre isteminden kurtulmak için bir PolicyKit kuralının nasıl tanımlanacağını açıklar:

$ sudo cat /etc/polkit-1/localauthority/50-local.d/50-org.example-libvirt-remote-access.pkla
[libvirt Management Access]
Identity=unix-group:libvirt
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes

"Locauthority" alt dizini mevcut değildi. Oluşturma ve o ad ve içeriğe sahip bir dosya (libvirt -> grup adım) buraya koymanın bir etkisi yok gibi görünüyor. Ayrıca, JavaScript sözdizimini kullanan varsayılan bir dosya vardır:

/etc/polkit-1/rules.d/50-default.rules

Bu paket sisteme ve birkaç DE ön ucuna kurulur:

polkit-0.107-4.fc18.x86_64

Görünüşe göre libvirt.org'daki örnek yapılandırma eski mi?

Parola isteminden (belirli bir kullanıcı grubu için) kurtulmak için hangi yapılandırma gereklidir?

Yanıtlar:


16

/etc/polkit-1/rules.d/10.virt.rules:

polkit.addRule(function(action, subject) {
    if (action.id == "org.libvirt.unix.manage"
            && subject.local
            && subject.active
            && subject.isInGroup("libvirt")) {
        return polkit.Result.YES;
    }
});

İlke kitini yeniden başlatma ve libvirtgruba ekledikten sonra ilgili kullanıcıyla yeni bir oturum başlatma gibi ortak adımlar gerçekleştirmeniz gerekir .

Kaynak Fedora 18 ile ilgili gibi görünüyor, ancak javascript sözdizimini zaten kullanıyor, bu yüzden büyük olasılıkla Fedora 19 için de geçerli.

Bağlantılar:


1
Bu çözüm işe yarıyor! Bağlantılar için de teşekkürler. Ödül ödüllendirildi.
senorsmile

Yanlış biçimlendirme için özür dilerim, düzeltildi.
Pavel Šimerda

Bu, kullanıcının libvirt grubuna eklenmesiyle nasıl karşılaştırılır? Kullanıcıyı libvirt grubuna eklemeyi test ettim ve sonra ek kimlik doğrulaması gerekmedi.
jwbensley

1
@jwbensley Polkit yolu dinamiktir ve etkin yerel oturumun sahibine izin verir. Grup yolu statiktir ve söz konusu kullanıcıya ayrıcalık verir. Uygun gördüğünüz şekilde yollarınızı seçin.
Pavel Šimerda

1

Parola istemi sistem güvenliği için yapılmıştır, böylece bunu yaparsanız güvenlik açığından etkilenebilirsiniz.

  1. Create Groupmakinenizde grubu. veya bu "sudo groupadd -r Group" komutunu çalıştırabilirsiniz

  2. Bu sistem grubuna istediğiniz herhangi bir kullanıcıyı "sudo usermod -a -G Group User" komutunu çalıştırarak yapabilirsiniz.

  3. Şimdi, kullanıcıların Groupvirt-manager çalıştırmasına izin verecek PolicyKit politikamızı oluşturmanız gerekiyor.

şu yolda bir dosya oluşturacaksınız: "/ etc / polkit-1 / localauthority / 50-local.d / 50-org. Group-libvirt-local-access.pkla"
ve içine aşağıdaki satırları yerleştireceksiniz

[Grup Grouplibvirt yönetim izinlerine izin ver ]
Kimlik = unix-grup: Group
Eylem = org.libvirt.unix.manage
ResultAny = evet
ResultInactive = evet
ResultActive = evet

Şimdi yapmanız gereken tek şey bunu çalıştırabilirsiniz. Ve umarım bu sana yardımcı olur.


Bu eski çözüm. Bu çözüm, Fedora 19 veya Current Arch gibi daha yeni sistemd tabanlı Linux işletim sistemlerinde ÇALIŞMAZ. (Sadece test ettim. Bir locauthority dizini bile yok ve alt klasör ve belirtilen dosya hiçbir şey yapmıyor).
senorsmile

@senorsmile Fedora 19 ile ilgili bir hata raporu bildirdiniz mi?
Pavel Šimerda
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.