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

*이 코드는 데모용입니다(테스트되지 않았으며 작동하려면 조정이 필요할 수 있음). 사용하기 전에 각 명령에 대한 매뉴얼 페이지를 읽으십시오.

관련 정보