bash和telnet测试电子邮件
发布时间:2020-12-15 22:41:21 所属栏目:安全 来源:网络整理
导读:我想知道电子??邮件地址是否有效. 我通过telnet telnet完成了这个,见下文 $telnet mail.example.com 25Trying 0.0.0.0...Connected to mail.example.com.Escape character is '^]'.220 mail.example.com Mon,14 Jan 2013 19:01:44 +0000helo email.com250 ma
我想知道电子??邮件地址是否有效.
我通过telnet telnet完成了这个,见下文 $telnet mail.example.com 25 Trying 0.0.0.0... Connected to mail.example.com. Escape character is '^]'. 220 mail.example.com Mon,14 Jan 2013 19:01:44 +0000 helo email.com 250 mail.example.com Hello email.com [0.0.0.0] mail from:blake@email.com 250 OK rcpt to:gfdgsdfhgsfd@example.com 550 Unknown user 有了这550个请求,我知道该地址在邮件服务器上无效……如果它有效,我会得到如下的响应: 250 2.1.5 OK 我如何在shell脚本中自动执行此操作?到目前为止,我有以下内容 #!/bin/bash host=`dig mx +short $1 | cut -d ' ' -f2 | head -1` telnet $host 25 谢谢! 解决方法
试着这样做:
[[ $@ ]] || { printf "Usagent./$0 domain <email> <from_email> <rcpt_email>n" exit 1 } { sleep 1 echo "helo $2" sleep 0.5 echo "mail from:$3" sleep 0.5 echo "rcpt to:$4" echo } | telnet $1 25 | grep -q "Unknown user" && echo "Invalid email" || echo "Valid email" 用法: ./script.sh domain email from_email rcpt_email (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |