この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 7537|答える: 4

Dockerコンテナによるインターネット(エクストラネット)へのアクセス禁止

[リンクをコピー]
2022年12月14日 22:53:18に投稿 | | | |
要件:プライベートホームアルバムシステムはDockerコンテナを使って構築されましたが、Dockerイメージはサードパーティ開発者が開発しているため、アクセスと閲覧はホームLANに限定されています。セキュリティ上の問題があるかはわかりませんプライバシー侵害の発生この問題をより良く解決するために、Dockerコンテナがインターネット(外部ネットワーク)にアクセスすることを禁止することでプライバシー保証を追加したいと考えています。

CentOS 7はIPアドレスのサーバーアクセスを禁止しています
https://www.itsvse.com/thread-10264-1-1.html

iptablesファイアウォールは特定のIPアドレスにしか特定のポートやウェブサイトへのアクセスを許可しません
https://www.itsvse.com/thread-2535-1-1.html

CentOS7を表示してファイアウォールをオフにする
https://www.itsvse.com/thread-7771-1-1.html

この記事はCentOS7システム、Dockerバージョン20.10.20を使用し、nginxイメージを使ってテストを提供します。

インターネットアクセス(エクストラネット)はデフォルトで許可されています

アクセス可能なウェブサービスを提供する新しいnginxコンテナを作成しましょう18080 ポートアクセスの場合、コンテナはデフォルトでインターネット(外部ネットワーク)にアクセスできます。コマンドは以下の通りです:

コンテナに入り、通常通り取得可能なcurlコマンドでこのサイトのリソースをリクエストしてください。以下の図のように。



Dockerコンテナがインターネット(エクストラネット)にアクセスするのを無効にすることについて

まず、Dockerでカスタムネットワークを作成し、以下のコマンドで仮想ネットワークカードを作成します。



iptablesを通じて仮想NICに以下のコマンドでインターネットアクセスを禁止するルールを設定します。

iptablesサービスが利用可能かどうか、ファイアウォールがオンになっているかどうかに関わらず、コマンドによって追加されたiptablesのルールは即座に有効となります!!!

注:この計画は適切ですもし異なるコンテナが同じネットワークに参加すると、コンテナ同士が通信できなくなります!!!!

以下に示すDOCKER-USERルールをご覧ください:



新しいnginxコンテナを再度作成します。コンテナはウェブサービスを提供し、18081 ポートは外部世界へのサービスを提供し、コンテナはインターネット(公共ネットワーク)へのアクセスを禁止されています。コマンドは以下の通りです:



目標は達成しましたが、サーバーを再起動すると、iptablesで作成したルールは消えてしまいますサーバーを再起動した後にカスタムルールを自動で読み込むにはどうすればいいですか?

iptables-save コマンドは、Linux カーネル内のiptablesテーブルを標準出力ベンダーにエクスポートするために使われ、通常はシェル内のI/Oリダイレクト関数を使って出力を指定されたファイルに保存します。

既存のiptablesルールを保存する

boot bootにrestore iptablesルールを追加し、boot bootファイルは/etc/rc.d/rc.localです。ファイルを編集し、最後に次のコマンドを追加します:

最後に、次のコマンドで実行権限を追加します。

設定が完了した後も、サーバーを再起動してもiptablesルールは有効になります。

Docker内のすべてのコンテナはインターネット(エクストラネット)へのアクセスを禁止されています。テストされていません、命令は以下の通りです:

(終わり)






先の:アセットファイル「project.assets.json」は見つかりません。 NuGetパッケージ復元を実行してください...
次に:BBR、BBRplus、BBR2 一般的なネットワーク速度比較
2022年12月16日 21:14:15に投稿 |
覚えてみろ
 地主| 2023年1月2日 17:43:19に投稿 |
事例は以下の通りです:

【実用戦闘】ソフトルーティング付きのGiteaプライベートGitリポジトリを構築しましょう
https://www.itsvse.com/thread-10403-1-1.html


2023年4月7日 18:55:08に投稿 |
この機能は非常に重要です。ぜひ学んでください
2023年4月21日 12:00:24に投稿 |
共有してくれてありがとう、学びました。
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com