Το MailKit παρέχει πελάτη SOCKS5 απευθείας μέσω της διεπαφής σύνδεσης της υπηρεσίας αλληλογραφίας. Ορίστε το ProxyClient πριν καλέσετε το Connect:

using MailKit.Net.Pop3;
using MailKit.Net.Proxy;
using MailKit.Security;

using var client = new Pop3Client();
client.ProxyClient = new Socks5Client("proxy.example.net", 1080);

client.Connect("pop.example.net", 995, SecureSocketOptions.SslOnConnect);
client.Authenticate(mailUser, mailPassword);

Console.WriteLine(client.Count);
client.Disconnect(true);

Αντικαταστήστε τους κεντρικούς υπολογιστές του παραδείγματος με τα πραγματικά τελικά σημεία SOCKS και αλληλογραφίας. Στον εμφανιζόμενο κατασκευαστή χωρίς λογαριασμό μεσολάβησης, μια καταχώριση από τη λίστα μεσολαβητών SOCKS5 μπορεί να δώσει τη διεύθυνση μεσολάβησης για μια επιτρεπόμενη δημόσια διαδρομή POP3S· πρέπει να επιτρέπει τον κεντρικό υπολογιστή αλληλογραφίας και την πραγματική θύρα. Οι τιμές mailUser και mailPassword προέρχονται από τον χειρισμό διαπιστευτηρίων γραμματοκιβωτίου της εφαρμογής. Το παράδειγμα μετρά μόνο μηνύματα· δεν κατεβάζει τίποτα ούτε σημειώνει κάτι για διαγραφή.

Το εμφανιζόμενο API τεκμηριώνεται στο MailKit 4.17.0. Το Socks5Client διαθέτει επίσης κατασκευαστή που δέχεται System.Net.NetworkCredential όταν ο διακομιστής SOCKS απαιτεί διαπιστευτήρια.

Η θύρα 995 με SslOnConnect επιλέγει αμέσως TLS για τη σύνδεση POP3. Κρατήστε το όνομα κεντρικού υπολογιστή του διακομιστή αλληλογραφίας στο Connect ώστε το πιστοποιητικό του να ελέγχεται κανονικά. Για πάροχο που απαιτεί STLS στη θύρα 110, επιλέξτε ρητά SecureSocketOptions.StartTls και χρησιμοποιήστε το τεκμηριωμένο τελικό σημείο του παρόχου.

Σχετικά άρθρα