linux利用telnet调用远程smtp服务发送邮件

Linux下有很多地方需要发送邮件给管理员,比如系统资源使用情况、磁盘空间预警、重要数据自动备份等。

 

通常情况下,我们会采用mail命令发送邮件,但前提是系统安装了sendmail且正常配置。

 

最近入手了vps,简化的linux,很多功能被阉割不能调用mail命令,于是想到了利用telnet调用远程smtp服务发送邮件(smtp.163.com)

 

以下是实现的shell代码:

#!/bin/sh

send_mail()

{

  (for i in "ehlo luocheng" "AUTH LOGIN" "username" "userpwd" "MAIL FROM:<${1}>" "RCPT TO:<${2}>" "data";

   do

     sleep 1

     echo ${i}

     sleep 2

   done

   echo "from:<${1}>"

   echo "subject:${3}"

   echo "to:<${2}>"

   echo ""

   echo "${4}"

   echo "."

   sleep 2

   echo "QUIT")|telnet ${5} ${6}

}

#调用并传入参数

send_mail "luocheng@163.com" "5456588@qq.com" "test" "ok!" "smtp.163.com" "25"

 

 

 

注意,函数中的username和userpwd需要base64加密

转载于:https://www.cnblogs.com/aggavara/archive/2012/11/08/2760371.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值