Overview
This article addresses a startup failure for the Amavis mail filter service caused by an inability to bind to TCP port 10024 on the IPv6 loopback address (::1). This error typically occurs when the server environment restricts or lacks IPv6 support, causing Amavis to fail during initialization. The following log entry indicates this issue:
Oct 02 03:20:15 condor3648 systemd[1]: Starting LSB: Starts amavisd-new mailfilter...
Oct 02 03:20:16 condor3648 amavis[1697]: starting. /usr/sbin/amavisd-new at condor3648.startdedicated.com amavisd-new-2.11.0 (20160426), Unicode aware, LC_ALL="C", LANG="en_US.UTF-8"
Oct 02 03:20:16 condor3648 amavis[1705]: (!)Net::Server: 2020/10/02-03:20:16 Can't connect to TCP port 10024 on ::1 [Cannot assign requested address]\n at line 64 in file /usr/share/perl5/Net/Server/Proto/TCP.pm
Oct 02 03:20:16 condor3648 amavis[1690]: Starting amavisd: amavisd-new.
Oct 02 03:20:16 condor3648 systemd[1]: Started LSB: Starts amavisd-new mailfilter.
Prerequisites
- Root or sudo access to the server
- Terminal access with a text editor (e.g., vi, nano)
Solution
To resolve this issue, configure Amavis to bind exclusively to the IPv4 loopback address. Follow the steps below according to your operating system:
- Edit the appropriate configuration file:
- AlmaLinux/CloudLinux/RHEL: Open /etc/amavisd/warden.conf
- Debian/Ubuntu: Open /etc/amavis/conf.d/99-warden
- Add the socket binding directive: Insert the following line into the configuration file:
$inet_socket_bind = '127.0.0.1'; - Save and close the file.
- Restart the Amavis service: Execute the command corresponding to your distribution:
- AlmaLinux/CloudLinux/RHEL:
systemctl restart amavisd - Debian/Ubuntu:
systemctl restart amavis
- AlmaLinux/CloudLinux/RHEL:
Troubleshooting
If the service fails to start after applying the configuration change, review the following common issues:
- IPv6 Network Restrictions: If IPv6 is intentionally disabled at the OS level, this workaround ensures Amavis operates correctly on IPv4. Re-enabling IPv6 support may also resolve the binding conflict if required by other services.