*新しい* WiFiネットワークに接続するときにsudoパスワードを削除する


12

そのため、現在、管理者以外のユーザーが新しいWiFiネットワーク(カフェなど)に接続しようとすると、NetworkManagerは管理者ユーザーのパスワードを要求します。これをオフにして、管理者以外のユーザーが好きなWifiネットワークに接続できるようにする方法はありますか?

編集:単に明確にするために、私は本当にコンピューターによって以前に接続したことのない新しい WiFiネットワークを意味するので、既存の接続で「すべてのユーザーが利用可能」をクリックしても問題は解決しません-現在、非管理者ユーザーには問題ありません好きなだけホームネットワークに再接続します。


/etc/sudoersパスワードを要求しないように編集するファイル:help.ubuntu.com/community/Sudoers-Rinzwind
1

私が使用してきましたvisudo(のようないくつかのことを行うために管理者以外のユーザーを許可する前に、sudo apt-get upate例えば用)が、私は確かに私は新しい無線LANネットワークに接続するには、彼らがパスワードの入力を求められてそこに停止することに置かなければならないものではありませんよ
fpghost

あなたは私をそこに連れて行った。メモリからそれを知っていれば、答えになったでしょう(少し検索しているが、まだ見つかりませんでした:D)
-Rinzwind

ええ、someUser ALL=(root)NOPASSWD:/path/to/somethingControllingWiFiこれが実際に進むべき方法であるなら、私が推測する形のものでなければなりません。
fpghost

それは確かです:) ..
リンツウィンド

回答:


14

Ubuntu 13.04で次のソリューションで成功しました。

/usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policyroot / sudo特権で開き、次の行を検索します。

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

その下の数行はこれです:

<allow_active>auth_admin_keep</allow_active>

次のように変更します。

<allow_active>yes</allow_active>

ファイルを保存し、コンピューターを再起動します。


以下の@harlemsquirrelの回答を参照してください。debパッケージなどに許可を簡単にまとめることができます。また、上記のアプローチは、dpkgによって管理されるファイルを編集するため、更新などによってリセットされる可能性があります。
vidstige

1
確かなアドバイスですが、sudo service network-manager restartを使用してネットワークを再起動する必要があります。
バイス

4

エラーの解決方法:システムポリシーは、すべてのユーザーのネットワーク設定の変更を禁止します

上記の答えには重要なステップがないため、ここに含めます。:)

これはUbuntu 14.04 LTSおよび16.04 LTSで動作します

  1. ターミナルを開く

  2. suからroot

    su -
    
  3. 次を入力します。

    nano /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
    
  4. ファイルの終わりに向かって、次のラベルが付いたセクションを見つけます

    <action id="org.freedesktop.NetworkManager.settings.modify.system">
    
  5. org.freedesktop.NetworkManager.settings.modify.systemセクションの下部で、次のコード行を見つけます。

    <allow_active>auth_admin_keep</allow_active>
    
  6. この行を次のように変更します。

    <allow_active>yes</allow_active>
    
  7. を使用してファイルを保存します。

    ^X
    
  8. 回答 「(ノー保存答えるバッファ変更『』 CHANGESを破壊する)を?」型付け

    Y
    
  9. 次のプロンプトが表示されたらEnterを押します。

    File Name to Write: /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
    
  10. 再起動します。

:)


3

このためのローカルポリシーを作成することもできます

[ユーザーの生徒にネットワークのシステム設定を変更させます]
Identity = unix-user:pupil
Action = org.freedesktop.NetworkManager.settings.modify.system
ResultAny = no
ResultInactive = no
ResultActive = yes

というファイルに/etc/polkit-1/localauthority/50-local.d/10-network-manager.pkla

ここでの利点は、これが単一のコマンドであり、スクリプトで使用できることです!

printf "[ユーザーの生徒がネットワークのシステム設定を変更できるようにする] \ nIdentity = unix-user:pupil \ nAction = org.freedesktop.NetworkManager.settings.modify.system \ nResultAny = no \ nResultInactive = no \ nResultActive = yes" | sudo tee /etc/polkit-1/localauthority/50-local.d/10-network-manager.pkla

参照:Ubuntu Manpage:pklocalauthority


これが正しい解決策です
vidstige

2

これは実際に私が望んでいた修正ではありませんが、私が見つけた回避策の1つは、単にNetworkManager一緒に無効にして代わりに使用することWicdです。

NetworkManager起動時に最初に実行を停止します。

sudo gedit /etc/NetworkManager/NetworkManager.conf

次に、#managed行を削除します。また##start on (local-filesystems and started dbus)から/etc/init/network-manager.conf。次に、念のために

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  

これで使用できるようにWicdなり、パスワードプロンプトが不要になりました。


0

システム構成ファイルを編集できますが、それは総当たりです。第一に、経験則として、設定は、で/etcはない/usr/varまたは他の場所にあります。HarlemSquirrelは、デフォルトポリシーを適切に変更する方法を説明しました。/usrこれらのファイルはシステムパッケージによって提供され、最終的には更新/置換されるため、ファイルの編集は遅かれ早かれあなたの顔に吹き飛ばされることが保証されています。

しかし、最大の問題は、少なくとも18.04の時点では、これらの変更が完全に不要であることです。これは「間違っている」という問題です。実際、それはNMアプレット側のユーザビリティの問題ですが、とにかくです。を見て/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>

意味のあるユーザーは接続を作成できませんよね?違う!さらに見て:

  <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>

ご覧のとおり、NetworkManagerはユーザー接続とシステム接続の概念をサポートしています。問題は、アプレットがデフォルトでシステム接続を作成することです。そのため、トレイでアプレットを開いて[ネットワークの選択 ]をクリックし、接続先のアプレットを選択すると、システム接続の作成は管理者のみに許可されるため、sudoユーザーが要求されます。

ただし、設定アプリを開いてWi-Fiにアクセスし、目的のネットワークをクリックすると、管理者パスワードなしで簡単に接続できます。公園で散歩する。

アプレットがデフォルトでシステム接続を作成したいのはなぜですか、特にユーザー接続をいつでもシステムに接続できるためです。それはだ、他のユーザーに利用できるように接続プロパティでオプション、そしてあなたがそれをチェックして、クリックしたときに適用することが必要として、それはすぐに、sudoのパスワードの入力をお願いします。アプレットがデフォルトでユーザー接続を作成する方法を見つけようとします。それがわかったら、この回答を更新します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.