HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.AllowNets.txt
Allow_nets extra field
----------------------

The allow_nets field is a comma separated list of IP addresses and/or networks
where the user is allowed to log in from. If the user tries to log in from
elsewhere, the authentication will fail the same way as if a wrong password was
given.

Example: 'allow_nets=127.0.0.0/8,192.168.0.0/16,1.2.3.4,4.5.6.7'.

IPv6 addresses are also allowed. IPv6 mapped IPv4 addresses (eg.
'::ffff:1.2.3.4') are converted to standard IPv4 addresses before matching. 
Example:'allow_nets=::1,2001:abcd:abcd::0:0/80,1.2.3.4'

passwd-file example
-------------------

---%<-------------------------------------------------------------------------
user:{plain}password::::::allow_nets=192.168.0.0/24
---%<-------------------------------------------------------------------------

Keyword 'local'
---------------

The keyword 'local' is accepted for Non-IP connections like Unix socket. For
example, with a Postfix/LMTP delivery setup, you must include 'local' for
Postfix to verify the email account:

---%<-------------------------------------------------------------------------
passdb {
  driver = static
  args = password=test allow_nets=local,127.0.0.1/32
}
---%<-------------------------------------------------------------------------

Otherwise, you will see this error in the log:

---%<-------------------------------------------------------------------------
[/var/run/dovecot/lmtp] said: 550 5.1.1 <test2@example.com> User doesn't exist:
test2@example.com (in reply to RCPT TO command))
---%<-------------------------------------------------------------------------

(This file was created from the wiki on 2019-06-19 12:42)