web-dev-qa-db-ja.com

wpa_supplicant設定を自動的に適用する方法は?

企業ネットワークで認証するには、次のコマンドを実行する必要があります。

$ Sudo wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

ロードされた構成スクリプトは次のようになります。

# global configuration
ctrl_interface=/var/run/wpa_supplicant
#ctrl_interface_group=wheel
ap_scan=0

# 802.1x wired configuration    

# eap-ttls
network={
    key_mgmt=IEEE8021X
    eap=TTLS
    identity="[email protected]"
    anonymous_identity="[email protected]"
    password="password"
    ca_cert="/home/user/deutsche-telekom-root-ca-2.pem"
    phase2="auth=PAP"
    eapol_flags=0
    priority=5
}

# eap-peap
network={
    key_mgmt=IEEE8021X
    eap=PEAP
    identity="[email protected]"
    anonymous_identity="[email protected]"
    password="password"
    ca_cert="/home/user/deutsche-telekom-root-ca-2.pem"
    phase2="auth=MSCHAPV2"
    eapol_flags=0
    priority=10
}

設定なしでnot DHCP経由で割り当てられたIPアドレスを取得します。
どうすれば自動的に起動時にこの構成を適用できますか? Ubuntu14.10を実行しています。

2
JJD

コマンドを/etc/rc.localに置くだけです。それが単一の行にあることを確認してください。

Sudo wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

接続は安定していて、切断されていないと思います。接続が切断された場合はコメントしてください。スクリプトを作成します。今寝なければならない。

1
PNDA

起動時にその構成を使用してwpa-supplicantを実行する場合は、コマンドをrc.localに配置する必要があります。
rootとして、テキストエディタで/ etc/rc.localを開き、コマンドを貼り付けます。

wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

Systemdが実行されていることを確認してくださいrc.local

Sudo systemctl enable rc-local

再起動します。動作するはずです。

編集:

それができない場合は、独自のsystemdルールを作成することもできます。

まず、wpa-supplicantコマンドを/ usr/local/bin/ optなどの適切な場所に保存し、実行可能にします。
ファイルは次のようになります。

#!/bin/sh
wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

あなたがそれを呼んだとしましょうwpastart.sh
ここで、/ usr/lib/systemd/systemにファイルを作成し、wpa.serviceのような名前を付けます。
空のファイルをテキストエディタで開き、次のようにします。

[Unit]
Description=WPA Supplicant Startup

[Service]
Type=idle
ExecStart=/usr/local/bin/wpastart.sh

[Install]
WantedBy=multi-user.target

通常どおりサービスを開始します。

systemctl enable wpastart.service

これで、最初のsystemd起動スクリプトを作成しました。