fb

Mi az a php_mail() és SMTP? Hogyan küldjünk biztonságosan e-mailt?

Mi az a php_mail() és SMTP? Hogyan küldjünk biztonságosan e-mailt?

Mi az a php_mail() és SMTP? Hogyan küldjünk biztonságosan e-mailt? 900 379 Rottenbacher Tamás
Egy weboldal alapfeltétele, hogy tudjon elektronikus levelet, e-mailt küldeni. Regisztráció értesítő, kapcsolatfelvételi űrlap és még lehetne sorolni. Az internet őskorában elegendő volt, ha a szervereken alapbeállításként használt php_mail()-t használtuk. Azóta azonban sok minden megváltozott. A hagyományos, php_mail() levélküldés ma már nem nyújt megfelelő biztonságot, sőt veszélyt hordoz magába. Minden ügyfelemnek tanácsolom, hogy SMTP-vel, biztonságosan küldjék a honlapok a leveleiket.

Mi az a php_mail()?

A php_mail() avagy másként mail() funkció már a PHP nyelv korai verzióiban is szerepelt. Lényege annyi, hogy a PHP környezet képes legyen elektronikus levél, e-mail küldésére. Egy elég kezdetleges forma, ma már egyáltalán nem ajánlott a használata, sok hostingon alapértelmezetten kikapcsolt, tiltott.

Mi a gond vele, miért veszélyes?

A php_mail() esetében nincs azonosítás, bármely php alkalmazás, kód képes kiküldeni elektronikus leveleket. Akár támadó fél is így spammelhet a mi szerverünkről, tárhelyünkről!

Amennyiben a php_mail() engedélyezve van és olyan jellegű támadás éri a honlapunkat, hogy a támadók feltudnak PHP fájlt tölteni vagy saját kódjukat lefuttatni a támadók, úgy elkezdhetnek kéretlen reklámüzeneteket, spam-eket küldeni. Ez azért veszélyes, mert egyfelől a domain nevünk, ip címünk felkerülhet a nemzetközi spam szűrő listákra. Ha ez megtörténik, akkor könnyen előfordulhat, hogy a saját küldött leveleink a célszemély spam mappájába köt ki és így minimális az esélye, hogy megkapja, elolvassa.

Ezeken felül sok levelezőrendszer figyeli milyen módon, milyen azonosítással kerülnek kiküldésre az e-mailek és amiket php_mail() függvénnyel küldenek ki, azokat automatikusan spam kategóriába teszi és nem jut el a címzetthez.

Ha árajánlatunk, értesítőnk, hírlevelünk vagy fontos üzenetünk nem jut el a potenciális ügyfelünkhöz, akkor eleve vesztettünk, bármilyen jó is termékünk, szolgáltatásunk.

Mi a php_mail() előnye?

Az egyetlen előnye az, hogy nincs szükség a honlapunkon semmi beállítására, módosítására. A php_mail()-t szinte minden PHP alapú CMS (így a WordPress is) tudja alapként használni. Igaz, inkább azt mondanám, hogy opcionális jelleggel, amúgy már elhagyták volna legszívesebben.

jobb ha kerulod php mail kiemelt kep svg 2

Mi az a SMTP?

Az SMTP (avagy angol nevén nevezve Simple Mail Transfer Protocol) tömören azt jelenti, hogy meghatározott, (immáron biztonságos csatornán) egy levelezőszerverhez csatlakozunk és azzal küldjük ki az e-mail üzenetet azonosítást követően.

Miért jobb az SMTP?

Az SMTP-nél minden (normális tárhelyszolgáltató) esetében van lehetőség SSL/TLS titkostás használatára, továbbá van hitelesítés, tehát név és jelszó segítségével kerül azonosításra a kiküldő, hogy ki (vagy mi) akarja kiküldeni. A  hitelesítéshez szükséges adatokkal pedig korlátozhatjuk, hogy idegen kód (támadás esetén) ne tudjon leveleket kiküldeni, spammelni.

Röviden összefoglalva:

  • Sokkal biztonságosabb, köszönhetően a többféle azonosítási lehetőségnek. (Főleg ha a megfelelő SSL/TLS verzió és port van beállítva.)
  • Használhatunk külsős e-mail küldő szolgáltatást, szervert. Így az olcsóbb tárhelyeken érvényben lévő napi kiküldhető e-mail korlátozások elkerülhetőek.
  • SPAM biztosabb, kisebb eséllyel kerül a kiküldött e-mail a spam mappába.
  • Stabilabb, megbízhatóbb a kiküldés, jobb a megnyitási arány.
  • Tárhelyszolgáltatók is jobban preferálják.

SMTP hátrányai

Egyetlen egy hátrányt tudok csak mondani. Az pedig az, hogy be kell állítani. Ez azonban elég egyszerű, ahogy a folytatásban megismerhetjük.

WordPress honlap SMTP e-mail küldés

Ahogy fentebb megismerhettük, jobb ha WordPress weboldalunk SMTP-n keresztül küldi az e-mail üzeneteket. Például WooCommerce webáruház esetén a rendelés visszaigazolást, a kapcsolat űrlap üzenetét magunknak, ha pedig mérsékelten hírlevelezünk, akkor azt, csak néhány fontosabbat említve.

SMTP beállítása saját kóddal

Az alábbi kódot tegyük a sablonunk functions.php fájljának a végére, természetesen a megfelelő hozzáférési adatok megadásával. Reméljük Ottó nem bánja, hogy kölcsönvesszük!

SMTP beállítása bővítménnyel

Természetesen WordPress-ről lévén szó, így van több bővítmény is, amikkel beállíthatjuk az SMTP-s e-mail küldést. Azonban továbbra is személy szerint az előző, kód megoldást szívesebben ajánlom.

Egy fontos tippet még a végére adnék. Ne akarjuk weboldalaink kimenő levelezését Gmail fiókunkkal végezni. Nem túl célravezető és több lesz vele a problémánk, mint sejtenénk. Használjunk inkább MailGun-t, Amazon SES-t, hogy csak kettő nagyobb nevet említsek.

Rottenbacher Tamás
Rottenbacher Tamás

2006 óta foglalkozok weboldal készítéssel és 2007 óta keresőoptimalizációval. WordPress honlapokat 2008 óta készítek. Ha kérdezne írjon hozzászólást vagy email-t a "Kapcsolat" menüpontban.

Közösségi profiljaim:

Kérdés, vélemény, tuti recept?

A hozzászólások betöltése folyamatban, max néhány másodperc.
Honlapunk cookie fájlokat használ, hogy jobb böngészési élményt biztosíthasson és forgalom mérést végezzen.