macOS のファイアウォールがアプリの外向き接続を止められない理由
macOS にはファイアウォールが標準で搭載されており(システム設定 → ネットワーク → ファイアウォール)、オンにしておく価値があります。ただし、これが対象とするのは受信接続です。どのアプリが他のコンピュータからの接続を受け付けてよいかを決めるものであり、外向き接続の設定はありません。そのため、Mac 上のアプリがインターネット上のサーバに接続するのを止めることはできません。
疑問の多くは外向きの通信にあります。バックグラウンドで勝手に通信しているアプリはどれか。無料ユーティリティはデータをどこへ送っているのか。アプリをあえてオフラインで使いたい、あるいは古いバージョンのまま更新を促されたくない、ということは可能か。そのために必要なのが外向き通信用のファイアウォールであり、Tidy My Mac の Firewall がまさにそれです。
インターネットに接続しているアプリを確認する
Firewall を開くと、アプリが外向き接続を開くたびに Recent Connections タブに表示が追加されていきます。1 行が 1 つのアプリで、アイコンと名前、その下に接続先のリモートアドレスとポートが新しい順に並びます。その行にカーソルを合わせると、すべてを確認できます。
- 現在接続を開いているアプリには、3 open のように接続数が表示されます。通信が止まっているアプリには、最後に確認された時刻が表示されます。
- macOS の一部であるアプリには macOS と表示されるので、自分でインストールしたアプリと見分けられます。
- 接続はプロセス単位ではなく、アプリ単位でまとめられます。ブラウザなどのアプリは、バンドル内のヘルパープロセスで通信の多くを行いますが、それらは所属するアプリの下に表示されます。
curlや Homebrew のコマンドなど、アプリバンドルの外にあるツールは、それぞれの名前で表示されます。
一覧は Firewall 画面を開いている間、数秒ごとに確認して収集され、ご自身のアカウントで実行中のアプリが表示されます。バックグラウンドでは動作しないので、見ていないときは負荷がかかりません。表示のためにファイアウォールをオンにする必要はありません。
ワンクリックでアプリのインターネット接続をブロックする
Recent Connections 内の任意のアプリで Block をクリックするか、複数を選択して Block Selected をクリックします。まだ接続していないアプリをブロックするには、Blocked Apps を開き、Add App… をクリックして、アプリケーションフォルダから選びます。
ブロックされたアプリは、新しい外向き接続を開けなくなります。ブロックはヘルパーを含むアプリ全体に適用されます。ブラウザをブロックすると、そのバンドル内のすべてのプロセスがブロックされます。ブロックした時点ですでに開いていた接続は、閉じるまで維持されます。すべてを一度に切断するには、アプリを終了して開き直してください。
Blocked Apps タブには、ブロックしたすべてのアプリとその日時が一覧表示されます。Unblock をクリックすると、次の接続からオンラインに戻ります。リストの内容にかかわらず、Tidy My Mac が自分自身をブロックすることはありません。
しくみ
Firewall は、Apple の Network Extension フレームワーク上に構築されたシステム機能拡張である、ネットワークコンテンツフィルタです。macOS が新しい外向き接続のたびにそれを拡張機能に渡し、拡張機能はどのアプリが開いた接続かを調べて、そのアプリがブロックリストにあれば接続を破棄します。接続の中身は一切見ません。受信接続は macOS のファイアウォールに任されています。
| 手順 | 動作 |
|---|---|
| Turn On | macOS から、システム設定 → 一般 → ログイン項目と拡張機能 → ネットワーク拡張機能で Tidy My Mac の拡張機能を許可するよう求められ、続いてネットワークコンテンツのフィルタを許可するか尋ねられます。最初のアプリをブロックすると、ファイアウォールは自動的にオンになります。 |
| Block / Unblock | 新しいリストは追加の確認なしですぐに拡張機能へ届き、次の接続から適用されます。 |
| Turn Off | フィルタリングは停止し、ブロックリストは保持されます。リスト内のアプリは、再びオンにするまで Not enforced と表示されます。 |
macOS は、アプリケーションフォルダ内のアプリのシステム機能拡張しか実行しないため、ファイアウォールを起動するには Tidy My Mac がそこに置かれている必要があります。
知っておくと便利なこと
- アプリは、ディスク上の場所で照合されます。ブロックしたアプリを移動したり名前を変更したりすると、ブロックは解除されます。新しい場所から追加し直してください。
- 一部のアプリは、自分で接続せずに、ダウンロードを macOS のバックグラウンドサービスに任せます。その通信はアプリではなく macOS のサービスのものになるため、アプリをブロックしても止まりません。
- Firewall はアプリ単位で判断し、サイト単位では判断しません。特定のサイトをすべてのアプリに対してブロックするには、Web Protection を使用してください。
接続一覧とブロックリストは Mac の中にとどまります。Firewall が私たちに送信するものはありません。プライバシーポリシーにはアプリが行うすべてのリクエストが記載されていますが、Firewall によるものはありません。
Firewallに関するよくある質問
標準では搭載されていません。macOS のファイアウォールは、どのアプリが受信接続を受け付けてよいかを制御するもので、外向き接続のオプションはありません。Tidy My Mac は、選んだアプリをブロックする外向きファイアウォールを追加します。macOS のファイアウォールもオンのままにしておいてください。Security Settings のページで、オンになっているかを確認できます。
はい。ブロックは、macOS が単独で実行するネットワーク拡張機能が行うため、アプリを閉じていても、再起動後も、ブロックしたアプリはブロックされたままです。Firewall 画面を開いている必要があるのは、最近の接続の一覧だけです。
いいえ。ポップアップは表示されません。ブロックしない限りすべてのアプリが許可され、新しいアプリは Recent Connections に表示されるだけです。必要であればそこからブロックできます。
Firewall に表示されるのは、macOS が報告するとおりの、各アプリの接続先の IP アドレスとポートであり、サイト名ではありません。サイトを名前で確認してブロックするには、すべてのアプリを対象にできる Web Protection を使用してください。
いいえ。接続を開いたアプリで判断し、送信される内容は見ません。接続に関する情報が Mac の外に出ることもありません。
すべてのセクションを7日間無料でお試しください。
必要なのはメールアドレスだけで、クレジットカードは不要です。その後は、最初の1年間が$19.99、2年目以降は年間$59.99です。
無料トライアルを始める