
私は、WPA2-Enterprise ワイヤレス ネットワークである eduroam を導入している大学の学生です。私のアカウントでは、NetworkManager を使用して設定されています。概要は次のとおりですnm-connection-editor
。
「すべてのユーザーがこのネットワークに接続できます」と表示して、これがシステム接続であることを確認しました。実際には、これは機能しません。
Awesome WM セッションに自動的にログインすると、(GNOME?) キーリングがロック解除されません。接続を試みる前にパスワードを要求されます。これは煩わしいです。いずれにしてもディスクは暗号化されています。したがって、パスワードを として保存したいと思います
root
。KDE で別のアカウントにログインすると、接続が機能しません。
したがって、ここでは 2 つの潜在的な問題があると考えます。
証明書ファイルはホーム ディレクトリにあります。他のユーザー アカウントはホーム ディレクトリを読み取ることができません。その証明書を中央の場所に移動すれば (おそらくそうでしょ
/usr/share/
う)、証明書がなくなるため、他のアカウントもこれを使用できるようになります。パスワードはホーム ディレクトリのローカル キーリングに保存されます。パスワードはシステム全体で保存する必要があります。
とにかく設定ファイルがありません。私は読むNetworkManagerはD-Bus経由で通信するサービスにデータを保存します。そのため、データは保存されます。どこか。
これを、システムのすべてのユーザーに対して自動的に機能するシステム全体の構成にするにはどうすればよいでしょうか?
気になるなら、ディストリビューションは Fedora 24 です。
答え1
接続するにはエデュロアム、(機関/連盟間でユーザーがローミングできる世界規模の Wi-Fi ネットワークの学術連合) を Linux で実行するには、 を設定する必要がありますwpa_supplicant
。
指示とファイルは、学部やEDUROAMの国レベルに少し特化していることが多いです。そこで、EDUROAMの設定をドイツ語で記載したページにリンクします。802.1XDE 連盟で。
次のような内容になるはず/etc/wpa_supplicant.conf
です:
ネットワーク={
ssid="eduroam"
key_mgmt=WPA-EAP
eap=TTLS
アイデンティティ="[メールアドレス]" # ログイン
domain_suffix_match="radius.lrz.de" # ローカル RADIUS サーバー
subject_match="radius.lrz.de" # ローカル RADIUS サーバー
anonymous_identity="[メールアドレス]" # ログイン、または匿名の汎用ログイン
password="XXXX" # パスワード ca_cert="/etc/ssl/certs/Deutsche_Telekom_Root_CA_2.pem"
phase2="auth=PAP"
}
domain_suffix_match
これらはセキュリティ上の理由から存在します。たとえばsubject_match
、偽装された RADIUS サーバーではなく、実際の RADIUS サーバーに接続することを確認するためです。ローカル RADIUS サーバーの名前がわからない場合は、wpa_supplicant
これら 2 つのディレクティブを使用せずに作業してみてください。
自動インストーラーがインストールされている場合もあります。猫(eduroam 構成アシスタント ツール) のセットアップは、学部によって異なりますが、役に立つかもしれません。(学部が CAT ページを作成している場合)
詳細については、所属学部のローカル RADIUS/EDUROAM 常駐エキスパートにご相談ください。
答え2
「すべてのユーザーがこのネットワークに接続できます」について
これにより、 の "connection.permissions" オプションが設定されますman nm-settings
。これにより、システム ユーザーのみが接続を変更、表示、および使用できることが制御されます。また、ユーザーがログインしている場合にのみ接続が自動的に接続されることを意味します。通常の 1 ユーザー システムでは、設定はあまり重要ではありません (ログイン前に接続を自動接続する場合を除く)。
パスワードについて
各パスワード プロパティ (WPA PSK、VPN シークレットなど) について、NetworkManager は「フラグ」属性をサポートしています。この属性により、パスワードをシステム全体 (プレーン テキスト、ルートのみがアクセスできるファイル) に保存するか、ユーザー セッションから取得するか、常に確認するか、または不要にすることができます。secrets
のセクションを参照してくださいman nm-setttings
。いずれにしても、NM が持っていないパスワードを必要とするときはいつでも、別のプログラムにパスワードを取得するよう依頼する必要があります。そのプログラムはいわゆる「シークレット エージェント」で、ユーザーにパスワードの入力を求めるか、キーリングなどからパスワードを取得できます。このようなプログラムには、たとえばnm-applet
、、、nmcli
などgnome-shell
がありますplama-nm
。したがって、通常、KDE や Gnome などのグラフィカル セッションを実行するときは、このようなエージェントが実際に実行されています。また、ログイン前に自動接続する場合は、パスワードをシステム全体 (プレーン テキスト) に保存するか、シークレットをどこかから取得するシークレット エージェントを何らかの方法で設定する必要があります (後者の場合は自分で何かをハッキングする必要がありますが、いずれにしても、誰もログインしていないため、パスワードをどこから取得するかは不明です)。
パスワード フラグ、つまりパスワードの場所を構成する方法については、さまざまな NM クライアントで行うことができます。nm-connection-editor
上のスクリーンショットのように使用すると、パスワード入力フィールドに小さなアイコンが表示されます。それをクリックして、必要なものを選択します。
たとえば、Gnome3 では、キーリングをユーザー パスワードと同じパスワードで設定すると、ユーザーがログインしたときにキーリングが自動的に非表示になることに注意してください。このような設定により、キーリングにパスワードを保存し、gnome セッションの開始時に自動的に接続することができます。詳細は異なる場合があり、おそらく KDE でも同様のことが機能します。
証明書ファイルについて
NetworkManager のすべての証明書は、インラインまたはパスとして保存できます。インラインはあまり良くなく、実際、nm-connection-editor ではパスの指定しかできません。パスの使用も問題があります。NetworkManager (および wpa-supplicant と VPN プラグイン) は別のユーザーとして実行されるため、NetworkManager がファイルにアクセスできることを自分で確認する必要があります。実際には、たとえば、証明書に適切な SELinux ラベルが付けられていることを確認する必要があり、証明書を にコピーする必要があります~/.cert
。これは、将来的には証明書マネージャー (NetworkManager の外部) を用意し、ファイル (パス) を渡す代わりに、pkcs11 URL を使用してストア内の証明書を参照することで改善されるでしょう。
接続が保存される場所については
それは、構成されている設定プラグインによって異なります ( を参照plugins
) man NetworkManager.conf
。Fedora では、これはifcfg-rh,keyfile
デフォルトを意味します。したがって、接続はifcfg-rh
形式 ( man nm-settings-ifcfg-rh
、を参照) であり、次にキー ファイル形式 ( 、を参照)/etc/sysconfig/networking-scripts/ifcfg-rh*
であることが推奨されます。man nm-settings-keyfile
/etc/NetworkManager/system-connections
KDE が Gnome と異なる動作をするのはなぜかは明らかではありません。おそらく、シークレット エージェント ( gnome-shell
vs. plasma-nm
) とキーリングの設定に何か問題があるのでしょう。