다음 명령을 사용하여 숨겨진 Wi-Fi 네트워크에 연결하는 방법을 알아냈습니다.
nmcli c add type wifi con-name $ssid ifname $adapter ssid $ssid
nmcli con modify $ssid wifi-sec.key-mgmt wpa-psk
nmcli con modify $ssid wifi-sec.psk $password
nmcli con up $ssid
위 코드에서는 명확성을 위해 연결 이름이 SSID와 동일한 이름으로 설정되었습니다.
하지만 이를 위해서는 Wi-Fi 인증 유형을 알아야 합니다.
SSID를 브로드캐스팅하는 AP에 연결할 때 네트워크 관리자는 어떤 유형의 인증이 사용되고 있는지 파악할 수 있는 것으로 보이므로 다음을 사용하여 비밀번호를 제공하면 됩니다.
nmcli -w 30 device wifi connect $ssid password $password ifname $adapter
nmcl
인증 유형을 지정할 필요가 없는 숨겨진 AP에 연결하는 것과 유사하게 비밀번호, SSID 및 장치만 제공하고 인증 유형은 제공하지 않아도 되도록 숨겨진 Wi-Fi AP에 연결하는 방법이 있습니까 ?
답변1
nmcli
와 함께 사용할 경우 옵션을 로 설정해 device wifi connect
보세요 .hidden
yes
매뉴얼에서 발췌[1]:
wifi connect (B)SSID [password password] [wep-key-type {key | phrase}] [ifname ifname] [bssid BSSID] [name name] [private {yes | no}] [hidden {yes | no}]
Connect to a Wi-Fi network specified by SSID or BSSID. The command finds a matching connection or creates one and then activates it on a device. This is a
command-line counterpart of clicking an SSID in a GUI client. If a connection for the network already exists, it is possible to bring up (activate) the existing
profile as follows: nmcli con up id name. Note that only open, WEP and WPA-PSK networks are supported if no previous connection exists. It is also assumed that
IP configuration is obtained via DHCP.
If --wait option is not specified, the default timeout will be 90 seconds.
Available options are:
[...]
hidden
set to yes when connecting for the first time to an AP not broadcasting its SSID. Otherwise, the SSID would not be found and the connection attempt would
fail.
[1]: https://developer.gnome.org/NetworkManager/stable/nmcli.html
답변2
일반적 nmcli device wifi connect "$SSID"
으로 이것이 해결책입니다. 아직 존재하지 않는 경우 새 구성 파일이 생성됩니다.
그러나 이를 위해서는 NetworkManager가 스캔 결과에서 네트워크를 찾아야 하며, 그렇지 않으면 어떤 설정을 해야 할지 알 수 없습니다. 네트워크가 숨겨져 있으므로 존재하지 않을 수도 있습니다. 이 문제를 해결하려면 먼저 SSID를 명시적으로 검색하여 nmcli device wifi rescan ssid "$SSID"
검색 결과( )에서 찾을 수 있도록 하세요 nmcli device wifi
.
실제로 올바른 해결책은 user234931이 말한 것이어야 nmcli device wifi connect "$SSID" hidden yes
하지만( ) 실제로 작동하는지 확실하지 않습니다. 그럴 수도 있고, 그렇지 않으면 NetworkManager에서 수정해야 합니다. :)
답변3
숨겨진 네트워크를 사용하지 않고 새 프로필을 추가하기 위해 계속 검색하는 사용자의 경우 "wifi.hiden"이라는 속성을 사용할 수 있습니다.
nmcli 도구, 버전 1.36.6
nmcli con add con-name test666xx type wifi wifi.hidden false ssid hahahhaha
이 명령은 새로운 네트워크 구성 파일을 생성합니다.