1 votes

Empêcher quiconque d'envoyer des e-mails entre utilisateurs locaux

J'essaie d'empêcher les utilisateurs anonymes de pouvoir potentiellement envoyer des e-mails d'un utilisateur local à un autre. Si quelqu'un connaît les adresses électroniques de deux comptes sur mon serveur postfix (2.10.1), il semble qu'il soit en mesure d'envoyer des courriers électroniques entre eux de n'importe où sans s'authentifier. J'ai testé cela en utilisant des commandes telnet :

220 domain1.co.uk ESMTP Postfix
ehlo domain1.co.uk
250-domaine1.co.uk
250-PIPELINING
TAILLE 250 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-CODES D'ÉTAT AMÉLIORÉS
250-8BITMIME
250 DSN
MAIL FROM:user1@domain1.co.uk
250 2.1.0 Ok
RCPT TO:user1@domain2.co.uk
250 2.1.5 Ok
données
354 Terminer les données avec .
test
.
250 2.0.0 Ok : en file d'attente comme A002982019
quitter
221 2.0.0 Au revoir

Je veux éviter que quiconque puisse envoyer des messages entre des domaines locaux à moins d'être authentifié ou de provenir d'adresses IP spécifiques (locales pour le relais).

1voto

Michael Hampton Points 232226

Je pense que vous cherchez reject_sender_login_mismatch o reject_unauthenticated_sender_login_mismatch les paramètres pour smtpd_sender_restrictions .

Par exemple :

smtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch, ...

De la documentation :

reject_sender_login_mismatch

Rejeter la demande lorsque $smtpd_sender_login_maps spécifie un propriétaire pour l'adresse MAIL FROM, mais que le client n'est pas (SASL) connecté en tant que propriétaire de cette adresse MAIL FROM ; ou lorsque le client est (SASL) connecté, mais que le nom de connexion du client ne possède pas l'adresse MAIL FROM selon $smtpd_sender_login_maps.

reject_unauthenticated_sender_login_mismatch

Met en application la restriction reject_sender_login_mismatch pour les clients non authentifiés uniquement. Cette fonctionnalité est disponible à partir de la version 2.1 de Postfix.

Le premier est plus restrictif, interdisant par exemple à user1@example.com d'envoyer du courrier en tant que user2@example.com, même s'il est authentifié. Cette dernière option permettra aux utilisateurs authentifiés d'envoyer du courrier à partir de n'importe quelle adresse électronique.


permit_mynetworks devrait toujours apparaître en premier, et autorisera tout ce qui se trouve dans les adresses IP et les plages CIDR que vous avez spécifiées dans le champ mynetworks .

0voto

basekat Points 396

Vous pouvez obtenir ce que vous recherchez avec la configuration suivante :

/etc/postfix/main.cf:
smtpd_sender_restrictions = permit_mx_backup, reject_sender_login_mismatch
smtpd_sender_login_maps = hash:/etc/postfix/login_maps

cat /etc/postfix/login_maps
user@server.net user@server.net

# postmap /etc/postfix/login_maps
# systemctl restart postfix

Test 1: MAIL FROM: user@server.net   RCPT TO: user@server.net
nc smtp.server.net 25
220 smtp.server.net ESMTP - nice to meet you.
helo dude
250 smtp.server.net
mail from: <user@server.net>
250 2.1.0 Ok
rcpt to: <user@server.net>
553 5.7.1 <user@server.net>: Sender address rejected: not logged in
^]^C

Test 2: MAIL FROM: me@me.com    RCPT TO: user@server.net
nc smtp.server.net 25
220 smtp.server.net ESMTP - nice to meet you.
helo dude
250 smtp.server.net
mail from: <me@me.com>
250 2.1.0 Ok
rcpt to: <user@server.net>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
helo
.
250 2.0.0 Ok: queued as CB96C3E82F
quit
221 2.0.0 Bye

Plus d'informations sur le site : http://www.postfix.org/SMTPD_ACCESS_README.html http://www.postfix.org/postconf.5.html#smtpd_sender_restrictions

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X