GNU/Linux >> Linux の 問題 >  >> Linux

開発時に Linux マシンからの外部アクセスなしをシミュレートすることは可能ですか?

デフォルトルートを削除すると、これが行われます。 /sbin/route でルーティングテーブルを表示できます でデフォルトを削除します:

sudo /sbin/route del default

これにより、システムはローカル ネットワークに接続されたままになりますが、その先のパケットをどこに送信すればよいかわかりません。これはおそらく「外部アクセスなし」の状況を非常に正確にシミュレートします。

route add で元に戻せます (ゲートウェイがどうあるべきかを思い出してください)、またはネットワークを再起動するだけです。 NetworkManager を使用してシステムを試してみたところ、デフォルトのザッピングは正常に機能し、パネル アイコンをクリックしてローカル ネットワークを再選択するだけで復元できました。 NM が他のイベントで単独でこれを行う可能性があるため、注意してください。

別のアプローチは、 iptables を使用することです 送信トラフィックをブロックするルール。しかし、おそらくルーティング アプローチの方が優れていると思います。


あなたが書きました

<ブロック引用>

では、開発マシンで「外部アクセスなし」をシミュレートするにはどうすればよいでしょうか?

イーサネット インターフェイスを「非アクティブ化」し、後で手間をかけずに再アクティブ化するにはどうすればよいですか?

これらは 2 つの質問ですか、それとも 1 つの質問ですか? simulate "no external access" の意味がわかりません .ただし、イーサネット インターフェイスを非アクティブ化するには、単純に行うことができます

#ifdown eth0
#ifup eth0

またはあなたのインターネットデバイスが何であれ。これにより、イーサネット インターフェイスがそれぞれダウンおよびアップします。


ホストオンリー ネットワーク インターフェイスのみを提供する仮想マシン (ユーザー モード Linux、VServer、OpenVZ、VirtualBox、VMWare、KVM など) でコードを実行できます (つまり、VM からホスト マシン以外へのルーティングはありません)。 ).

アプリケーションを専用ユーザー appuser として実行する場合 、そのユーザーのネットワーク アクセスを制限できます。 iptables であることを確認してください (Ubuntu:iptables iptables http://bit.ly/software-small をインストール) および iproute2 (ip コマンド) (Ubuntu:iproute インストール iproute http://bit.ly/software-small, iproute-doc インストール iproute-doc http://bit.ly/software-small) がインストールされています。次に、 iptables を使用できます appuser として実行されているプロセスからの発信トラフィックをマークする 、および ip rule および ip route そのユーザーの代替ルーティング テーブルを設定します。

ip rule add fwmark 1 table 1
ip route add 127.0.0.0/0 table 1 dev lo
iptables -t mangle -A OUTPUT -m owner --uid-owner appuser -j MARK --set-mark 1

(注:未テスト。その他の Linux IP パケットマングリングの例も参照してください。)


Linux
  1. LinuxのVirtualBoxでUSBドライブから起動する方法

  2. Linux からブータブル USB を作成:できるだけ簡単に!

  3. Linux OS サービス「iptables」

  1. Linux から Windows 共有フォルダにアクセスする方法

  2. ユーザー空間からカーネル空間に(可能であれば)アクセスする方法は?

  3. Linux マシンから SonicWall VPN に接続する

  1. Linux –コマンドラインから画面にピクセルを表示するためにフレームバッファにアクセスすることは可能ですか?

  2. BIOS システムで GPT ディスクから Linux を起動することはできますか?

  3. Linux から SQL-Server へのスクリプト可能なコマンド ライン アクセス