Kích hoạt các đặc quyền quản lý hệ thống cho người dùng không phải là người địa phương - Dù sao thì 'polkit` hoạt động thế nào?


7

Tôi đang quản lý máy chủ CentOS 6.2 từ xa bằng X qua SSH (thực ra là NX, nhưng đó chỉ là proxy).

Mọi thứ đều hoạt động chính xác, ngoại trừ khi tôi cố gắng thực hiện các tác vụ thường yêu cầu quyền quản trị (chẳng hạn như mọi thứ trong palimpsesthoặc bất kỳ công cụ GUI nào khác).

Khi tôi cố gắng thực hiện những việc sẽ kích hoạt hộp thoại xác thực (thông qua polkit-gnome), hộp thoại quyền sẽ âm thầm bị lỗi và phần mềm đang chạy như tài khoản người dùng của tôi, thay vì root.

Để làm rõ, nếu tôi thay đổi cài đặt gói bằng trình quản lý gói tại bảng điều khiển cục bộ, tôi sẽ nhận được thông báo - "Yêu cầu xác thực đối với (thêm / xóa) gói".

Nếu tôi làm điều này từ xa, xác thực thất bại và tôi nhận được hộp thoại "Ủy quyền không thành công".

Nó dường như sôi sục với cấu hình bộ chính sách, nhưng tôi đã theo dõi các trang man polkit và chỉnh sửa cấu hình của mình và nó không thay đổi gì cả.


Tôi có thể quản lý các gói / làm công cụ siêu người dùng từ dòng lệnh mà không gặp vấn đề gì. Tuy nhiên, tôi rất định hướng trực quan và rất thích GUI khi có thể.


Ok, có vẻ như tôi cần thêm một quy tắc mới vào bộ chính sách.

Đi ra khỏi trang man, tôi tạo một tập tin (có tên 20-remote-admin-allow.pkla) và thả nó vào /etc/polkit-1/localauthority/50-local.d/. Vì dường như có nhiều thư mục cấu hình polkit, tôi đã sao chép cùng một tệp vào /var/lib/polkit-1/localauthority/50-local.d/.

Nó dường như không thay đổi bất cứ điều gì.

Đây là tập tin cấu hình của tôi, như đã đề cập ở trên:

[root@cloaica zul]# cat /var/lib/polkit-1/localauthority/50-local.d/10-remote-admin-allow.pkla 
[Let remote users do admin stuff]
Identity=unix-user:zul
Action=*
ResultAny=auth_admin
ResultInactive=auth_admin
ResultActive=auth_self_keep

[root@cloaica zul]# cat /etc/polkit-1/localauthority/50-local.d/20-remote-admin-allow.pkla 
[Allow Remote Administraton]
Identity=unix-user:zul
Action=*
ResultAny=auth_admin
ResultInactive=auth_admin
ResultActive=auth_admin
[root@cloaica zul]# 

pkaction --verbose vẫn báo cáo

implicit any:      no
implicit inactive: no

đối với hầu hết các hành động và các hành động nói đều thất bại nếu tôi thử chúng, với hộp thoại "Xác thực thất bại", như đã đề cập ở trên.

Nghiêm túc mà nói, tôi có ai thực sự hiểu làm thế nào polkit thực sự hoạt động?

Bộ chính sách dường như là một cơn ác mộng đang diễn ra và xem xét đã từng có một công cụ cấu hình GUI và nó đã bị xóa , tôi không hiểu làm thế nào bất cứ ai nghĩ rằng nó đã sẵn sàng để phát hành vào một hệ điều hành sản xuất.


Để rõ ràng, tôi thích có hộp thoại "vui lòng xác thực để thực hiện hành động này". Tôi chỉ muốn thực sự chúng, thay vào đó hệ thống âm thầm không thể xác thực.

Tôi không muốn xóa toàn bộ polkit, chỉ cần nghĩ rằng tất cả các phiên đều hoạt động hoặc các phiên không hoạt động có cùng quyền như các phiên hoạt động.


Tôi không có kinh nghiệm về CentOS, nhưng có vẻ như đó là một vấn đề liên quan đến Chính sách. Conf mặc định trên Debian và Ubuntu không cung cấp đặc quyền cho người dùng không nhắm mục tiêu.
enzotib

@enzotib - Tôi đoán nó giống như thế. Bây giờ, đâu là thiết lập kiểm soát các đặc quyền đó?
Tên giả

Họ đang ở trong /etc/polkit-1/var/lib/polkit-1. Xem thêm trang pkaction --verboseđầu ra và pklocalauthoritytrang man.
enzotib

@enzotib - Tôi đã làm điều đó, xem câu hỏi cập nhật. Nó không giúp được gì.
Tên giả

Một số lưu ý: 1) tệp phải có .pklaphần mở rộng; 2) nên có Identityvà không có AdminIdentities; 3) pkactiontrả về thông tin cho các hành động đã đăng ký (tìm thấy trong /usr/share/polkit-1/actions/*) và không hiển thị các sửa đổi cục bộ, vì vậy tốt hơn là nên thử hơn là tin vào pkaction.
enzotib

Câu trả lời:


1

Không thể nói chắc chắn rằng bạn có cùng một vấn đề, nhưng điều này được liệt kê là lỗi fedora , kể từ tháng 11 năm 2011. Tôi đã cài đặt một CentOS 6 sạch, nâng cấp tất cả các gói và sau đó gặp vấn đề tương tự khi cố gắng truy cập từ xa và thêm một gói mới (một cái gì đó yêu cầu auth).


0

Hãy thử cái này:

[Remote Admin SSH access] 
Identity=unix-group:users
Action=*
ResultAny=yes
ResultInactive=yes
ResultActive=yes

Sau này thêm người dùng vào nhóm người dùng. Bạn có thấy bất kỳ vấn đề bảo mật với cấu hình này?


0

Xin chào tôi cũng gặp rắc rối với điều này. Cụ thể với udisk.

(Tôi đang chạy Ubuntu desktop 14.04)

Để sửa chữa cho udisks tôi đã làm điều này.

  1. Sao lưu và chỉnh sửa

    sudo vi /usr/share/polkit-1/actions/org.freedesktop.udisks.policy

  2. tìm kiếm tất cả:

    <allow_active>yes</allow_active>

    và sau đó thay đổi:

    <allow_any>no</allow_any>

đến:

   `<allow_any>yes</allow_any>`

điều này cho phép truy cập từ xa thay vì chỉ đóng băng cục bộ


0

Tôi thấy rằng đang chạy:

 /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 &

đầu tiên trong phiên ssh của tôi cho phép tôi có được cửa sổ bật lên auth bình thường như thể tôi là người địa phương.

Với điều này, tôi có thể chạy đĩa gnome hoặc bất kỳ tiện ích gnome nào khác cần auth_admin.

Nhị phân này đến từ policykit-1-gnomegói.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.