私はMacOS(実際にはBSD)を実行しており、ローカルフォワーディングを使用してSSHトンネルを介していくつかのトラフィックをリダイレクトしたいと思います。非常に簡単に見えますが、あいまいな "/etc/pf.conf:29: Syntax error" メッセージは毎回繰り返しブロックされます。私はこれまでこの規則を30回以上繰り返したでしょう。また、構文とリダイレクトに関するOpenBSDパケットフィルタ情報も読みました。私はBSDパケットフィルタに関して混乱し、私よりスマートな人の助けを探しています。
目標は、ローカルコンピュータからインターネット上のコンピュータへのすべてのトラフィックをポート1234に切り替え、トラフィックを127.0.0.1:1234にリダイレクトすることです。私の特定のオペレーティングシステムはOS X 10.10.2 Yosemiteです。
これは、pfctlに「構文エラー」を返すルールの最新の反復です。
pass out quick on en6 from any to en6 port 1234 rdr-to 127.0.0.1 port 1234
ドキュメントやインターネットの他のブログによると、このルールは正しいようですが、pfctlはこれに同意しません。
ドキュメントの私の理解に基づいて、分析は次のとおりです。
pass
- トラフィックを転送するタスク
out
- トラフィックフローの方向 - パケットがこのルール
quick
と一致すると、チェーンの最後のルールと見なされます
on en6
。 - ルールが適用されるインターフェイス
from any
- パケットソース(常に私 -to en6 port 1234
インターフェイスのすべてのエントリはポート1234に送信されます。)
rdr-to 127.0.0.1 port 1234
- パケットをこのインターフェイスにリダイレクトします。
答え1
できます:
rdr pass quick on $ext_inf inet proto tcp from any to any port 1394 -> $target port 1394