Xóa mật khẩu sudo khi kết nối với mạng * mới * WiFi


12

Vì vậy, hiện tại khi người dùng không phải quản trị viên của tôi cố gắng kết nối với mạng WiFi mới (ví dụ: tại quán cà phê nói), Trình quản lý mạng sẽ nhắc mật khẩu của người dùng quản trị viên. Có cách nào để tắt tính năng này và cho phép người dùng không phải quản trị viên kết nối với bất kỳ mạng Wifi nào họ thích không?

EDIT: chỉ để làm rõ, tôi thực sự có nghĩa là một mạng WiFi mới không bao giờ được kết nối với máy tính trước đó, vì vậy, nhấp vào 'Có sẵn cho tất cả người dùng' trên một kết nối đã thiết lập hiện tại sẽ không giải quyết được vấn đề - vì hiện tại không có vấn đề gì với người dùng không phải quản trị viên kết nối lại nhiều lần như họ muốn với mạng gia đình.


/etc/sudoerslà tập tin để chỉnh sửa vì vậy nó không yêu cầu mật khẩu: help.ubuntu.com/community/Sudoers
Rinzwind

Tôi đã sử dụng visudotrước đây để cho phép người dùng không phải quản trị viên thực hiện một số điều ( sudo apt-get upateví dụ như), nhưng tôi không chắc chắn những gì tôi sẽ phải đặt vào đó để ngăn họ được hỏi mật khẩu khi kết nối với mạng wifi mới
fpghost

ha bạn đã cho tôi ở đó. Tôi sẽ làm cho nó trở thành một câu trả lời nếu tôi biết rằng từ bộ nhớ (đã tìm kiếm một chút nhưng chưa tìm thấy nó: D)
Rinzwind

vâng, phải là một cái gì đó thuộc dạng someUser ALL=(root)NOPASSWD:/path/to/somethingControllingWiFitôi đoán, nếu đây thực sự là con đường để đi.
fpghost

Chắc chắn là như vậy :) ..
Rinzwind

Câu trả lời:


14

Tôi đã tìm thấy thành công với giải pháp sau trong Ubuntu 13.04:

Mở /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policybằng quyền root / sudo và tìm kiếm dòng sau:

<message>System policy prevents modification of network settings for all users</message>

Một vài dòng dưới đây nên là:

<allow_active>auth_admin_keep</allow_active>

Thay đổi nó thành:

<allow_active>yes</allow_active>

Lưu tệp và khởi động lại máy tính của bạn.


xem đòn trả lời của @harlemsquirrel bên dưới, nó sẽ giúp việc đóng gói quyền bên trong dễ dàng hơn nhiều, ví dụ như gói gỡ lỗi. Ngoài ra, cách tiếp cận trên dễ bị thiết lập lại bởi các bản cập nhật, v.v., vì bạn chỉnh sửa một tệp được quản lý bởi dpkg.
vidstige

1
Lời khuyên chắc chắn, nhưng bạn chỉ nên khởi động lại mạng thông qua khởi động lại trình quản lý mạng dịch vụ sudo.
vise

4

Cách khắc phục lỗi: Chính sách hệ thống ngăn sửa đổi cài đặt mạng cho tất cả người dùng

Có một bước quan trọng bị thiếu trong một câu trả lời ở trên, vì vậy tôi bao gồm nó ở đây. :)

Điều này hoạt động trong Ubuntu 14.04 LTS & 16.04 LTS

  1. Thiết bị đầu cuối mở

  2. su để root

    su -
    
  3. như sau:

    nano /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
    
  4. Đến cuối tập tin, tìm phần có nhãn:

    <action id="org.freedesktop.NetworkManager.settings.modify.system">
    
  5. Ở dưới cùng của phần org.freedesktop.NetworkManager.sinstall.modify.system , định vị dòng mã sau:

    <allow_active>auth_admin_keep</allow_active>
    
  6. Thay đổi dòng này để đọc như sau:

    <allow_active>yes</allow_active>
    
  7. Lưu tệp bằng cách sử dụng:

    ^X
    
  8. Trả lời "Lưu bộ đệm đã sửa đổi (TRẢ LỜI" Không "S DE THAY ĐỔI THAY ĐỔI)?" bằng cách :

    Y
    
  9. Nhấn Enter khi được nhắc với:

    File Name to Write: /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
    
  10. Khởi động lại .

:)


3

Bạn cũng có thể tạo một chính sách địa phương cho việc này

[Để học sinh sửa đổi cài đặt hệ thống cho mạng]
Danh tính = unix-user: học sinh
Hành động = org.freedesktop.NetworkManager.sinstall.modify.system
Kết quảAny = không
Kết quả không hoạt động = không
Kết quảActive = có

trong một tập tin gọi là /etc/polkit-1/localauthority/50-local.d/10-network-manager.pkla.

Ưu điểm ở đây là đây có thể là một lệnh đơn và có thể sử dụng được trong một tập lệnh!

in " sudo tee /etc/polkit-1/localauthority/50-local.d/10-network-manager.pkla

Tham khảo: Trang chủ Ubuntu: pklocalauthority


đây là giải pháp chính xác
vidstige

2

Đây thực sự không phải là bản sửa lỗi mà tôi hy vọng nhưng một cách giải quyết mà tôi đã tìm thấy chỉ là vô hiệu hóa NetworkManagertất cả cùng nhau và thay vào đó sử dụng Wicd.

Điểm dừng đầu tiên NetworkManagerkhi chạy khi khởi động:

sudo gedit /etc/NetworkManager/NetworkManager.conf

sau đó # ra manageddòng. Ngoài ra # ra #start on (local-filesystems and started dbus)từ /etc/init/network-manager.conf. Sau đó, chỉ để làm cho chắc chắn gấp đôi

sudo mv /etc/init/network-manager.conf /etc/init/network-manager.conf-disabled
sudo mv /etc/xdg/autostart/nm-applet.desktop /etc/xdg/autostart /nm-applet.desktop.disabled  

Bây giờ chỉ có thể sử dụng Wicdvà dường như không có lời nhắc mật khẩu cần thiết.


0

Bạn có thể chỉnh sửa các tập tin cấu hình hệ thống, nhưng đó là sức mạnh vũ phu. Trước hết, như một quy luật của, cư trú cấu hình dưới /etc, không /usrhay /varhoặc bất cứ nơi nào khác. HarlemSquirrel đã giải thích cách thực hiện thay đổi phù hợp với chính sách mặc định. Chỉnh sửa các tệp bên dưới /usrđược đảm bảo sẽ nổ tung trong khuôn mặt của bạn sớm hay muộn, vì các tệp đó được cung cấp bởi các gói hệ thống, cuối cùng sẽ được cập nhật / thay thế.

Nhưng vấn đề lớn hơn là những thay đổi này là hoàn toàn không cần thiết, ít nhất là vào ngày 18.04. Đây là một vấn đề "bạn đang giữ nó sai". Trên thực tế, đó là một vấn đề về khả năng sử dụng trên phần của applet NM, nhưng dù sao đi nữa. Hãy xem /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy:

  <action id="org.freedesktop.NetworkManager.settings.modify.system">
    <description>Modify network connections for all users</description>
    <defaults>
      <allow_any>auth_admin_keep</allow_any>
      <allow_inactive>auth_admin_keep</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

Có nghĩa là người dùng không thể tạo kết nối, phải không? Sai lầm! Nhìn xa hơn:

  <action id="org.freedesktop.NetworkManager.settings.modify.own">
    <description>Modify personal network connections</description>
    <defaults>
      <allow_any>auth_self_keep</allow_any>
      <allow_inactive>yes</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

Như bạn có thể thấy, NetworkManager hỗ trợ khái niệm kết nối người dùng và hệ thống. Vấn đề là, applet tạo kết nối hệ thống theo mặc định. Vì vậy, khi bạn mở applet trên khay và bấm Chọn Mạng , sau đó chọn mạng bạn muốn kết nối, nó sẽ yêu cầu người dùng sudo, vì việc tạo kết nối hệ thống chỉ được phép cho quản trị viên.

NHƯNG nếu bạn mở ứng dụng Cài đặt , truy cập Wi-Fi và nhấp vào mạng mong muốn, nó sẽ dễ dàng cho phép bạn kết nối mà không cần mật khẩu quản trị viên. Đi bộ trong công viên.

Tại sao các applet muốn tạo kết nối hệ thống theo mặc định là ngoài tôi, đặc biệt là vì bạn có thể tạo kết nối người dùng một hệ thống bất cứ lúc nào sau đó. Đó là tùy chọn Cung cấp cho người dùng khác trong thuộc tính kết nối và khi bạn kiểm tra và nhấp vào Áp dụng , nó sẽ ngay lập tức yêu cầu mật khẩu sudo. Tôi sẽ cố gắng tìm cách để applet tạo kết nối người dùng theo mặc định, tôi sẽ cập nhật câu trả lời này nếu tôi tìm ra nó.

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.