Назад | Перейти на главную страницу

Проблема связи между контейнерами linux

У меня проблема, связанная с сетью.

В ProxMox VE 6.1-8 у меня есть несколько контейнеров LXC, все основанные на debian 10.3. Все контейнеры соединены двумя мостами:

CT100 - это почтовый сервер с экземпляром MariaDB для учетных данных пользователя и веб-сервер с Roudcube; MariaDB настроен на прослушивание ВСЕХ адресов без ssl (только для связи между контейнером). Nmap дает следующие результаты:

# nmap -sT 192.168.1.150
Starting Nmap 7.70 ( https://nmap.org ) at 2020-03-21 08:58 CET
Nmap scan report for mail.mydomain.ch (192.168.1.150)
Host is up (0.00014s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
80/tcp   open  http
143/tcp  open  imap
443/tcp  open  https
587/tcp  open  submission
993/tcp  open  imaps
3306/tcp open  mysql

# nmap -sT 192.168.10.13
Starting Nmap 7.70 ( https://nmap.org ) at 2020-03-21 08:59 CET
Nmap scan report for 192.168.10.13
Host is up (0.00014s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
80/tcp   open  http
143/tcp  open  imap
443/tcp  open  https
587/tcp  open  submission
993/tcp  open  imaps
3306/tcp open  mysql

Таким образом, порты MariaDB прослушивают ВСЕ интерфейсы (конечно, также и на 127.0.0.1 - dovecot и postfix могут запрашивать учетные данные пользователя).

CT105 - это "инструментальный" контейнер с инструментами для внутреннего административного использования, такими как phpmyadmin, со следующими интерфейсами:

Что ж, проблема: при выдаче nmap из этого контейнера против контейнера CT100, вот результат:

# nmap -sT 192.168.1.150
Starting Nmap 7.80 ( https://nmap.org ) at 2020-03-21 09:04 CET
Nmap scan report for 192.168.1.150
Host is up (0.00018s latency).
Not shown: 993 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
25/tcp  open  smtp
80/tcp  open  http
143/tcp open  imap
443/tcp open  https
587/tcp open  submission
993/tcp open  imaps
MAC Address: 96:75:B8:D9:37:7B (Unknown)

# nmap -sT 192.168.10.13
Starting Nmap 7.80 ( https://nmap.org ) at 2020-03-21 09:04 CET
Nmap scan report for 192.168.10.13
Host is up (0.00015s latency).
Not shown: 993 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
25/tcp  open  smtp
80/tcp  open  http
143/tcp open  imap
443/tcp open  https
587/tcp open  submission
993/tcp open  imaps
MAC Address: 42:8C:59:BB:7B:49 (Unknown)

Как вы заметили, порт 3306 кажется закрытым!

В качестве доказательства я создал третий контейнер CT107 под названием «test», где я установил другой экземпляр MariaDB и настроен как экземпляр на CT100, а порт 3306 правильно открыт и доступен с CT105.

Если бы порт 3306 оказался закрытым, а также nmap-ping из CT100, я бы предположил, что что-то не так с экземпляром MariaDB, но 3306 открыт локально, но, похоже, закрыт при запросе из других контейнеров! Вот думаю что-то связанное с ProxMox.

Еще одна вещь: брандмауэр отключен для контейнеров, все контейнеры непривилегированы, я попытался клонировать контейнер CT100 без каких-либо результатов (порт 3306 открыт при локальном запросе, закрывается при запросе из других контейнеров); Я бы не хотел перестраивать CT100 с нуля из-за длительного времени настройки, и я предпочитаю понимать, что происходит, прежде чем просто повторить задание, с риском возникновения той же проблемы.

Любая помощь очень приветствуется, чтобы понять, что происходит.