Error de inicio de Postfix Puerto 25: dirección ya en uso


19

Estoy tratando de ejecutar Postfix en mi servidor, pero sigo recibiendo el siguiente error en mi /var/log/mail.log:

postfix / master [5041]: fatal: enlace 0.0.0.0 puerto 25: dirección ya en uso

Hice un poco de búsqueda y encontré esta excelente respuesta de Oli (con respecto a esta misma pregunta) en la que se recomienda que básicamente elimine los paquetes de sendmail de mi servidor para evitar conflictos, luego reinstale postfix, que a su vez instalará su propia marca de sendmail. Desafortunadamente, no resolvió el problema (ver a continuación cómo).

Seguí las instrucciones y ejecuté el siguiente control, al que recibí una respuesta alentadora:

$ dpkg -S `which sendmail`
postfix: /usr/sbin/sendmail

Sin embargo, cuando comencé postfix nuevamente, recibí el mismo error.

Según la contingencia de Oli, busqué el proceso que estaba acaparando el puerto 25 con lo siguiente:

$ sudo netstat -pel | grep smtp
tcp        0      0 localhost.localdom:smtp *:*                     LISTEN      root       
35704126    27626/sendmail: MTA

Pero aquí es donde se volvió confuso: luego busqué el proceso 27626pero luego me dijeron:

dpkg-query: no se encontró ninguna ruta que coincida con el patrón 27626
conexiones
.

Detuve htop y pude encontrar el PID anterior asociado con el siguiente comando:

sendmail: MTA: aceptando conexiones

Luego trató de matar el proceso tanto con killall sendmaily killall 27626y cuidado para conseguir no process found.

El problema es (además de lo obvio) que no sé cómo interpretar estos hallazgos. Limpié el servidor de sendmail, así que solo puedo suponer que la propia versión de postfix de sendmail está secuestrando el puerto. Ni siquiera sé si eso tiene sentido.

De todos modos, si alguien pudiera aclararme esto o al menos dar algunas preguntas de diagnóstico interesantes, lo agradecería.

En caso de que sea útil, estoy usando virtualmin en el servidor para administrar algunos dominios diferentes y también estoy ejecutando wordpress.

¡Muchas gracias de antemano!

En respuesta a una solicitud , he publicado un ps -efsiguiente

root@upsmart:~# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Jan12 ?        00:00:00 init
root         2     1  0 Jan12 ?        00:00:00 [kthreadd/20017]
root         3     2  0 Jan12 ?        00:00:00 [khelper/20017]
root        68     1  0 Jan12 ?        00:00:00 upstart-udev-bridge --daemon
root        75     1  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       110     1  0 Jan12 ?        00:00:00 /usr/sbin/sshd -D
root       130    75  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       131    75  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       175     1  0 Jan12 ?        00:00:00 upstart-socket-bridge --daemon
116        205     1  0 Jan12 ?        00:00:03 dbus-daemon --system --fork --activation=upstart
root       385     1  0 Jan12 ?        00:00:00 /usr/sbin/dovecot -F -c /etc/dovecot/dovecot.conf
root       386     1  0 Jan12 ?        00:00:04 cron
mysql      410     1  0 Jan12 ?        00:08:06 /usr/sbin/mysqld
dovecot    441   385  0 Jan12 ?        00:00:00 dovecot/anvil
root       442   385  0 Jan12 ?        00:00:00 dovecot/log
root       444   385  0 Jan12 ?        00:00:00 dovecot/config
syslog     445     1  0 Jan12 ?        00:00:08 /sbin/syslogd -u syslog
bind       474     1  0 Jan12 ?        00:00:12 /usr/sbin/named -u bind
clamav     844     1  0 Jan12 ?        00:01:34 /usr/sbin/clamd
clamav     951     1  0 Jan12 ?        00:03:27 /usr/bin/freshclam -d --quiet
list       969     1  0 Jan12 ?        00:00:00 /usr/bin/python /usr/lib/mailman/bin/mailmanctl -s -q start
list       970   969  0 Jan12 ?        00:01:03 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=ArchRunner:0:1 -
list       971   969  0 Jan12 ?        00:01:10 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=BounceRunner:0:1
list       972   969  0 Jan12 ?        00:01:03 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=CommandRunner:0:
list       973   969  0 Jan12 ?        00:01:07 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=IncomingRunner:0
list       974   969  0 Jan12 ?        00:01:01 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=NewsRunner:0:1 -
list       976   969  0 Jan12 ?        00:01:05 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=OutgoingRunner:0
list       978   969  0 Jan12 ?        00:01:06 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=VirginRunner:0:1
list       980   969  0 Jan12 ?        00:00:00 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=RetryRunner:0:1
root      1410     1  0 Jan12 ?        00:00:00 /usr/sbin/saslauthd -a pam -m /var/spool/postfix/var/run/saslauthd -r
root      1413  1410  0 Jan12 ?        00:00:00 /usr/sbin/saslauthd -a pam -m /var/spool/postfix/var/run/saslauthd -r
root      2034     1  0 Jan12 ?        00:00:09 /usr/bin/perl /usr/share/usermin/miniserv.pl /etc/usermin/miniserv.con
proftpd   2054     1  0 Jan12 ?        00:00:07 proftpd: (accepting connections)              
root      2096     1  0 Jan12 ?        00:00:13 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
root      2173     1  0 Jan12 ?        00:00:15 /usr/sbin/console-kit-daemon --no-daemon
root      2241     1  0 Jan12 ?        00:00:07 /usr/lib/policykit-1/polkitd --no-debug
root      4895     1  0 03:15 ?        00:00:00 /usr/sbin/xinetd -dontfork -pidfile /var/run/xinetd.pid -stayalive -in
www-data  6494 30181  0 03:41 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6497 30181  0 03:42 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6499 30181  0 03:42 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6500 30181  0 03:42 ?        00:00:07 /usr/sbin/apache2 -k start
root      9477 30027  0 05:09 pts/5    00:00:00 sudo ps -ef
root      9478  9477  0 05:09 pts/5    00:00:00 ps -ef
root     27626     1  0 02:44 ?        00:00:00 sendmail: MTA: accepting connections          
root     27902   110  0 02:51 ?        00:00:01 sshd: root@pts/4    
root     27998 27902  0 02:51 pts/4    00:00:01 -bash
root     29931   110  0 02:59 ?        00:00:03 sshd: root@pts/5    
root     30027 29931  0 02:59 pts/5    00:00:00 -bash
root     30181     1  0 03:00 ?        00:00:02 /usr/sbin/apache2 -k start
www-data 30183 30181  0 03:00 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 30636 30181  0 03:06 ?        00:00:13 /usr/sbin/apache2 -k start

2
¿Has reiniciado el servidor? Mirando los comentarios de la respuesta de Oli, el problema desapareció después de un reinicio.
douggro

Respuestas:


18

Experimenté el mismo problema en Ubuntu 16.04.01 LTS. Se produjo el siguiente mensaje de registro /var/log/mail.logy no se pudo enviar el correo saliente:

postfix/master[5072]: fatal: bind 127.0.0.1 port 25: Address already in use

Recibí el siguiente resultado al intentar matar a sendmail:

$ sudo killall sendmail
sendmail: no process found

Los siguientes comandos me funcionaron (no es necesario reiniciar el servidor):

sudo killall sendmail-mta
sudo service postfix restart

2
Eso funcionó para mí! ¡Prestigio!
Thelambofgoat

10

Tuve el mismo problema y lo que hice fue solo detener el envío de correo, reiniciar postfix y comenzar de nuevo sendmail con los siguientes comandos:

service sendmail stop
service postfix restart
service sendmail start

Todo volvió bien.


9

Bueno, la respuesta es profundamente insatisfactoria, pero después de pasar algunas horas trabajando en esto hoy, reinicié el servidor y ahora se está ejecutando postfix. Gracias a todos los que dieron una idea.


5

Simplemente elimine el proceso de sendmail e intente nuevamente:

sudo kill 27626

o

sudo killall sendmail

Gracias por la respuesta Braiam. Debería haber especificado en la pregunta, en realidad les di a los dos una oportunidad y me da una no process found. Actualizaré la pregunta con ese poco de información.
neanderslob

killall sendmailNo encontré ningún proceso para mí, pero ps aux | grep sendmailmostró uno ejecutándose, y matar por su PID resolvió el problema. Estaba en la lista, sendmail: MTA:[...]así que supongo que el proceso del demonio real se volvió a etiquetar pero tiene un nombre diferente. Sin embargo, desafortunadamente no puedo investigar más en este momento.
Synexis


1

Puede usar el fusercomando (como root) para obtener una lista de todos los procesos que escuchan en el puerto 25 y eliminarlos.

fuser -uv  25/tcp
fuser -kuv 25/tcp
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.