Je sais que cette question date d'un an mais pourquoi utiliser le script alors que Postfix gère très bien le relais par SES en utilisant SMTP.
Vous pouvez soit configurer votre relayhost
si le seul courriel envoyé provient d'un expéditeur vérifié ou d'un domaine vérifié ou vous pouvez utiliser sender_dependent_relayhost_maps
pour ne relayer que les domaines et les expéditeurs vérifiés.
Dans les deux cas, vous devez commencer par configurer le mot de passe SASL pour SMTP AUTH. J'utilise /etc/postfix/sasl_password
et il doit suivre le format de :
email-smtp.us-east-1.amazonaws.com SES-USER:SES-USER-PASSWORD
Mettez à jour pour utiliser l'hôte SMTP de votre console AWS SES et les informations d'identification appropriées de l'utilisateur SES SMTP. Ensuite, vous devez configurer les paramètres du client SASL SMTP dans la section /etc/postfix/main.cf
en ajoutant ce qui suit :
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
smtp_sasl_security_options=noanonymous
smtp_sasl_mechanism_filter = login
Exécutez maintenant postmap /etc/postfix/sasl_password
et tout est prêt. Vous devez maintenant décider si vous allez tout relayer ou seulement les expéditeurs/domaines vérifiés. Si vous relayez tout, ajoutez simplement ce qui suit à votre fichier main.cf
:
relayhost = email-smtp.us-east-1.amazonaws.com
D'un autre côté, si vous souhaitez uniquement envoyer des expéditeurs/domaines vérifiés, ajoutez ce qui suit à votre fichier main.cf
à la place :
sender_dependent_relayhost_maps = hash:/etc/postfix/relayhost_maps
Ensuite, dans /etc/postfix/relayhost_maps
ajoutez vos expéditeurs/domaines vérifiés en suivant le format suivant :
verified@example.com email-smtp.us-east-1.amazonaws.com
@example.net email-smtp.us-east-1.amazonaws.com
Exécutez ce fichier à travers postmap /etc/postfix/relayhost_maps
et faire un postfix reload
et vous devriez envoyer des emails via SES.