Windowsマシンで開いているポートがわかったら、もう大丈夫です。難しいことではありませんが、時々少し面倒だったり、分かりにくかったりすることもあります。そんな時に役立つのがコマンドプロンプトです。コマンドプロンプトに数行入力するだけで、システムで開いているポートをかなり明確に把握できます。ネットワークの問題のトラブルシューティングや、セキュリティ設定の再確認に便利です。特に、新しいアプリをインストールした後やネットワーク設定を微調整した後に確認する場合に便利です。開いているべきではないポートが目立つ場合もあり、その見分け方を知っておくと、後々面倒な手間を省くことができます。
Windowsで開いているポートを確認する方法
どのポートがリッスンしているかを把握するのはそれほど難しくありませんが、コマンドラインに慣れていない場合は、いくつか問題に直面するかもしれません。最善の方法は、コマンドプロンプトを使うことです。慣れていない場合は、 「スタート」ボタンを押して入力するだけでcmd、すぐにプロンプトが表示されます。そこから簡単なコマンドを実行するだけで、必要な情報がすべて表示されます。ここでの目標は、どのポートが「リッスン」しているか、つまり接続を待機しているかを確認することです。これにより、誤って公開されている可能性のあるサービスを特定するのに役立ちます。
方法1:netstat -anコマンドを使用する
これは典型的なやり方です。このnetstat -anコマンドは、アクティブなTCP/IP接続とリスニングポートのリストをダンプします。当然のことながら、Windowsは難解な情報を使って、必要以上に分かりにくくする必要があります。そのため、「LISTENING」という行が表示されますが、これが開いているポートです。次のような出力になります。
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING TCP [::]:443 [::]:0 LISTENING UDP 0.0.0.0:123 *:*
これにより、何がアクティブになっているかの背景情報が得られます。開いているべきではないポートを見つけた場合は、さらに詳しく調査する必要があります。
方法2: Windows PowerShellで確認する
PowerShellに慣れている方、あるいは単に変化をつけたい方は、PowerShellでも同様の情報が表示されます。場合によっては、より多くの書式設定オプションが使える場合もあります。PowerShellで以下を入力してください。
Get-NetTCPConnection | Where-Object {$_. State -eq "Listen"}
これはリスニングポートを特にフィルタリングするため、開いているポートを見つけやすくなります。なぜ時々機能して、時々機能しないのかは分かりませんが、設定によってはPowerShellの出力がより明確な場合があります。さらに、必要に応じて、他のコマンドにパイプしたり、ファイルにエクスポートしたりすることも可能です。
これらのコマンドを実行した後に何が起こるか
いずれかのコマンドを実行すると、アクティブなポート、そのアドレス、および状態のリストが表示されます。特に注目すべきは「LISTENING」エントリです。これらは接続を待機しているアクティブなポートです。開いているポートの中には、Webサーバーのポート80のように不可欠なものもありますが、古いアプリやマルウェアの残骸である場合もあります。定期的に確認することで、攻撃対象領域を小さく保つことができます。
追加のヒント – ポートをクリーンアップまたは閉じる
開いているはずのないポートが見つかった場合、通常はファイアウォールの設定を変更するのが解決策です。Windows Defenderファイアウォール(「設定」>「更新とセキュリティ」>「Windows セキュリティ」>「ファイアウォールとネットワーク保護」 )を開き、 「詳細設定」を選択して、そのポートをブロックする受信規則を作成します。あるいは、冒険したい場合は、タスクマネージャーまたはServices.mscを使って、そのポートでリッスンしているサービスを停止してみるのも良いでしょう。ただし、システムにとって重要なサービスもあるので注意してください。
もう1つの方法は、CurrPorts や TCPView などのサードパーティ製ツールを使用して、よりGUI指向のビューを表示することです。視覚的にわかりやすく、入力作業も少なく、どこで何が実行されているかが簡単にわかる場合もあります。
つまり、基本的に、自分のマシンで何が開いているかを把握するだけで、セキュリティを確保したり、ネットワークの異常を診断したりするのに役立ちます。設定によっては、コマンドラインは最初は少し扱いにくいかもしれませんが、少し辛抱すれば、すぐにチェックできるようになります。
Windowsで開いているポートを確認するためのヒント
- 定期的に実行してください
netstat -an。もちろん、気付かれないうちに隠しポートが潜んでいる可能性があるためです。 - よりクリーンでカスタマイズ可能なビューを得るには、PowerShell コマンドを使用します。
- ファイアウォールの設定を頻繁に確認し、疑わしいものはすべて閉じるかブロックしてください。
- Windows を最新の状態に保ってください。セキュリティ パッチはポート管理に役立ちます。
よくある質問
コンピューターにおけるポートとは一体何でしょうか?
基本的には、システムが他のデバイスやサービスと通信するために使用するドアです。中には玄関ドアのように開いたままにしておくべきものもあれば、閉じたままにしておくべきものもあります。
開いているポートをなぜ確認する必要があるのでしょうか?
悪意のある侵入者からパソコンを守りたいなら、開いているポートを把握しておけば、不要なポートを閉じることができます。これは防御の層です。
自分でポートを閉じることはできますか?
はい、通常はファイアウォールルールを適用するか、そのポートでリッスンしているサービスを停止することで対応できます。ただし、一部のポートはWindowsや重要なアプリにとって非常に重要なので注意してください。
開いているポートはすべて悪意のあるものなのでしょうか?
いいえ。ほとんどは完全に合法です。でも重要なのは、どれが営業しているはずで、どれがそうでないのかを見極めることです。
「LISTENING」とは実際にはどういう意味でしょうか?
これは、ポートがアクティブで、接続を受け付ける準備ができていることを意味します。まるで誰かが入ってくるのを待っている、開いたドアのようなものです。
まとめ
- コマンドプロンプトまたは PowerShell を開きます。
- 入力する
netstat -anか、PowerShell の を使用しますGet-NetTCPConnection。 - 「LISTENING」のエントリを探します。
- どのポートが開いているか、また開いている必要があるかどうかを識別します。
- ファイアウォール ルールまたはサービス停止を介して不要なポートを閉じます。
まとめ
開いているポートをpingで確認するのは、決して楽しいことではありませんが、非常に重要です。コマンドに慣れれば、裏側を覗いて何がアクティブになっているかを確認するのが簡単になります。そうすれば、何かおかしなことが起きたらすぐに気づいたり、すぐに対処したりできます。理由は必ずしも明確ではありませんが、私の経験では、この簡単なチェックは、突然ネットワークに問題が発生したときに本当に役立ちます。