次のコマンドを使用して、隠し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
このコマンドは新しいネットワーク構成ファイルを生成します。