Χρησιμοποιήστε το αυτό αν διαχειρίζεστε τη δική σας υποδομή ηλεκτρονικού ταχυδρομείου, ή αν ο πάροχός σας είναι κάποιος που δεν παραθέτουμε απευθείας — σχεδόν κάθε υπηρεσία ηλεκτρονικού ταχυδρομείου προσφέρει SMTP.
⚠️ Αν ο πάροχός σας είναι η Mailgun, η SendGrid, η Postmark, το Amazon SES ή η Resend, χρησιμοποιήστε τον αντίστοιχο δικό του οδηγό. Αυτές οι συνδέσεις παρέχουν καλύτερα μηνύματα σφάλματος όταν κάτι πάει στραβά, επειδή μπορούμε να διαβάσουμε τι ανέφερε στην πραγματικότητα ο πάροχος αντί για έναν κωδικό κατάστασης SMTP.
Τι χρειάζεστε
Τέσσερα πράγματα, από όποιον διαχειρίζεται τον διακομιστή αλληλογραφίας σας:
- Host — π.χ.
smtp.yourprovider.com
- Port —
587, 465 ή 2525
- Username και password
Ποια θύρα
Η 587 είναι για υποβολή (submission) με STARTTLS και είναι αυτή που πρέπει να χρησιμοποιήσετε. Η σύνδεση ξεκινά σε απλό κείμενο (in the clear) και αναβαθμίζεται σε TLS πριν σταλεί οτιδήποτε.
Η 465 είναι implicit TLS — κρυπτογραφημένη από το πρώτο byte. Εξίσου καλή επιλογή· ορισμένοι πάροχοι την προτιμούν.
Η 2525 είναι μια ανεπίσημη εναλλακτική λύση που προσφέρουν ορισμένοι πάροχοι φιλοξενίας επειδή μερικά δίκτυα αποκλείουν τη θύρα 587. Χρησιμοποιήστε την μόνο αν σας το υποδείξει ο πάροχός σας.
⛔ Η θύρα 25 γίνεται αποδεκτή εδώ, αλλά σχεδόν ποτέ δεν είναι η σωστή επιλογή. Είναι η θύρα που χρησιμοποιούν οι διακομιστές αλληλογραφίας για να επικοινωνούν μεταξύ τους, όχι αυτή που χρησιμοποιεί μια εφαρμογή για την υποβολή ενός μηνύματος. Είναι αποκλεισμένη στα περισσότερα δίκτυα, συχνά δεν διαθέτει έλεγχο ταυτότητας και όπου λειτουργεί, είναι συχνά μη κρυπτογραφημένη.
⛔⛔ Δεν θα στείλουμε μέσω μη κρυπτογραφημένης σύνδεσης. Αν αφήσετε ενεργοποιημένη την επιλογή Use STARTTLS — και θα πρέπει να το κάνετε — και ο διακομιστής σας αρνηθεί να αναβαθμίσει τη σύνδεση, η αποστολή αποτυγχάνει αντί να συνεχιστεί σε απλό κείμενο. Αυτό γίνεται σκόπιμα: οι σύνδεσμοι επαναφοράς κωδικού πρόσβασης των πελατών σας ταξιδεύουν σε αυτά τα μηνύματα, και μια υποβάθμιση ασφαλείας που δεν αντιλαμβάνεται κανείς είναι το χειρότερο είδος αποτυχίας, επειδή το μήνυμα εξακολουθεί να φτάνει.
Ρυθμίστε πρώτα το DNS σας
Ο πάροχός σας δεν το κάνει αυτό για εσάς όπως μια διαχειριζόμενη (managed) υπηρεσία. Χρειάζεστε, στον τομέα από τον οποίο στέλνετε:
SPF — μια εγγραφή TXT που εξουσιοδοτεί τη διεύθυνση του διακομιστή σας: v=spf1 ip4:203.0.113.10 -all, ή v=spf1 a:smtp.yourprovider.com -all. Αν έχετε ήδη μια εγγραφή SPF, επεξεργαστείτε την· δύο εγγραφές SPF σε έναν τομέα αποτυγχάνουν εντελώς τον έλεγχο SPF.
DKIM — ο διακομιστής αλληλογραφίας σας υπογράφει τα εξερχόμενα μηνύματα και εσείς δημοσιεύετε το αντίστοιχο δημόσιο κλειδί στο <selector>._domainkey.yourdomain.com. Στο Postfix αυτό είναι συνήθως το OpenDKIM· ο πάροχός σας θα σας ενημερώσει για τον επιλογέα (selector).
DMARC — μια εγγραφή TXT στο _dmarc.yourdomain.com, ξεκινώντας από v=DMARC1; p=none; όσο ελέγχετε ότι τόσο το SPF όσο και το DKIM επιτυγχάνουν.
Reverse DNS — η εγγραφή PTR για τη διεύθυνση IP του διακομιστή σας θα πρέπει να επιλύεται πίσω στο hostname του. Οι μεγάλοι παραλήπτες το ελέγχουν αυτό και πολλοί δεν θα δέχονται αλληλογραφία από μια διεύθυνση χωρίς αυτήν. Την ορίζει ο πάροχος φιλοξενίας σας, όχι ο πάροχος DNS.
⭐ Ένας καλός δωρεάν έλεγχος μόλις το θέσετε σε λειτουργία: στείλτε ένα μήνυμα στο mail-tester.com και δείτε τη βαθμολογία. Σας ενημερώνει ποιο από τα τέσσερα είναι εσφαλμένο, κάτι που είναι πολύ πιο γρήγορο από το να προσπαθείτε να μαντέψετε μέσα από έναν φάκελο ανεπιθύμητων (spam).
Συνδέστε το στο Zinn®
Ανοίξτε το Email sending στον πίνακα ελέγχου σας:
- Provider — SMTP server
- Send from this domain —
mail.yourdomain.com (ένας τομέας, όχι μια διεύθυνση)
- SMTP host, Port, Username, Password
- Use STARTTLS — ενεργό, εκτός αν βρίσκεστε στη θύρα 465
⭐ Δημιουργήστε ένα αποκλειστικό γραμματοκιβώτιο ή χρήστη υποβολής για αυτό, αντί να επαναχρησιμοποιήσετε τα στοιχεία σύνδεσης ενός ατόμου. Όταν κάποιος αποχωρεί και ο κωδικός πρόσβασής του αλλάζει, οι ειδοποιήσεις των πελατών σας δεν θα πρέπει να σταματούν.
Στείλτε τη δοκιμή και εισαγάγετε τον κωδικό
Πατήστε Send test message προς ένα εισερχόμενο σε διαφορετικό τομέα, διαβάστε τον κωδικό από αυτό και εισαγάγετέ τον.
Όταν δεν λειτουργεί
«The mail server rejected the username or password» — ο έλεγχος ταυτότητας SMTP AUTH απέτυχε. Αν ο πάροχός σας διαθέτει έλεγχο ταυτότητας δύο παραγόντων στον λογαριασμό, σχεδόν σίγουρα χρειάζεστε έναν κωδικό πρόσβασης εφαρμογής (app password) αντί για τον κωδικό σύνδεσης.
«Could not reach host:port» — η θύρα είναι αποκλεισμένη, το hostname είναι λάθος ή ο διακομιστής δεν ακούει για υποβολή σε αυτήν τη θύρα. Η εκτέλεση telnet smtp.yourprovider.com 587 από άλλο μηχάνημα θα σας δείξει ποιο από αυτά συμβαίνει.
Σφάλμα TLS — το πιστοποιητικό του διακομιστή σας έχει λήξει, είναι αυτο-υπογεγραμμένο (self-signed) ή δεν ταιριάζει με το hostname που εισαγάγατε. Επαληθεύουμε τα πιστοποιητικά και δεν παρακάμπτουμε αυτόν τον έλεγχο· διορθώστε το πιστοποιητικό.
«The mail server refused the recipient» — ο διακομιστής σας δεν έχει ρυθμιστεί για αναμετάδοση (relay) για αυτόν τον αποστολέα, πράγμα που συνήθως σημαίνει ότι ο πιστοποιημένος χρήστης δεν επιτρέπεται να στέλνει εκ μέρους του τομέα αποστολής σας.
Στέλνει αλλά όλα καταλήγουν στα ανεπιθύμητα — αυτό είναι θέμα DNS, όχι SMTP. Ελέγξτε προσεκτικά τα SPF, DKIM, DMARC και reverse DNS παραπάνω, και στη συνέχεια εκτελέστε ξανά τον έλεγχο στο mail-tester.