Рейтинг:2

Dovecot утверждает, что порты используются, netstat не согласен

флаг cn

Попытка запустить dovecot дает мне это:

28 апреля, 13:37:00 мастер: ошибка: служба (вход в поп-музыку): прослушивание (*, 110) не удалось: адрес уже используется
28 апреля 13:37:00 мастер: Ошибка: служба (вход в поп-музыку): прослушивание (*, 995) не удалось: адрес уже используется
28 апреля 13:37:00 мастер: ошибка: служба (imap-логин): прослушивание (*, 143) не удалось: адрес уже используется
28 апреля 13:37:00 мастер: ошибка: служба (imap-логин): прослушивание (*, 993) не удалось: адрес уже используется

И «netstat -tulpn» отображает это:

TCP 0 0 0.0.0.0:25 0.0.0.0:* ПРОСЛУШИВАТЬ 3369/мастер
TCP 0 0 0.0.0.0:52125 0.0.0.0:* ПРОСЛУШИВАТЬ 2396/rpc.statd
TCP 0 0 0.0.0.0:3306 0.0.0.0:* ПРОСЛУШАТЬ 3244/mysqld
TCP 0 0 0.0.0.0:111 0.0.0.0:* ПРОСЛУШАТЬ 2375/rpcbind
tcp 0 0 :::22 :::* ПРОСЛУШИВАТЬ 2562/sshd
tcp 0 0 :::25 :::* ПРОСЛУШИВАТЬ 3369/мастер
tcp 0 0 :::443 :::* ПРОСЛУШАТЬ 3390/httpd
tcp 0 0 :::39631 :::* ПРОСЛУШИВАТЬ 2396/rpc.statd
tcp 0 0 :::111 :::* ПРОСЛУШИВАТЬ 2375/rpcbind
tcp 0 0 :::80 :::* ПРОСЛУШАТЬ 3390/httpd
udp 0 0 0.0.0.0:68 0.0.0.0:* 2236/dhclient
udp 0 0 0.0.0.0:111 0.0.0.0:* 2375/rpcbind
udp 0 0 10.0.82.190:123 0.0.0.0:* 2589/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2589/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2589/ntpd
udp 0 0 0.0.0.0:43243 0.0.0.0:* 2396/rpc.statd
udp 0 0 0.0.0.0:854 0.0.0.0:* 2375/rpcbind
udp 0 0 127.0.0.1:876 0.0.0.0:* 2396/rpc.statd
udp 0 0 :::111 :::* 2375/rpcbind
udp 0 0 :::854 :::* 2375/rpcbind
udp 0 0 :::54504 :::* 2396/rpc.statd

Есть идеи, что мне здесь не хватает?

ОБНОВИТЬ:

selinux отключен, а дистрибутив — AWX Linux:

$ getenforce
Неполноценный

$ uname -a
Linux ip-10-0-82-190 4.14.268-139.500.amzn1.x86_64 #1 SMP Ср 2 марта 18:48:10 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Appleoddity avatar
флаг ng
Привязывается ли dovecot к портам как root? Только root может подключаться к портам ниже 1024.
флаг cn
Я запускаю dovecot как root. Кроме того, как указано в журнале dovecot, порты используются.
флаг in
Какой дистрибутив вы используете? Selinux также может предотвратить это.
флаг us
Rob
Проверьте действующую конфигурацию (после разбора dovecot.conf и всех включений) с помощью `dovecot -n` и, возможно, посмотрите: https://serverfault.com/a/1017158/960939
флаг cn
Это был портрезерв! Что за хитрый кусок дерьма! Сделайте репост в качестве ответа, и я награжу награду.
Doug avatar
флаг in
Я не смотрел ссылку в комментарии Роба, когда писал свой ответ, поэтому я просто воспринял это как решение пользователя 646372 своей собственной проблемы. Заслуга действительно должна принадлежать Робу, как я теперь вижу, благодаря его ссылке мы туда попали.
Рейтинг:3
флаг in

dovecot, похоже, не знает (совместим с) portreserve.

Проверьте /etc/portreserve на наличие файлов конфигурации, которые резервируют нужные вам порты, и удалите их из области действия (например, переименуйте их с помощью ~). В качестве альтернативы вы можете добавить portrelease в сценарии инициализации dovecot, чтобы освободить необходимые порты непосредственно перед запуском dovecot.

Стоит обратить внимание на эту опечатку (https://access.redhat.com/errata/RHSA-2020:1062), что приводит к этому отчету об ошибке («Dovecot должен использовать portrelease, чтобы избежать конфликтов портов с монтированием NFSv4» https://bugzilla.redhat.com/show_bug.cgi?id=1570283). Это, по-видимому, связывает его с дефектом portreseve, которому противостоит NFSv4. Мне не ясно, действительно ли исправление устраняет проблему, поскольку отчет об ошибке предоставляет только некоторый контекст и, возможно, обходной путь.

Я не думаю, что это можно исправить на стороне голубятни, и исправление portreserve должно исправить это.SUNRPC известен недостатком случайного назначения портов rpc 665-1023 (ну, не совсем случайным — это что-то вроде 6XX+pid, что приводит к регулярным проблемам с портами 993/995 в некоторых системах) — таким образом, когда NFSv4 на месте и не имеет назначенных статических портов, он может произвольно использовать порт 993/995.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.