特定のアクセスポイント(SSID)のみ許可して無線LANの接続を制限する設定方法
目次
無線LANを使っているWindows PCで不要なSSIDを非表示にして特定のアクセスポイントにしか接続ができないようにする方法をメモ。
接続を許可したアクセスポイントのみ無線LANを使えるようにしたい
使用しているノートパソコンの無線LANが隣近所の家庭や公共無線LANや野良APを拾ってきたりします。これが善意のアクセスポイントであればいいのですが、悪意のある無線LANアクセスポイントであれば、繋がってラッキーと思っていても実は罠でPCを覗かれたり、ウィルスに感染するかもしれません。
そこで、特に外で使うことがなく、決まったアクセスポイントしか使わない場合は接続するアクセスポイントだけ接続を許可することができるようです。ドメイン環境であればグループポリシーで設定することもできるようですが、ここでは無線LAN用のNetshコマンドでパソコンに設定します。会社で使用するPCは社内のアクセスポイントしか選択できないようにしたいときなど、無線アクセスポイントのホワイトリストをコマンドを使ってSSIDのフィルター設定をする方法です。
Windows 10/8.1/7で使用できます。
コマンドで特定のSSIDのみ許可する方法
- 管理者権限でコマンドプロンプトを起動
- 以下のコマンドでフィルターを追加
netsh wlan add filter permission=denyall networktype=infrastructure netsh wlan add filter permission=allow ssid=許可するSSID networktype=infrastructure
これで、許可したSSIDのアクセスポイントだけ接続できるようになります。
※SSID名に半角スペースが入っている場合は許可するSSIDをダブルクォーテーションで囲って指定してください。
複数のアクセスポイントを登録する場合は、上記2行目のコマンドを必要な分だけ実行すれば追加できます。
すべてのアクセスポイントの接続を拒否する場合のコマンド
PCの無線LANデバイスは有効でも、絶対に無線LANを使わせない設定にしたいときは上記の1行目と同じコマンドで、以下の1行のみで実現できます。これにより接続可能なAPはすべて表示されなくなります。
netsh wlan add filter permission=denyall networktype=infrastructure
フィルターの登録状況を確認するコマンド
フィルターを登録したのに、許可したアクセスポイントに接続できない場合はSSIDの名前が間違っているかもしれません。以下のコマンドで登録したフィルターを確認できます。
netsh wlan show filters
フィルターを削除するコマンド
登録するときにadd
とした部分delete
に変えてコマンドを実行します。
すべてのフィルターを削除するコマンド
netsh wlan delete filter permission=denyall networktype=infrastructure
一部のフィルターを削除するコマンド
間違えて登録したりして一部のフィルターだけ削除する場合はそのSSIDを指定して消します。
netsh wlan delete filter permission=allow ssid=削除したいSSID networktype=infrastructure
逆に一部のAPだけ拒否するコマンド
ちなみに一部のアクセスポインだけを拒否したい場合は以下のようになります。複数のアクセスポイントをブロックしたい場合は、同じようにSSIDを指定して複数回登録していきます。
netsh wlan add filter permission=block ssid=ブロックしたいSSID networktype=adhoc
周辺のSSIDを調べるコマンド
周辺のアクセスポイントのSSIDは以下のコマンドで調べることができます。
netsh wlan show networks | findstr "SSID"
参考ページ