7. Email és a Python
Alaposan körbejárjuk az emailküldést. Mindenki hallott már az SMTP protokolról, 25, 465 vagy 587-es port? SSL vagy TLS? OAuth2? HTML formátumú levél? A tanfolyamon ezekről mind szó lesz.
Ha eddig egy jól bejáratott libraryvel küldtél emailt és nem is volt vele soha semmi problémád, akkor valószínűleg nem is kellett mélyebben megismerkedned az SMTP-vel.
1997-ben az egyszerű titkosítatlan kommunikációt felváltotta az SMTPS protokoll, ami innentől kezdve az egészet bevágta egy SSL csatornába. Ez bár jó megoldás volt mégis rá két évvel az IANA megszűntette ezt a sztenderdet. De ha elárulom hogy az SMTPS a 465-ös portot használta, akkor összeráncolod a szemöldököd és az az érzés kering benned, hogy ezt már láttad valahol az emailek körül... Így 22 éve a megszűnése után a protokoll sok helyen még mindig használható de már "deprecated" állapotban.
OK. De miért szűnt meg? Az Internet Assigned Numbers Authority (IANA) azt kifogásolta, hogy ez a módszer egy kevésbé kompatibilis megoldás a korábbi protokollal szemben, hiszen a kommunikáció teljes része titkosított volt. Az új szabvány nem titkosította a kommunikációt azonnal, előbb titkosítatlanul beköszönt a nagyon kreatív helo() helyett ehlo()-val. Majd STARTTLS() parancsal kezdeményezte a titkosítást és az 587-es portot használja. Ez a hivatalos portja a levélküldésnek.
Mi az a TLS és SSL? Van értelme még a 465-ös protot használni? Hogyan kell HTML alapú levelet küldeni vagy éppen OAuth2-vel authentikálni? Ezekre mind fény derül a tanfolyamon!
0. Előszó és gmail fiók
1. Config és Python fájl egy könyvtárban
2. YAML és configfájl beolvasása
3. Yagmail telepítése PIP-pel
4. Levélküldése ya! gmaille!l 2 percben - figyeld a kezemet, mert csalok!
5. Gmail felkészítése levélküldésre, "less secure app" engedélyezése
6. Attachment yagmaillel, Gmailre optimalizálva
7. Levél küldése smtplibbel 465-ös porton, amiről még most azt hisszük hogy SSL
8. Levél elküldése, hibakeresés, stack olvasása
9. Levélküldés STARTTLS-sel 587-es porton
10. Emailküldés 465 vagy 587-es porton, de mi a különbség?
11. A TLS az valójában egy új SSL, az SSL meg egy régi TLS
12. 465-ös vagy 587-es portot használjam?
13. A színfalak mögött SSL-t vagy TLS-t használunk? Megnézzük a leveleink valódi tartalmát
13x. Csak hekkerpalántáknak - Gmail kényszerítése SSL használatára
14. Én a 465-ös porton fogok TLS-t használni a teljes kapcsolatra
15. Emailmessage() osztállyal könyebb az SMTP specifikáció
16. Attachment hozzáadása - a nehezebb úton
17. Fájltípus meghatározása a rend kedvéért
18. Több attachment küldése egyszerre
19. Több embernek emailküldés, 1 Gmaillel szimuláljunk több email címet!
20. HTML-formátumú levél küldése plan:text mellett
21. Gmailben HTML és plan:text levél ellenőrzése, original source-szal
22. Configfájl felkészítése beágyazott képekre. cid_ Content ID-val
23. HTML oldal küldése beágyazott képekkel
24. Email kliensek HTML-támogatása változó
25. Beépített SMTP szerver teszteléshez
26. NetCattel leveleket elkapni őrültség, de végülis lehet
27. Mese az OAuthról
28. Oauth2 igénylése Gmailhez
29. Root certificate Pythonhoz
30. Oauth2 fájl generálása és használata levélküldéshez
Péter Litkei