Chcete nějak zjistit, zda e-mailová adresa existuje? Třeba poté co ji někdo zadal do registračního formuláře, nebo vám ji poskytl jako kontaktní? Možností jak na to jít je několik, ale až tak jednoduché to nebude.
Registrační formuláře byste měli tak jako tak doplnit o ověření platnosti e-mailu (a tím i celé registrace) – tedy klasický mechanismus co na danou adresu pošle žádost o potvrzení a příjemce musí kliknout (otevřít) na nějaký unikátní odkaz, který ověří, že e-mail dorazil a že se skutečně registroval. Řeč je o tom ostatně už v Jak správně (technicky, lidsky i legálně) sbírat maily pro databází uživatelů a rozesílek
Což je také první základní princip jako ověřit existenci e-mailu – poslat na tuto adresu e-mail a pokud se nevrátí chybová hláška o neexistenci, tak budete mít skoro jistotu, že daná adresa (poštovní schránka) existuje (ale nikoliv, že ji někdo používá). Tohle je ale řešení použitelné pouze pro jednotlivé e-maily, nemůžete (neměli byste) to používat pro ověření většího množství adres. Vedlo by to po čase k snížení reputace domény (té vaší).
Popovídat si se SMTP serverem
Pokročilejší a technicky náročnější varianta je, že se zeptáte poštovního serveru co zpracovává e-maily pro danou doménu pomocí tzv. “ping” – server vám řekne, zda adresa existuje či neexistuje. Háček to má v tom, že některé servery vám nic neřeknou – mají funkčnost z bezpečnostních důvodů vypnutou – VRFY a EXPN příkazy tak příliš použitelné nebudou. Ověření můžete tak udělat jedině tak, že se připojíte a pokusíte poslat e-mail.
Nejprve si musíte zjistit poštovní servery (MX záznamy v DNS), například pomoci
nslookup -type=mx justit.cz
Poté se musíte pomocí telnet připojit na zjištěný poštovní server :
telnet aspmx.l.google.com 25
Při úspěšném spojení dostanete odpověď s kódem 220 a můžete pokračovat:
EHLO justit.cz
Na což dostanete poněkud delší odpověď s několika kódy 250. Následovat musí zadání odesílatele, tedy ideálně vaší e-mailové adresy.
mail from:<mujemail@domena.cz>
Na což opět dostanete odpověď 250 a OK. A pak můžete přikročit k pokusu “poslat” e-mail, tedy zadat cílovou adresu:
rcpt to:<daniel@justit.cz>
Pokud adresa neexistuje, tak dostanete chybu 550 a vysvětlení – byť chybové kódy mohou být různé, takže je dobré si odpověď prostudovat. Odpověď 250 OK znamená, že adresa (velmi pravděpodobně) existuje.
Ukončit “povídání si” s poštovním serverem můžete pomocí příkazu QUIT.
Ověřovací služby
Můžete zkusit i některé služby, které ověřují existenci adres – může to být například Bouncer, ale tady jde o službu určenou pro hromadné ověřování a musíte platit.
Podobně je možné využít EmailList Verify – ten lze používat zdarma s omezením na 100 ověření.
Email Hippo nabízí ověřovač použitelný pro stovku ověření denně.
Stejně tak jako Hunter a tamní Email Verifier.
Placené služby pro ověřování často umí i nějaké vychytávky navíc – ověřování spamového skóre/reputace domén zejména. Hodí se pokud potřebujete vyčistit e-mailovou databázi.
Mírné komplikace pro ověření e-mailů přináší ještě doménové koše (jde doručit cokoliv na @domena.cz) a dočasné e-maily (Jak odesílat (anonymně) e-maily z dočasných e-mailových adres?).
Samotné výše popsané ověření navíc nemá nic společného s tím, jestli daný e-mail skutečně někdo používá a už vůbec ne kdo ho používá.