relais Postfix / amavis : questions sur les restrictions

relais Postfix / amavis : questions sur les restrictions - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 27-01-2005 à 10:02:53    

:hello:  
Je suis en train de mettre en place un serveur relais smtp basé sur postfix /amavis/spamassassin /clamAV.
ces mails sont relayés vers un autre serveur sur lequel sont créés les comptes utilisateurs....
 
J'aimerais stopper les mails qui arrivent à destination d'utilisateurs invalides (la grosse majorité ) directement au niveau du relais.
ça permettrait de ne pas charger inutilement le serveur smtp final et d'économiser des ressources pour le filtrage.
 
ça doit être fait au niveau de postfix je suppose: via la directive  
local_recipient_maps =
peut-être?
 
le fait est que j'aimerais pour cela utiliser une simple liste des utilisateurs récupérés sur le serveur SMTP "final"(AS400)
 
Quelqu'un à une idée/ des conseils?
 
edit : ça à plutôt l'air d'être check_recipient_access (je cherche) --> nimp
 
edit2
Problème 1 en partie résolu (via le relay_recipient_check)
Problème 2 en bas de topic


Message édité par elpoulpo le 03-02-2005 à 10:02:15
Reply

Marsh Posté le 27-01-2005 à 10:02:53   

Reply

Marsh Posté le 27-01-2005 à 11:09:02    

J'utilise local_recipient_maps = /etc/postfix/local_recipients
 
J'ai un relais SMTP avec des comptes locaux et des comptes sur des serveurs Domino. Les serveur Domino m'envoient la liste des mails des utilisateurs que j'intègre à local_repicients.
 
la syntaxe du local_recipients :


user_local@host.domaine.tld   user_local
root@host.domaine.tld         root
 
user1@domaine.tld             x
user2@domaine.tld             x


 
 
et ca doit tourner.  
Les sollicitation d'utilisateurs non présent dans local_recipients se solderont par un  


 NOQUEUE: reject: RCPT from AMarseille-152-1-61-172.w83-201.abo.wanadoo.fr[AA.BB.CC.DD]: 550 <nuho@domaine.tld>: Recipient address rejected: User unknown in local recipient table; from=<piracy@microsoft.com> to=<nuho@domaine.tld> proto=SMTP helo=<mail.domaine.tld>


Message édité par Phoenix le 27-01-2005 à 11:12:52
Reply

Marsh Posté le 27-01-2005 à 13:21:17    

Merci  :jap:  
 
Je suis en train d'essayer mais ça ne fonctionne pas (cependant j'ai l'impression que mes toutes restrictions ne fonctionnent pas bien en fait) :(

Reply

Marsh Posté le 27-01-2005 à 15:11:01    

Bon le serveur fonctionne correctement :o  
 
 
mais j'ai donc fait ta manip phoenix
ajout de local_recipient_maps = hash:/etc/postfix/local_recipient
(ajout de hash:, sinon il ralaît)
 
et création d'un fichier local_recipient uniquement mes adresses
 
user@mondomain.com  OK
 
puis un postmap local_recipient (pour créer le .db)
 
mais ça ne fonctionne pas...
il ne faut pas lui signifier de rejeter le reste? c'est fait par défaut? :)
 
edit: je viens d'essayer la même chose en faisant relay_recipient_maps et ça ne fonctionne pas non plus..
 
à noter que je relay vers 127.0.0.1:10024 puis vers mon smtp depuis amavisd...si jamais


Message édité par elpoulpo le 27-01-2005 à 15:26:00
Reply

Marsh Posté le 28-01-2005 à 10:32:43    

Bon j'ai  fait la modif suivante  
 
relay_recipient_maps = hash:/etc/postfix/local_recipient
 
et ça fonctionne  
 
J'ai des lignes du style :
 
326E416D8655: reject: RCPT from smtp-out2.net.av.oleane.com[195.25.12.12]: 550 <lockett@....
 
Par contre il renvoit une réponse: Y a t'il un moyen de faire croire au smtp du FAI  que le mail a été accepté (un truc style silent discard...)
pour qu'il n'y ai pas de réponse (aux spammeurs) :??:

Reply

Marsh Posté le 28-01-2005 à 12:27:35    

Pour relay_recipient_table plutot que local_recpient_table c'est normal : ton serveur ne fais que du relayage ;)
Au fait t'as quoi comme "relay_host=" dans main.cf ?
 
Coté du code d'erreur, c'est pas une bonne idée...Je sasis même pas si c'est possible ( une 450 passe encore mais une 250 :??: )  
Comment postfix va il pouvoir gérer ces types de mails ? Il les garde en file d'attente indéfiniement ?
 
Mieux vaut laisser spamassassin + clamav + amavisd faire leur taf  
 

Reply

Marsh Posté le 28-01-2005 à 16:42:15    

:jap:  
 
local_recipient_table fonctionne quand tu fais les 2 en fait ? (local et relay) ou tu dois utiliser les tables locales et relay? (pour ma culture là)
 
En fait le problème que j'ai c'est que mon serveur de mail en bout de chaîne est  vite surchargé si je laisse arriver tous les mails jusqu'à lui.
Le ratio est d'environ 1/10 mail avec destinataire correct (sur 15000 mails/jour)
 
Donc le fait de stopper tous les mails à destination d'une personne inconnue serait un bon préalable.
 
Actuellement il renvoit un message de ce type au destinataire:
 
  ----- The following addresses had permanent fatal errors -----
<tmp@mondom.com>
    (reason: 550 <tmp@mondom.com>: User unknown in relay recipient table)
 
 
Je vais tester ce que donne un 450 ...
 
Tu fais subir quel châtiment aux mails destinés à des utilisateurs non listés dans ta local_recipient_table?
 
Ensuite si je laisse traiter tous les mails par amavisd t co, j'en ai pas mal qui passeraient et ça me prend des ressources considérables :sweat: et en plus l'AS400 doit les redistribuer...
(c'était comme ça avant-hier donc)
 
L'idéal serait de les rediriger vers un utilisateur local du relais: j'évite le retour d'info et j'ai 250 Go d'espace disque libre sur ce serveur , en faisant tourner un script toutes les X (6 heures) qui supprimerait cette file, ce serait bien.
 :)
 
 
edit: Je sais pas quel relay host j'ai dans mon main.cf  
 
...to be continued lundi (j'ai bouffé trop de logs là  ;)  )-> WE


Message édité par elpoulpo le 28-01-2005 à 16:44:55
Reply

Marsh Posté le 28-01-2005 à 17:36:11    

La table "local" est utilisé par postfix quand postfix est serveur de ton domaine.
La table "relay" est utilisée si ton SMTP est un simple relay  vers un autre SMTP.
 
Ensuite tu peux géré ou tu envoies ton mail grace à /etc/postfix/transport
 
 
Par contre j'ai pas trop compris ou est ton serveur postfix ?
Il est MX de ton domaine ? Il est directement attaqué de "l'extérieur" ?
S'il est en "bout de chaine" c'est au niveau de ta machine ou bien qu'il y  a d'autre serveurs SMTP devant ?
 
Si c'est sur ta machine ou il est en "bout de chaine", ça peut être un gros soucis...
Il vaut mieux que ton MTA soit la pour n'accepter que les mails qui vont bien. Les 1er tests sont fait pour être sur que l'email est valide, que la taille de ton mail est acceptable. C'est déja 90% de ton traffic gagné ( et en temps CPU et en bande passante)
 
Si tu renvoies une 550 au serveur SMTP qui est en train de vouloir transférer un mail sur ton postfix, ça stoppe le "dialogue"
 
coté DSN (délivery status notification) tu peux les éviter il me semble. Par contre tu ne peux pas éviter le code 550 et son interprettation par le serveur SMTP distant...
 

Reply

Marsh Posté le 28-01-2005 à 17:59:16    

Ah Ok, le 550 est assez violent donc (j'ai des erreurs qui doivent provenir de ça d'aileurs!)
 :ange:  
 
Le schéma c'est en fait:
 
SMTP du FAI qui renvoit tous les mails à destination du domaine sur le routeur / firewall.
On forward le flux SMTP sur le serveur linux (postfix-amavis).
 
Ce serveur doit supprimer spam/virus et messages indésirables .
 
Il les relaie ensuite sur le port 25 de l'AS400.(c'est amavis d'aileur qui forward: ça peut poser des souçis?)
L'AS400 distribue les mails dans les boîtes utilisateurs et ceux-ci viennent chercher leurs mails via le serveur pop de l'AS400.
 
 
 
Le serveur postfix est là pour simplifier le boulot de l'AS400 :jap:


Message édité par elpoulpo le 28-01-2005 à 18:00:37
Reply

Marsh Posté le 03-02-2005 à 10:00:22    

:o  
 
Un doute horrible m'assaille:
 
Vu que c'est le FAI qui centralise tous nos mails (qui gère notre nom de domaine en fait) et les renvoie sur notre routeur:  
je peux oublier les restrictions  
HELO  
et
smtpd_client_restrictions = ( à part : permit_mynetworks )
 
de type:
reject_rbl_client bl.spamcop.net  
 
Vu que le seul client est mon FAI?
 :??:  
 
 
Autre question: Est-ce que le fait de relayer directement avec amavis vers l'AS400 peut poser des problèmes,- paramétré dans le amavis.conf - (ça tourne apparement bien mais ce n'est pas ce qu'on voit dans les tutos...)
 
 
 
                                       

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed