問題タブ [iptables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
701 参照

linux - localhost にリダイレクトされた tcp パケットを読み取る方法は?

iptables (PREROUTING) を使用して、すべての TCP トラフィックをローカル ポートにリダイレクトします。

ここで、C プログラムを使用してこれらのパケットをキャプチャしたいと考えています。さまざまなソケットのバリエーション (UDP / TCP / ...) を試しましたが、iptables で指定したポートを使用して localhost に接続できません。

すべてのパケットがリダイレクトされていることを確認できますが、このトラフィックをキャプチャするにはどうすればよいですか?

これらは私のルールです(そのAndroidですが、違いはありません...):

私はすでに TCP/UDP/RAW ソケット (「ローカル」/UNIX ソケットについても考えましたが、そのアドレスは何ですか?) と ServerSocket / DatagramServer を作成しようとしましたが、何も受け取りませんでした...

ありがとう!!

0 投票する
5 に答える
111249 参照

iptables - 1 つのルールで複数のマルチポートを設定する iptables

マルチポート拡張では、指定できるポート数に制限(15)があります。

しかし、1 つのルールでさらに多くのポート番号を指定する必要があるため、次のように 1 つのルールで複数のマルチポートを使用しようとしました。

の結果iptables -L INPUT -n

しかし、クライアントから接続しようとすると、両方のポートが拒否されないことがわかりました。

バージョンは v1.4.2-rc1 です。

回避策はありますか、または 1 つのルールで 15 を超えるポートを指定する必要がある場合はどうすればよいですか。

0 投票する
1 に答える
595 参照

linux - TCP ストリームを別のクライアントにリダイレクトする

少数のクライアントのみが接続できる TCP サーバーがあります。ただし、データ転送は純粋に一方向です。サーバーはすべてのデータをクライアントに送信し、クライアントはサーバーにデータをほとんどまたはまったく送信しません。iptables またはファイアウォールを使用して、サーバーからクライアントへの TCP ストリームを別の TCP クライアントにリダイレクトする方法はありますか?

0 投票する
1 に答える
3663 参照

linux - Retrieving original destination from iptables after REDIRECT

I'm writing an application proxy for generic use.

I want to use this as a transparent proxy, where my original plan is to use iptables with a REDIRECT rule forward all connections to my application proxy.

The problem here is of course, that my application proxy lose the information about the intended destination.

Is it possible to query iptables to retrieve the originally intended recipient? Any other possible solution to this problem is also appreciated!

0 投票する
3 に答える
1681 参照

iptables - iptables : ゲートウェイ以外のサーバーからポートを転送する

これが状況です。イントラネット 192.168.1.0/24 には複数のサーバーがあり、そのうちの 1 つはすべてのデフォルト ゲートウェイであり、2 つのインターフェイス ($GATEWAY_INTERNAL_IP と $GATEWAY_EXTERNAL_IP) があります。

$PUBLICHOST_EXTERNAL_IP と $PUBLICHOST_INTERNAL_IP の 2 つの IP を持つ別のサーバー PUBLICHOST2 もあります。

1 つの IP $PRIVIP のみを持ち、ポート $PORT にバインドする 3 番目のサーバー SERVER があります。

必要なのは、$PUBLICHOST_EXTERNAL_IP のポート $PORT を $PRIVIP のホスト SERVER に転送できるようにすることです。

しかし、PUBLICHOST2 で iptables を使用してポート転送を行うと、SERVER はリクエストを受け取りますが、応答はゲートウェイを通過し、接続は成功しません。

応答が PUBLICHOST2 を介して返されるように、どのようにセットアップを適切に行うことができますか?

ありがとう

0 投票する
1 に答える
536 参照

perl - PerlIPTablesモジュールのインストールエラー

perl http://metacpan.org/pod/IPTables::IPv4用のIPTablesモジュールをインストールしようとしましたが、インストール中にエラーが発生しました。

シェルでCPANを使用してインストールし、上記のリンクからtarballをダウンロードしてみました。どちらのインストールでもエラーが発生します。CPANからダンプを取得する方法がわかりませんが、tarballからMAKEファイルを実行すると、シェルのダンプを取得できます。

モジュールをインストールするために何をする必要があるのか​​知りたいのですが。インストールする必要のある依存関係はありますか?

あなたの助けは大歓迎です。

0 投票する
0 に答える
1018 参照

java - ルート化されたxoom(android 3ハニカム)でiptablesを実行する

iptablesを使用してデバイス(Xoom WiFi)との間のネットワークトラフィックをフィルタリングするためのルールを追加しようとしています。iptablesコマンドは、android3.0.1を実行しているxoomデバイスの/system / bin/iptablesにあります。私はadbシェルを使用してルールを追加します。しかし、私はアンドロイドアプリを通して同じことをすることができないようです。

SUで

su -c command)。Xoomは根付いています。また、iptablesには、スーパーユーザーアプリ(最新バージョン、最新のsuバイナリ)によるsu権限が付与されています。

iptables

07-18 09:00:32.990:DEBUG / su(17539):10054com.iptablesがシェル/system / bin/shを使用して0/system / bin / iptablesを実行:sh 07-18 09:00:33.010:WARN / su (17546):リクエストが拒否されました(0-> 0 / system / bin / iptables)

chown

07-18 09:02:21.380:警告/ su(17594):リクエストが拒否されました(0-> 0 / system / bin / chmod)

SUなし

iptables

出力なし。何も起こりません。ルールは追加されません。

chown

出力なし。期待どおりに動作します!?!。

iptablesコマンドを実行する方法:

コマンドを実行する方法:

何か案は?壁にぶつかっています。どんな助けでも大歓迎です。ありがとう!

0 投票する
1 に答える
248 参照

debugging - bash スクリプト: ステートメントのブロックからエラーをキャッチする

独自の bash スクリプトで管理する大きな iptables ルールセットがあります。スクリプト内のコマンドのほとんどは、単純な単一ステートメントの iptables コマンドです。スクリプトの実行時に成功/失敗の出力を追加して、スクリプトを改善しようとしています。

スクリプトをさまざまなセクションに分割しました。1 つの例は、すべてのルールが FORWARD チェーンに適用される FORWARD チェーン セクションです。セクションの最初に、スクリプトが FORWARD ルールの適用を開始したことを出力し、最後に、すべてのルールが正常に適用されたかどうか、またはいずれかが機能しなかったかどうかを出力します。基本的な考え方は次のとおりです。

私がやりたいのは、各 iptables コマンドから生じる可能性のある出力またはエラーをキャッチし、それらを配列などに格納することです。次に、ブロックの最後で if ステートメントを使用して配列を評価し、エラーがないかどうかを確認します。そうでない場合は [OK] ステータスを出力し、ある場合は [FAILED] ステータスを出力し、関連するエラーを表示します。

各 iptables ルールを if [ $ でラップせずに、ルールのブロック全体に対してこれを行う方法はありますか? != 0 ] 式?

0 投票する
1 に答える
551 参照

c - libnfqueue を使用した recv() 呼び出しで余分なビットが取得されるのはなぜですか?

次のコードに問題があります。問題なくデータを受信しましたが、そのデータには無関係なビットがロードされています! たとえば、次のコードは、nfqueue から送信されたすべてのトラフィックを取得し、各バイトの後に改行を出力します。

最初は、データはまさに私が期待していたものですが、4 バイトのように見える行があります。

出力:

インターネット上でも、この問題に似たバグトラッカーでも何も見つかりませんでした。どこから診断を開始できますか? データにこれらすべての余分なビットがあるのはなぜですか? どうすれば修正できますか?

tcpdump の出力と比較しましたが、そこにも表示されていません。

0 投票する
3 に答える
3094 参照

php - API設定を使用したIPTablesの管理。php

PHPでIPTablesを管理できるAPIはありますか?それは、Foneraと同じように、ブラウザーログインでルーターを構築するプロジェクト用ですか?