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 і выкарыстайце канчатковы пункт з яго дакументацыі.

Падобныя артыкулы