Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 7537|Відповідь: 4

Заборона доступу контейнерів Docker до Інтернету (екстранету)

[Копіювати посилання]
Опубліковано 2022-12-14 22:53:18 | | | |
Вимоги: Приватна домашня система альбомів була створена з використанням контейнерів Docker, яка обмежена доступом і переглядом через домашню LAN, оскільки образ Docker розробляється стороннім розробником, і я не знаю, чи це буде питання безпекиСтворювати порушення конфіденційностіЩоб краще вирішити цю проблему, ми хочемо додати гарантію приватності, заборонивши контейнерам 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, щоб заборонити доступ до Інтернету за допомогою наступної команди:

Незалежно від того, чи доступний сервіс iptables, незалежно від того, чи увімкнено міжмережевий екран,Правила iptables, додані командою, набувають чинності негайно!!!

Примітка: цей план є доречнимЯкщо різні контейнери приєднуються до однієї мережі, контейнери не зможуть спілкуватися між собою!!!!

Подивіться на правило DOCKER-USER, як показано нижче:



Створіть новий контейнер nginx знову, контейнер надає веб-сервіс, і18081 Порт надає послуги зовнішньому світу, а контейнеру заборонено доступ до Інтернету (публічної мережі), команда звучить так:



Ми досягли своєї мети, але,Після перезавантаження сервера правила, створені в iptables, зникнутьЯк ми можемо автоматично завантажити наші власні правила після перезапуску сервера?

Команда iptables-save використовується для експорту таблиці iptables у ядрі Linux стандартному постачальнику виводу, зазвичай використовуючи функцію перенаправлення введення/виведення в shell для збереження результату у вказаному файлі.

Зберегти існуюче правило iptables

Додайте правило відновлення iptables до завантаження при завантаженні, файл завантаження буде /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 |
Випадок такий:

【Практичний бой】Створити приватний репозиторій Git на Gitea з м'яким маршрутизацією
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