# Postfix: fatal: bind 0.0.0.0 port 25: Address already in use

**Code:** `Postfix: bind 0.0.0.0 port 25: Address already in use` · **Category:** Email / SMTP · **Seen on:** SMTP, Linux

Postfix cannot start its SMTP listener because another process (often Sendmail, Exim or a second Postfix) already uses port 25.

## Meaning

Only one program can listen on a port. Find the owner with `ss -ltnp` and stop or disable it. Common after installing Postfix on a system with Exim (Debian) or Sendmail (CentOS), or after a crashed master process left a stale lock.

## Common causes

- Exim, Sendmail or another MTA already running
- A previous Postfix master process still alive
- Docker container publishing port 25
- Mail filter proxy bound to 25
- Stale PID file

## Quick fix

1. `sudo ss -ltnp | grep ':25 '` to find the process
2. Disable the other MTA (`systemctl disable --now exim4`)
3. Start Postfix again and check `postfix check`

## Detailed fix by platform

### Linux

1. `sudo ss -ltnp | grep ':25 '` and `sudo systemctl disable --now exim4 sendmail; sudo systemctl restart postfix`

## How to diagnose

1. **Owner** — Which process holds the port?
2. **Services** — Another MTA enabled?
3. **Check** — postfix check clean?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/email/postfix-address-already-in-use)
