Mac OS Xには、Macをオンラインセキュリティリスクから保護するためのファイアウォールサービスが組み込まれています。このファイアウォールはOS Xとインターネットの間に位置し、特定のポートからのトラフィックのみを許可します。OS Xはアプリケーションごとにファイアウォールを管理しますが、Macの特定のポートを開きたい場合もあります。
セキュリティ設定で特定のアプリへの着信トラフィックを許可またはブロックできますが、ターミナルで特定のポートを開くこともできます。以前はipfwを使用していましたが、OS X 10.10以降では新しいコマンド pfctl を使用します。
参照
Mac OS X Yosemiteのシステム環境設定の使い方
Macをネットワークに接続し、ネットワーク経由でMac間でファイルを共有する方法
ターミナルのヒントとコツ: 10 のターミナル プロジェクト
Mac OS X ではファイアウォールはどのように機能しますか?
ポートとファイアウォールの概念を理解しておくと役立つかもしれません。ポートとは、Macとネットワーク間の特定の接続であり、ファイアウォールはMacとネットワークの間に設置され、どのポートを開いてどのポートを閉じるかを決定します。MacのIPアドレス(ネットワークへの接続に使用)をホテル、ポートを部屋番号、アプリケーションをゲストと考えてみてください。ファイアウォールをオフにすると、すべてのアプリケーションがすべての領域にアクセスできます。OS Xのファイアウォールは、特定の領域へのアクセスのみを許可します。
OS Xファイアウォールを使用してポートをブロックおよび開く

OS Xのファイアウォールはデフォルトでオフになっています。Appleはセキュリティに非常に力を入れているので、これは奇妙に思えるかもしれません。しかし、ほとんどのコンピュータはもはやDSLモデム経由で直接インターネットに接続するのではなく、インターネットサービスプロバイダ(または企業ネットワーク)が提供するルーターを経由して接続しています。どちらの場合も、通常はNAT(ネットワークアドレス変換)の一部としてハードウェアファイアウォールが提供されます。
もう一つの奇妙な点は、OS Xのファイアウォールがポートを個別に管理するのではなく、アプリケーションごとに管理することです。ファイアウォールオプションにアクセスするには、以下の設定に従ってください。
- システム環境設定を開きます(Apple メニュー > システム環境設定)。
- 「セキュリティとプライバシー」をクリックします。
- ファイアウォールをクリックします。
- [ファイアウォール オプション]をクリックします。
「セキュリティとプライバシー」ウィンドウに、オプションを選択するウィンドウが表示されます。
- すべての受信接続をブロックします。DHCP、Bonjour、IPSecなどの基本的なインターネットサービスを除くすべての接続がブロックされます。このチェックボックスをオンにすると、Dropboxなど、インターネットサービスに依存する他のアプリが動作しなくなります。
- アプリケーション。メインウィンドウには、ステータスが「受信接続を許可」または「受信接続をブロック」となっているアプリケーションのリストが表示されます。ただし、これは送信接続には適用されません。
- 署名されたソフトウェアによる着信接続の受信を自動的に許可します。このオプションはデフォルトで有効になっています。アプリケーションが有効な証明書を持っている場合、ファイアウォールは着信接続を許可します。
- ステルスモードを有効にします。これにより、他の人(またはローカルネットワーク上のコンピュータ)があなたのMacを発見できなくなります。Macはping要求に応答しなくなります。ほとんどのユーザーにとって、これはちょっとした「アルミホイル帽子」のようなものだと思います。
OS Xファイアウォールでアプリケーションのポートを開く方法
OS Xのファイアウォールが有効になっている場合、ファイアウォールの通過を許可する必要のある新しいアプリをインストールすることがあります。アプリを信頼するかどうかはご自身で判断してください。アプリが外部からの接続を受け入れるようにする方法は次のとおりです。
- システム環境設定 > セキュリティとプライバシー > ファイアウォール > ファイアウォールオプションを開きます。
- [追加]をクリックします。
- アプリケーション フォルダーからアプリケーションを選択し、[追加] をクリックします。
- アプリケーションの横にあるオプションが「着信接続を許可する」に設定されていることを確認します。
- [OK]をクリックします。
OS Xはアプリが要求するポートを手動で管理し、それに応じてポートを開きます。OS Xのデフォルトのファイアウォールを使用しているほとんどのユーザーは、手動でポートを開くのではなく、この方法で着信接続を許可またはブロックする必要があります。ただし、Web開発者やシステム管理者など、一部の上級ユーザーにとっては、特定のポートを開く必要がある場合があります。
OS Xファイアウォールで特定のポートを開く方法

OS Xでは特定のポートを開くことができますが、ターミナルを使用する必要があります。OS X 10.10ではpfctlコマンドを使用します( 手順についてはmanを参照してください)。それ以前のバージョンのOS Xではipfwコマンドが使用されていましたが、現在は廃止されています。OS Xで特定のポート(この例では8080)を開くには、以下の手順に従ってください。
- ターミナルを開きます([移動] > [ユーティリティ])。
- sudo pfctl -vnf /etc/pf.confと入力します。
システムの起動時にポートを開くには、sudo nano /etc/pf.confを使用し、この pf.conf ファイルに sudo pfctl -vnf /etc/pf.conf を追加します。
Apple ユーザー向けの技術用語辞書で、Apple 関連の技術用語の定義をお読みください。