AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Indy: POP und SSL - wie?
Thema durchsuchen
Ansicht
Themen-Optionen

Indy: POP und SSL - wie?

Ein Thema von ManuMF · begonnen am 19. Mär 2009 · letzter Beitrag vom 28. Mai 2009
Antwort Antwort
Seite 2 von 2     12   
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#11

Re: Indy: POP und SSL - wie?

  Alt 20. Mär 2009, 17:36
Hi,

also ich habe das gerade mal getestet: Es klappt bei mir mit gmail auch nicht. Mit z.B. 1&1 mit und ohne SSL keine Probleme... Wenn ich das Timeout im SSL IOHandler setzte (z.B. 2500), dann kommt auch irgendwann ein Timeout mit gmail.

Irgendwas stimmt da nicht, ich schau mir das mal genauer an. Danach poste ich wieder hier.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#12

Re: Indy: POP und SSL - wie?

  Alt 20. Mär 2009, 18:05
Hi,

so - da hast Du mich ja gerade ganz verrückt gemacht. Dachte schon, es sei ein Bug drin

Lösung mit einem TIdPOP3 und einem TIdSSLIOHandlerSockenOpenSSL (als IOHandler für TIdPOP3):

Delphi-Quellcode:
IdPOP31.Host := 'pop.gmail.com';
IdPOP31.Port := 995; // Port für Secure POP3
IdPOP31.UseTLS := utUseImplicitTLS; // wichtig, gmail akzeptiert nichts anderes!
IdPOP31.Username := 'meinname@gmail.com';
IdPOP31.Password := 'passwort';
IdPOP31.Connect;
Alles andere auf Default lassen.

Ergebnis (per StatusInfo ausgelesen):
Zitat:
Resolving hostname pop.gmail.com.
Connecting to 74.125.79.111.
SSL status: "before/connect initialization"
SSL status: "before/connect initialization"
SSL status: "SSLv3 write client hello A"
SSL status: "SSLv3 read server hello A"
SSL status: "SSLv3 read server certificate A"
SSL status: "SSLv3 read server done A"
SSL status: "SSLv3 write client key exchange A"
SSL status: "SSLv3 write change cipher spec A"
SSL status: "SSLv3 write finished A"
SSL status: "SSLv3 flush data"
SSL status: "SSLv3 read server session ticket A"
SSL status: "SSLv3 read finished A"
SSL status: "SSL negotiation finished successfully"
SSL status: "SSL negotiation finished successfully"
Cipher: name = RC4-MD5; description = RC4-MD5 SSLv3 Kx=RSA Au=RSA Enc=RC4(128) Mac=MD5
; bits = 128; version = TLSv1/SSLv3;
Connected.
Anzahl E-Mails:0
Disconnecting.
SSL status: "SSL negotiation finished successfully"
Disconnected.
Fürs das Checken hab ich noch eine TIdMessage Komponente auf die Form gezogen und diesen Code verwendet:
Delphi-Quellcode:
var
  i, MsgAnz: Integer;
begin
  IdPOP31.Host := 'pop.gmail.com';
  IdPOP31.Port := 995; // Port für Secure POP3
  IdPOP31.UseTLS := utUseImplicitTLS; // wichtig, gmail akzeptiert nichts anderes!
  IdPOP31.Username := 'meinname@gmail.com';
  IdPOP31.Password := 'passwort';
  IdPOP31.Connect;
  // mails checken
  MsgAnz := IdPOP31.CheckMessages;
  Memo1.Lines.Add('Anzahl E-Mails:' + IntToStr(MsgAnz));
  for i:= 1 to MsgAnz do
  begin
    idpop31.RetrieveHeader(i, IdMessage1);
    Memo1.Lines.Add('E-Mail Nr:' + IntToStr(i)+ sLineBreak +
      ' Von:' + IdMessage1.From.Text + sLineBreak +
      ' Betreff:' + IdMessage1.Subject);
    IdMessage1.Clear;
  end;
  IdPOP31.Disconnect;
end;
Natürlich muß POP3 in den GMail-Einstellungen per Webinterface explizit eingeschaltet werden. Dann geht das mit den aktuellen Indys und OpenSSL aber einwandfrei. Ich hoffe, es hilft Dir etwas weiter!

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
Benutzerbild von ManuMF
ManuMF

Registriert seit: 11. Jul 2005
1.016 Beiträge
 
Delphi 6 Personal
 
#13

Re: Indy: POP und SSL - wie?

  Alt 20. Mär 2009, 18:37
Jupp, funktioniert einwandfrei!
Vielen Dank!

Tja, kleines Wörtchen, großer Effekt (Implicit statt Explicit)
Gruß,
ManuMF

Endlich hab ich was Positives an Vista entdeckt: Das mitgelieferte Mahjongg
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#14

Re: Indy: POP und SSL - wie?

  Alt 20. Mär 2009, 19:14
Hi ManuMF,

Zitat von ManuMF:
Jupp, funktioniert einwandfrei!
Vielen Dank!

Tja, kleines Wörtchen, großer Effekt (Implicit statt Explicit)
Das freut mich zu hören, gerne! Ja, die Option hatte ich auch erst wieder übersehen



Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
BBoy

Registriert seit: 17. Jan 2007
418 Beiträge
 
Delphi 10 Seattle Professional
 
#15

Re: Indy: POP und SSL - wie?

  Alt 28. Mai 2009, 17:30
Ich nutze Delphi 2007, welche .dll brauche ich denn dafür? und woher bekomme ich die?
Denn bei mir kommt immer der fehler "EIdOSSLCouldNotLoadSSLLibrary". Die 2 dlls habe ich in den ordner kopiert indem das programm ist wo ich programmiere. ich denke es sind die falschen dll, oder?
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#16

Re: Indy: POP und SSL - wie?

  Alt 28. Mai 2009, 18:12
Hallo BBoy,

Zitat von BBoy:
Ich nutze Delphi 2007, welche .dll brauche ich denn dafür? und woher bekomme ich die?
Denn bei mir kommt immer der fehler "EIdOSSLCouldNotLoadSSLLibrary". Die 2 dlls habe ich in den ordner kopiert indem das programm ist wo ich programmiere. ich denke es sind die falschen dll, oder?
Richtig, die DLLs sind falsch bzw. Deine Indy Installation ist veraltet.

Wenn Du in diesem Forum in den Bereich Übersicht > "VCL / WinForms / Controls" gehst, findest Du einen Thread der sticky gemacht ist mit dem Titel "Indy OpenSSL Sicherheitsupdates". Dort gehst Du ganz zum Ende und findest den Link zu den aktuellen DLLs.

Ich rate, wie immer, davon ab andere DLLs zu verwenden: Unsere sind geprüft und gegen msvcrt.dll gelinkt, die etlichen im Internet gerne gegen das msvcrt 8+ (benötigen also sonst je nach Betriebssystem eigene Runtime DLLs).

Die DLLs funktionieren nur mit aktuellen Indy Versionen, weil sich etwas in OpenSSL geändert hat. Im Forum findest Du sicherlich nach kurzer Suche auch dazu Tipps. Indy liegt ebenfalls auf dem Fulgan Mirror (ein Verzeichnis hoch, ZIP, IndyTiburon.zip). Du könntest theoretisch ältere DLLs einsetzen, damit Du Indy nicht aktualisieren mußt (~ bis OpenSSL 0.9.8e) - aber davon rate ich wegen bekannter Sicherheitslücken ab.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
BBoy

Registriert seit: 17. Jan 2007
418 Beiträge
 
Delphi 10 Seattle Professional
 
#17

Re: Indy: POP und SSL - wie?

  Alt 28. Mai 2009, 18:27
Ich habe Indy Direct 10.1.5, und mir alle dll mal runtergeladen und probiert, aber keine davon funktioniert. Da ich einfach nur meine mails abragen will, würde ich gerne auf indy updates usw verzichten. Gibt es keine dll für meine version die ich einfach nutzen kann?
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#18

Re: Indy: POP und SSL - wie?

  Alt 28. Mai 2009, 18:32
Zitat von BBoy:
Ich habe Indy Direct 10.1.5, und mir alle dll mal runtergeladen und probiert, aber keine davon funktioniert. Da ich einfach nur meine mails abragen will, würde ich gerne auf indy updates usw verzichten. Gibt es keine dll für meine version die ich einfach nutzen kann?
Die aktuellen OpenSSL DLLs (0.9.8e bis 0.9.8k) benötigen - abgesehen von meinen früheren Backports - Indy 10.2.3 und neuer (z.B. in Delphi 2009).

Du kannst auf dem Fulgan Mirror in das Verzeichnis Archiv gehen - diese Dateien laufen auch mit den alten Indy Versionen. Aber: Ich empfehle dringen, dies nur zu machen, wenn man genau weiß, was man macht. Dies eröffnet u.U. ausnutzbare Sicherheitslücken für den Entwickler und eventuelle Kunden bzw. Nutzer. Also an alle anderen: Nicht nachmachen!

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
BBoy

Registriert seit: 17. Jan 2007
418 Beiträge
 
Delphi 10 Seattle Professional
 
#19

Re: Indy: POP und SSL - wie?

  Alt 28. Mai 2009, 18:41
ok, danke das funktioniert jetzt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz