Перейти к содержанию

Как разрешить исходящий и входящий трафик в контейнере Docker


TrustMe

Рекомендуемые сообщения

  • Админы

Всем привет

Периодически получаю запросы на помощь, как открыть доступ к контейнеру после установки UFW-Docker. Ведь если его не ставить, то все контейнеры по умолчанию обходят правила UFW.

Про его установку я писал здесь:

Для начала хочется отметить важный момент, принцип работы ufw-docker: Заблокировано всё что не открыто.

Дополнительно про работу с ufw-docker я писал здесь:

 

Теперь поговорим про входящий и исходящий трафик.

Для того, чтобы разрешить как входящий, так и исходящий трафик для контейнеров Docker с использованием ufw-docker, выполните следующие шаги:

1. Установите и настройте ufw-docker, следуя инструкциям

2. Откройте порты, необходимые для работы ваших контейнеров. Например, если вам нужно открыть порт 80 для работы веб-приложения, выполните следующую команду:

sudo ufw allow 80/tcp


3. Разрешите входящий и исходящий трафик для Docker (вместо docker0 нужно указать имя контейнера, полученное из команды docker ps, например, wg-easy).:

sudo ufw allow in on docker0 && sudo ufw allow out on docker0


4. Проверьте правила ufw:

sudo ufw status numbered


В результате вы должны увидеть правила, похожие на следующие:

Цитата

 

Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 80/tcp                     ALLOW IN    Anywhere                  
[ 2] 2375/tcp                  ALLOW IN    Anywhere                  
[ 3] 80/tcp (v6)                ALLOW IN    Anywhere (v6)             
[ 4] 2375/tcp (v6)             ALLOW IN    Anywhere (v6)             
[ 5] Anywhere on docker0        ALLOW IN    Anywhere                  
[ 6] Anywhere on docker0        ALLOW OUT   Anywhere

 

 

Ссылка на комментарий
Поделиться на другие сайты

  • Админы

Теперь пройдемся по последнему примеру случившемуся на днях.

Вводная часть:

Установили DWG-UI и все настроили.

Потребовался дополнительный прокси SOCKS5.

Поставили установкой через docker:

docker run -d --name socks5 -p 5943:1080 -e PROXY_USER=login -e PROXY_PASSWORD=password serjs/go-socks5-proxy

Но, контейнер будет не доступен извне после установки ufw-docker.

Обращаем внимание на структуру: 5943:1080.

5943 -  Порт внешний

1080 - Порт внутренний контейнера

Чтобы был доступ к контейнеру извне нужно порт 5943 открыть через UFW:

sudo ufw allow 5943/tcp

Теперь нужно сделать доступным порт контейнера к локальной системе:

sudo ufw route allow proto tcp from any to any port 1080

 

Теперь прокси-сервер будет доступен.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...

Важная информация

Вы принимаете наши Условия использования, Политика конфиденциальности, Правила. А также использование Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.

Яндекс.Метрика