Í Indy setur tú proxy í IOHandlerina, sum TIdSMTP brúkar. Halt TIdSMTP.Host og Port vend móti posttænastuni. Proxy-parturin í IOHandlerini veitir millumgongdina og ger proxy-handshake á sama sambandi.

Eindin, sum tú brúkar, veldst um Indy-útgávuna: Indy 9 vísir SocksInfo; Indy 10 brúkar TransparentProxy. Kanna partabókasavnið í forritinum í staðin fyri at velja dømi bara eftir navninum á Delphi-útgávuni.

Indy 10 við SOCKS5

Haldið, at formurin longu hevur hesar partar:

  • Smtp: TIdSMTP
  • MailSocket: TIdIOHandlerStack
  • Socks: TIdSocksInfo

Set og stilla teir, áðrenn tú letur SMTP-sambandið upp:

Smtp.Host := 'smtp.example.net';
Smtp.Port := 587;
Smtp.IOHandler := MailSocket;

Socks.Host := 'proxy.example.net';
Socks.Port := 1080;
Socks.Version := svSocks5;
MailSocket.TransparentProxy := Socks;

Portvirðini eru dømi. SMTP-porturin má passa tænastuna og TLS-háttin, sum tú ætlar at brúka. SOCKS-porturin hoyrir proxynum til.

Fyri eina loyvda almennari SMTP-roynd, har ein almennur millumgangur er loyvdur, bjóðar SOCKS5-proxylistin møgulig bústaðar. Vátta, at valmøguleikin loyvir veruliga postvertin og portin, og brúka greinina uttan proxy-innritan uttan at goyma váttanir frá einum fyrri proxy.

TIdSocksInfo byrjar við svNoSocks, so bert at seta eitt proxy-vertnavn virkjar tað ikki. Vel hóskandi SOCKS-útgávu. Um proxy krevur SOCKS5-brúkaranavn/lykilorð-innritan, stillað bæði innritanarháttin og váttanirnar:

Socks.Authentication := saUsernamePassword;
Socks.Username := ProxyUser;
Socks.Password := ProxyPassword;

ProxyUser og ProxyPassword umboða virði, sum forritið veitir. Hesar eindir innrita seg móti proxynum. Stilla SMTP-kontuna og innritanarhátt hennara serstakt í postkundanum.

At varðveita eina verandi TLS IOHandler

Ein postkundi, sum brúkar STARTTLS ella óbeina TLS, hevur tørv á SSL-førari IOHandler. Skift ikki tí partinum út við einum vanligum TIdIOHandlerStack bara fyri at seta proxy inn.

Í Indy 10 kemur SSL-IOHandler-grundin av TIdIOHandlerStack og arvar proxy-stuðulin. Fyri eina verandi hóskandi SSL IOHandler, nevnd MailTLS, verður sambandið:

Smtp.IOHandler := MailTLS;
MailTLS.TransparentProxy := Socks;

Stillingin UseTLS á SMTP-partinum velur framvegis TLS-hátt posttænastunnar. Stilla skjalagóðkenning og vertnavnsváttan í TLS-samgonguni fyri smtp.example.net, ikki fyri proxy-vertnavnið. At seta eina tunna fastsetur ikki skjalagóðkenning sjálvt.

At brúka ein HTTP CONNECT-proxy í staðin

Fyri Indy 10, brúka ein TIdConnectThroughHttpProxy-part, tøkt úr IdConnectThroughHttpProxy. Við tí fyri treyt, at ein verandi form-eigd eind, nevnd HttpTunnel, er til:

HttpTunnel.Host := 'proxy.example.net';
HttpTunnel.Port := 8080;
HttpTunnel.Enabled := True;
MailSocket.TransparentProxy := HttpTunnel;

Um SMTP brúkar MailTLS, set HttpTunnel á TransparentProxy hjá tí handteraranum í staðin. Postmálið verður verandi á Smtp.

Hesin parturin ger eina HTTP CONNECT-tunnu og setur í verk Basic proxy-innritan gjøgnum Username- og Password-eindirnar. Eitt proxy, sum krevur aðra innritanarhátt, tørvar hóskandi íløgu; halda ikki, at hesar tvær eindirnar veita allar HTTP-innritanarætlanir.

Proxy má eisini loyva CONNECT til veruliga portin á posttænaranum. Loyvi at tunna til vevtenarar á 443 merkir ikki loyvi at náa einari sendingartænastu á 587 ella einum SMTP-tenara á 25.

Indy 9-sambandið

Indy 9 brúkar eina TIdIOHandlerSocket og SocksInfo-eind hennara. Við form-eigdum parti nevndum Socket9 og Socks9 er samsvarandi kopling:

Smtp.IOHandler := Socket9;
Socket9.SocksInfo := Socks9;
Socks9.Host := 'proxy.example.net';
Socks9.Port := 1080;
Socks9.Version := svSocks5;

SOCKS-íløgan hjá tí stuðlar útgávum 4, 4a og 5. Indy 10-uppstillingin við TransparentProxy og HTTP CONNECT-partinum kann ikki bara límast í hesa eldri grænseflatu.

Tað er eingin serstøk fyrireikandi proxy-innritan at gera við einum øðrum TCP-kunda. Proxy-innritan, tunnu-uppseting og SMTP-umsiting má hoyra til sambandið, sum SMTP-parturin veruliga brúkar. Tá ið henda koplingin er rætt, kann ein brestur staðsetjast í proxy-samráðing, SMTP-heilsan, TLS ella post-innritan í staðin fyri at meta hvørja avísan sum eitt ringt postlykilorð.

Skyldar greinar