Ενότητα 1 · 1.4
Θύρες, κρυπτογράφηση και σύνδεση
Ενότητα 1: Πώς λειτουργεί το email · Χρόνος ανάγνωσης: 10 λεπτά
Στόχος μαθήματος: Μετά από αυτό το μάθημα θα μπορείτε να πείτε για κάθε θύρα mail σε τι χρησιμεύει, να εξηγήσετε τη διαφορά ανάμεσα σε STARTTLS και άμεσο TLS, και να εξηγήσετε ένα μήνυμα πιστοποιητικού ή μια απορριφθείσα σύνδεση.
Βασικές έννοιες: θύρα 25, 587, 465, 993, 995, 143, 110, STARTTLS, άμεσο TLS (implicit TLS, RFC 8314), πιστοποιητικό, όνομα server, SMTP authentication (SMTP AUTH), open relay, αποκλεισμός θύρας 25, app-wachtwoord, OAuth
Μια θύρα είναι μια πόρτα
Ένας server έχει μία διεύθυνση IP, αλλά πολλές πόρτες. Κάθε υπηρεσία ακούει στη δική της θύρα, έναν αριθμό. Ο browser σας χτυπάει στη θύρα 443, το πρόγραμμα email σας στη θύρα 993 για να διαβάσει mail και στη 587 ή 465 για να στείλει. Αν επιλέξετε τη λάθος πόρτα, δεν απαντά κανείς, ή απαντά κάποιος που μιλάει διαφορετική γλώσσα. Αυτό δίνει ασαφή μηνύματα σφάλματος όπως "δεν είναι δυνατή η σύνδεση" ή "ο server δεν ανταποκρίνεται".
Οι θύρες mail σε μια λίστα:
| Θύρα | Για τι | Κρυπτογράφηση | Σύνδεση |
|---|---|---|---|
| 25 | Μεταξύ servers (παράδοση, μάθημα 1.1 βήμα 4) | STARTTLS αν μπορούν και οι δύο | Όχι |
| 587 | Αποστολή από το πρόγραμμα email σας (submission, RFC 6409) | STARTTLS | Ναι, υποχρεωτικό |
| 465 | Αποστολή από το πρόγραμμα email σας (submissions) | Άμεσο TLS | Ναι, υποχρεωτικό |
| 993 | Ανάγνωση mail με IMAP | Άμεσο TLS | Ναι |
| 995 | Λήψη mail με POP3 | Άμεσο TLS | Ναι |
| 143 | IMAP, παλιό | Ενδεχομένως STARTTLS | Ναι |
| 110 | POP3, παλιό | Ενδεχομένως STARTTLS | Ναι |
Γιατί όχι απλώς η θύρα 25 για αποστολή;
Παλιά ρυθμίζατε στο πρόγραμμα email σας τη θύρα 25. Αυτό ανήκει στο παρελθόν για δύο λόγους.
Πρώτον: στη θύρα 25 ένας mail server δέχεται mail από όλους, για τα δικά του domains. Δεν γίνεται σύνδεση. Ένας server που στη θύρα 25 προωθεί επίσης mail από όλους προς άλλα domains, ονομάζεται open relay, και αυτός γίνεται αντικείμενο κατάχρησης από spammers μέσα σε λίγες ώρες. Γι' αυτό η αποστολή του δικού σας mail σε όλο τον κόσμο έγινε ξεχωριστή υπηρεσία: submission στη θύρα 587 (και 465), όπου πάντα συνδέεστε πρώτα.
Δεύτερον: πολλοί πάροχοι internet αποκλείουν εξερχόμενη κίνηση προς τη θύρα 25 από οικιακές συνδέσεις. Έτσι ένας μολυσμένος υπολογιστής σε ένα σαλόνι δεν μπορεί να στείλει spam απευθείας σε mail servers. Συνέπεια για εσάς: αν προσπαθήσετε να στείλετε από το πρόγραμμα email σας μέσω της θύρας 25, μπορεί να μην λειτουργεί στο σπίτι αλλά να λειτουργεί στο γραφείο, ή αντίστροφα.
Να θυμάστε: τα προγράμματα email στέλνουν μέσω 587 ή 465, με σύνδεση. Η θύρα 25 είναι για τους servers μεταξύ τους.
STARTTLS ή άμεσο TLS;
Υπάρχουν δύο τρόποι να κρυπτογραφήσετε μια σύνδεση mail.
Άμεσο TLS (implicit TLS): η σύνδεση είναι κρυπτογραφημένη από το πρώτο byte, όπως ένας ιστότοπος με https. Αυτό συμβαίνει στις 465, 993 και 995.
STARTTLS: η σύνδεση ξεκινά μη κρυπτογραφημένη. Ο server λέει "μπορώ να κρυπτογραφήσω", ο client απαντά STARTTLS, και από εκείνη τη στιγμή όλα είναι κρυπτογραφημένα. Αυτό συμβαίνει στη 587 (και στις 25, 143 και 110).
Για την ασφάλεια έχει μικρή σημασία, αρκεί το πρόγραμμά σας να επιβάλλει υποχρεωτικά το STARTTLS. Ο κίνδυνος του STARTTLS βρίσκεται στην αρχή: κάποιος που βρίσκεται ανάμεσα σε εσάς και τον server μπορεί να αφαιρέσει την προσφορά "μπορώ να κρυπτογραφήσω". Ένα πρόγραμμα που τότε συνεχίζει σιωπηλά χωρίς κρυπτογράφηση, στέλνει τον κωδικό σας αναγνώσιμο μέσω της γραμμής. Γι' αυτό το RFC 8314 (2018) συνιστά για προγράμματα email το άμεσο TLS (465, 993, 995) αντί του STARTTLS. Στην πράξη, το 587 με STARTTLS και το 465 με SSL/TLS είναι και τα δύο καλά, αρκεί να ρυθμίσετε την κρυπτογράφηση στο πρόγραμμά σας σε "υποχρεωτική" και όχι σε "αν είναι διαθέσιμη".
Ένα συχνό λάθος είναι ο λανθασμένος συνδυασμός: θύρα 587 με "SSL/TLS", ή θύρα 465 με "STARTTLS". Το πρόγραμμα τότε περιμένει κάτι διαφορετικό από αυτό που κάνει ο server, και η σύνδεση κολλάει ή αποτυγχάνει. Να θυμάστε τα ζευγάρια: 587 + STARTTLS και 465 + SSL/TLS. Τα προγράμματα ονομάζουν το άμεσο TLS μερικές φορές "SSL", "SSL/TLS" ή "TLS"· το STARTTLS λέγεται μερικές φορές επίσης "TLS". Κοιτάξτε λοιπόν τη θύρα.
Το πιστοποιητικό και το όνομα του server
Σε κάθε κρυπτογραφημένη σύνδεση, ο server δείχνει ένα πιστοποιητικό, που αποδεικνύει ότι είναι αυτός που ισχυρίζεται. Το πρόγραμμα email σας ελέγχει δύο πράγματα: εκδόθηκε το πιστοποιητικό από αξιόπιστο φορέα και είναι ακόμα έγκυρο, και περιέχεται σε αυτό το όνομα που εσείς έχετε συμπληρώσει ως server;
Αυτό το δεύτερο είναι το πιο συχνό λάθος. Αν συμπληρώσετε mail.example.com, αλλά στο πιστοποιητικό αναγράφεται μόνο server12.hosting.example, τότε λαμβάνετε ένα μήνυμα όπως "Δεν είναι δυνατή η επαλήθευση της ταυτότητας του server" ή "Το όνομα principal του προορισμού είναι λανθασμένο". Η ίδια η σύνδεση είναι μεν κρυπτογραφημένη, αλλά το πρόγραμμά σας δεν μπορεί να είναι σίγουρο ότι μιλάει με τον πραγματικό server.
Μην κλείνετε απλώς ένα τέτοιο μήνυμα. Η λύση είναι ένα όνομα server που περιέχεται πράγματι στο πιστοποιητικό (δείτε μάθημα 2.1). Σε έναν κοινόχρηστο server αυτό είναι συχνά το όνομα του ίδιου του server, το οποίο σας δίνει ο πάροχός σας. Μια άλλη γνωστή αιτία: ένα antivirus που "σαρώνει" κρυπτογραφημένο mail και βάζει για αυτό το δικό του πιστοποιητικό ενδιάμεσα. Στο μήνυμα τότε αναγράφεται το όνομα του scanner στο πεδίο "εκδόθηκε από".
Σύνδεση κατά την αποστολή
Στις 587 και 465 πρέπει να συνδεθείτε προτού ο server θελήσει να στείλει το mail σας προς τα έξω. Αυτό ονομάζεται SMTP authentication (SMTP AUTH). Στο πρόγραμμά σας η επιλογή ονομάζεται "ο εξερχόμενος server απαιτεί επαλήθευση ταυτότητας", "απαιτείται σύνδεση" ή "authentication: κανονικός κωδικός πρόσβασης". Συνήθως χρησιμοποιείτε το ίδιο όνομα χρήστη και τον ίδιο κωδικό πρόσβασης όπως για το IMAP.
Αν η επαλήθευση ταυτότητας είναι απενεργοποιημένη, ή το όνομα χρήστη στον εξερχόμενο server παρέμεινε κενό, τότε μπορείτε να διαβάζετε mail αλλά όχι να στέλνετε. Ο server απαντά τότε με κάτι σαν 530 5.7.0 Authentication required ή 554 5.7.1 Relay access denied. Αυτή είναι η πιο συχνή αιτία για "η λήψη λειτουργεί, η αποστολή όχι".
Ένα δεύτερο είδος άρνησης: 535 5.7.8 Authentication failed. Τότε ο συνδυασμός ονόματος χρήστη και κωδικού πρόσβασης δεν είναι σωστός. Προσέξτε: μετά από κάποιες αποτυχημένες προσπάθειες, πολλοί servers αποκλείουν τη διεύθυνση IP από την οποία προέρχονται αυτές οι προσπάθειες, για προστασία από μάντεμα κωδικού. Ένα παλιό τηλέφωνο με παλιό κωδικό πρόσβασης μπορεί έτσι να αποκλείσει ολόκληρο το γραφείο σας.
App-wachtwoorden και OAuth
Σε μεγάλους παρόχους όπως η Google και η Microsoft, η σύνδεση με απλώς τον κανονικό κωδικό πρόσβασής σας σε ένα ανεξάρτητο πρόγραμμα email λειτουργεί όλο και λιγότερο. Αυτοί χρησιμοποιούν OAuth: το πρόγραμμά σας σας στέλνει σε μια σελίδα σύνδεσης του παρόχου, συνδέεστε εκεί (ενδεχομένως με επαλήθευση δύο βημάτων), και το πρόγραμμα λαμβάνει ένα κλειδί αντί για τον κωδικό πρόσβασής σας. Προγράμματα που δεν μπορούν να το κάνουν αυτό, λαμβάνουν μερικές φορές ένα app-wachtwoord: έναν ξεχωριστό, μακρύ κωδικό πρόσβασης που ισχύει μόνο για εκείνο το συγκεκριμένο πρόγραμμα και που μπορείτε να ανακαλέσετε ξεχωριστά.
Σε ένα συνηθισμένο mailbox σε μια εταιρεία hosting, συνήθως συνδέεστε με τον κωδικό πρόσβασης του ίδιου του mailbox. Αυτό κάνει έναν ισχυρό και μοναδικό κωδικό πρόσβασης ακόμα πιο σημαντικό (μάθημα 3.4).
Στην πράξη: οι ρυθμίσεις ενός mailbox
Σε ένα mailbox του WebOké οι ρυθμίσεις είναι: IMAP 993 με SSL/TLS, POP3 995 με SSL/TLS, αποστολή 587 με STARTTLS ή 465 με SSL/TLS, επαλήθευση ταυτότητας ενεργοποιημένη με την πλήρη διεύθυνση email σας και τον κωδικό πρόσβασης του mailbox. Σε άλλους παρόχους λειτουργεί παρόμοια: οι θύρες είναι σχεδόν παντού οι ίδιες, μόνο το όνομα του server διαφέρει. Ποιο όνομα server να επιλέξετε, το βλέπετε στο μάθημα 2.1.
Σύνοψη
- Τα προγράμματα email στέλνουν μέσω 587 (STARTTLS) ή 465 (άμεσο TLS), πάντα με σύνδεση. Η θύρα 25 είναι για τους servers μεταξύ τους και συχνά αποκλείεται στο σπίτι.
- Η ανάγνωση γίνεται μέσω 993 (IMAP) ή 995 (POP3), και οι δύο με άμεσο TLS.
- Συνδυάστε σωστά: 587 + STARTTLS, 465 + SSL/TLS. Ρυθμίστε την κρυπτογράφηση ως υποχρεωτική.
- Ένα μήνυμα πιστοποιητικού σημαίνει συνήθως: το όνομα server που συμπληρώσατε δεν περιέχεται στο πιστοποιητικό. Το απλό κλείσιμο του μηνύματος δεν είναι λύση.
- "Η λήψη λειτουργεί, η αποστολή όχι" σημαίνει σχεδόν πάντα: η επαλήθευση ταυτότητας για τον εξερχόμενο server είναι απενεργοποιημένη ή κενή.
Κουίζ
Άσκηση
Άσκηση Z1.4: Θύρες και πιστοποιητικό ενός mail server. Συμπληρώστε το όνομα του εισερχόμενου και του εξερχόμενου server που χρησιμοποιείτε για το δικό σας mailbox (αν δεν έχετε δικό σας mailbox, χρησιμοποιήστε imap.gmail.com και smtp.gmail.com). Επιλέξτε για τη θύρα 993 (εισερχόμενη) και τις θύρες 465 και 587 (εξερχόμενες) αυτό που περιμένετε: άμεσο TLS, STARTTLS ή μη προσβάσιμο, και συμπληρώστε αν πιστεύετε ότι το όνομα περιέχεται στο πιστοποιητικό. Το πρόγραμμα συνδέεται το ίδιο με τις τρεις θύρες και τοποθετεί το αποτέλεσμα δίπλα στις απαντήσεις σας.
Για περαιτέρω μελέτη
Τα βήματα σε αυτά τα άρθρα ισχύουν για τους πίνακες ελέγχου του WebOké· σε άλλους παρόχους λειτουργεί παρόμοια.
- Εγχειρίδιο DirectAdmin 8.1: Όλες οι ρυθμίσεις με μια ματιά: servers, θύρες και ασφάλεια
- Εγχειρίδιο DirectAdmin 8.8: Το Send ή η λήψη δεν λειτουργεί: πώς το λύνετε
- Μήνυμα σφάλματος πιστοποιητικού κατά τη λήψη email
- Δεν μπορείτε να στείλετε email (η λήψη λειτουργεί κανονικά)
- RFC 8314 (άμεσο TLS για προγράμματα email), RFC 6409 (submission), RFC 3207 (STARTTLS), RFC 4954 (SMTP AUTH)
