Linux debianへのアクセスポイントの自動追加

Linux debianへのアクセスポイントの自動追加

複数のLinuxシステムに複数のAPとパスワードを追加し、これを自動化する必要があります。最近、私は/etc/NetworkManager/system-connections/システム生成ファイルと同じファイルに設定を書くbashスクリプトを書いています。しかし、成功しませんでした。

例:

AP.txtMACアドレス、SSID、およびパスワードを含むファイルがあります。

xx:xx:xx:xx:xx:x1;ssid1;pass1
xx:xx:xx:xx:xx:x2;ssid2;pass2
xx:xx:xx:xx:xx:x3;ssid3;pass3
xx:xx:xx:xx:xx:x4;ssid4;pass4

そして複数のマシン:

pc1
pc2
pc3
...

各コンピュータが最も近いAPに自動的に接続できるように、これらのAPを自分のコンピュータに自動的に追加するスクリプトを作成したいと思います。

答え1

ルートSSHキー設定とローカルに生成されたテンプレートがあるとし、統計に使用します。

for HOST in $HOSTS ; do
    scp wifi-templates/* $HOST:/etc/NetworkManager/system-connections/
    ssh $HOST 'U=$(ls -1 /home/ | head -n 1); perl -pi -e "s/(permissions=user:)you(:;)/$1'$U'$2/g" /etc/NetworkManager/system-connections/*'
done

金型;

while read L ; do
    SSID=$(echo $L | cut -d ";" -f 1)
       N=$(echo $L | cut -d ";" -f 2)
    PASS=$(echo $L | cut -d ";" -f 3)
    cp template $N
    perl -pe 's/SSID/'$SSID'/g;s/PASS/'$PASS'/g' $N
done < AP.txt

*このコードはデモ用です(テストされておらず、機能するには調整が必要な場合があります)。使用する前に、各コマンドのマニュアルページをお読みください。

関連情報