Rails 3 Check to see if an email address is real - email

i want to check to see if a given email say for example (yourname#your_domain.com) most likely that exact email don't exist is there a way to ping the email address or anything along that along that idea?

You can't reliably verify email addresses without human intervention. That's why the most common method is to send the user a 'confirmation' email.

You can use my gem: "email_verifier" that you can find here: https://github.com/kamilc/email_verifier
It gives you validator which connects with given mail server "asking" smtp server if there is given email address.

You can check if the address format is valid, but there is no effective, email-specific "Ping" or lookup that you can do, other then sending a verification e-mail containing a code or link which the users clicks on or enters on your site to verify their address.

Related

Is it possible to find where a temporary email address is pointing/forwarding to?

If I have a temporary email address that hides a real address, would it be possible for someone to find out the real address?
One possible way I can think of could be tracking a read receipt by sending over a pixel by pixel image and tracking the email address that loads it.
Are there any other ways or would this be pretty good at hiding the address from spammers?
No, you usually can't identify the "real address" behind a temporary one, unless the recipient replies to your message using its real email address (whether it's a manual response, or an automatic one like a read receipt).
That's especially true when your temporary email address is provided by a disposable email provider. However, if your temporary address is indeed an alias on the same email server as the real address, the SMTP VRFY command may be used to resolve an alias to its real email address. But that SMTP feature is disabled on most email server, for obvious security reasons.
As CBroe pointed out, including an image or a link in your email wouldn't help you finding the real email address. Because mail content would be HTML, displayed by the brower, and not at all related to the email context. At most, it would tell you that the email was received and its content scanned. That's not even a guarantee that a human opened it, since some antispam filters resolve URLs to ensure they're not a threat.

spoof from address through gmail

I am trying to send a spoofed email using gmail. before people freak out, no I am not spamming anybody (if you have to know why, an explanation is below). Using this question and answer, I was able to send a test email to myself with a spoofed to address (it appeared as I wanted), however, regardless of what I enter in the MAIL FROM field or the From: field in the DATA, it always appears from the address I used to authenticate.
My question is whether it's possible to spoof the from address as well. The goal would be for the from address to appear as something other than an email address. (again, explanation is below)
EXPLANATION
For those who want to know why I am doing this, my brother recently got promoted, and he and I are both fans of the show How I Met Your Mother. As such, I would like to send him a The Bro Code approved congratulatory email, which is required to be of the form:
To: Bro
From: Bro
Subject: Bro!
Nice, Bro!
Therefore, I need the From address to appear to be simply "Bro"
I believe the short answer is no.
Email headers are just text, so if you are using sendmail or something, you can use whatever you want. However, it might (see: will likely) end up in his spam folder.
Gmail needs to protect it's reputation, so they will always add a breadcrumb to say who actually sent the email. For instance, you can setup gmail to send email "from" non-gmail addresses, but the message will be sent from your gmail address "on behalf" of your non-gmail address.

Verify email address is exist or not on IPhone app

My problem isn't validating an email address. I want to verify that an email address exists or not.
I have been looking solutions for that all day. But no result is useful to me.
Can any one help me with this? Thanks!
Ge.
This is not so trivial, but there are a number of options:
1) Find out, using DNS lookups, which mail servers are responsible for the domain of the E-Mail address and connect to one of them. Using SMTP try to deliver a message to the target address. Some servers will tell you at that point that the target address does not exist.
2) Send a test mail to the target address and check if you get a bounce/error mail back.
Not trivial, as badcat already said. If you absolutely have to, I would some other entity do the actual work of sending and receiving the email (such as your webserver). The flow would be something like
1) your app instructs your webserver to send a testing email (make sure you secure this - else it will be perfect for spamming)
2) your app instructs the user that a test email has been sent and that he should reply to it, confirming he's a human (or maybe click on a url contained in the email)
3) the users response (click on url or email reply) will be recorded in a small DB which you can query with your app

sendmail disabled

My host has Sendmail() disabled. I'm basically looking for a way to bypass this. I want visitors to be able to send me (gmail account) an email where they first fill in their e-mail address, so they become the sender. It's for support questions and remarks.
If there is no way to bypass this, is there and alternative, perhaps using mailchimp..?
You can always use an alternative public send mail servers available. You can use one of them. Here is one Public Send Mail server list
use phpmailer library. you can send email via connecting smtp (works with gmail too.) 1st configure one of your accounts with phpmailer. when the user fills in their email set the sender as user's email.
even though you are actually sending the email through your account to receiver of the email will show as sent by user's email address.
http://phpmailer.worxware.com/

How to check misspelled email during user registration

I use an email registration and confirmation in my project (yes, I know about OpenID. In my counry, a main email service lacks it).
Sometimes users misspell their email addresses. I know about this due to "message could not be delivered" letters in a mailbox. A misspelled address is absolutely correct, because I check it with a regular expression - say, jon.doe#example.com intstead of john.doe#example.com. And I do not want to duplicate a email field in a registration form (who likes it?).
Request processing routine cannot wait for email delivery - it could take an unpredictable time. So, my script will return to user a confirmation message "An email was sent". And the user will wait for it forever (of cause, not - he/she will turn to an alternative project with a more perfect registration system).
Does someone knows how it can be improved (in any programming language)?
If you cannot wait for a response back from a confirmation e-mail, I would display a yes/no message box confirming their e-mail (i.e Send e-mail to jon.doe#example.com?) before sending the e-mail. While your at it, you can check to see if the e-mail is a duplicate as well.
If no duplicate found and they click "Yes" then send the e-mail. If not, ask them to re-enter the e-mail address.
With this approach you have gone above and beyond validating correct e-mail addresses since there are no services that will explicitly check for correct/valid addresses.
Unfortunately, there's no canonical way to spell anything in an e-mail address and no way to check programmatically whether it's spelled correctly or not. The only tool that can confirm the correctness of a valid e-mail address is Eyeball 1.0, which runs client side.
You can try the SMTP VRFY on the server but most won't reply with anything valuable. Most will simply say "go ahead and try it" because returning something useful would be invaluable to spammers.
You can always check the domain name with a DNS lookup but the only way to check an email address is to send a message.
Try to have the user type his email twice with an email confirmation field (as for the password).
EDIT : Anthony's idea is good too.
For user parts of email the only thing I can think of is using:
MX lookups (if mail provider doesn't block them... since that can be abused to filter email lists)
Requiring user to enter email twice to ensure he doesn't misspell user portion of email
As for domain part of email, take a look at this:
AngularJs directive to offer suggestions for misspelled emails?
It helped me to reduce bounce for misspellings like gmai.com and gmail.con.