文件服务器正在运行Ubuntu Server 8.04,我目前不时通过SSH连接它,并检查日志,硬盘驱动器的SMART统计信息等.我正在研究设置一个运行某些命令的预定脚本,并通过电子邮件将输出发送给我.
我遇到的唯一问题是实际收到电子邮件.我没有使用linux下的电子邮件配置的经验,所有指向sendmail的指南似乎代表我和我当前的配置承担了很多事情.服务器设置为使用samba进行文件共享,而不是作为邮件,Web或DNS服务器进行文件共享.我不想运行邮件服务器或从服务器路由任何东西或在服务器上(或与服务器)接收任何邮件,除非任何这些帮助我实现目标.文件服务器位于我们的普通网络上,并具有Internet访问权限.
我拥有几个网站域名(并有一个托管包).我已经能够设置像thunderbird这样的应用程序来使用我网站上的一个帐户发送邮件,填写smtp.mydotcom.com以便使用和更改端口等以匹配我网站的cpanel配置页面中的信息.有没有办法做类似的事情,所以我可以从我的文件服务器发送电子邮件到我的外部电子邮件?
编辑:以下是我在阅读下面的丹尼斯威廉姆森的答案后采取的步骤.我只用了几分钟就跑起来了!
安装esmtp:
sudo apt-get install esmtp
我在我的网站上创建了一个新的电子邮件帐户(称为“警报”)并编辑了/ etc / esmtprc,如下所示:
hostname=mail.mydomain.com:26
username=alerts+mydomain.com
(这些值由cpanel管理页面提供)
然后我用默认的电子邮件顶部创建了一个名为“eheader”的文件:
To: Me <me@gmail.com>
From: Alerts <alerts@mydomain.com>
Subject: subjectMessage Body
因此,为了触发邮件,可以使用以下命令:
cat eheader <file1> <file2> … <fileN> | /usr/bin/esmtp -t
因此,可以轻松更改为每日/每周/等作业发送的文件.
解决方法
esmtp
,这是一个只发送MTA.设置起来非常简单.它具有与sendmail兼容的命令行选项(有些被忽略).它在存储库中.
这是一个简单的例子:
echo -e "To: Recipient Name <person@example.com>\n\ From: Me Myself and I <me@gmail.com>\n\ Subject: Here is the example I promised\n\n\ $(<somefile)" | /usr/bin/esmtp -t
有一个非常简单的配置文件/ etc / esmtprc,它包含上游电子邮件提供商的主机名,用户名和密码(我假设你的是gmail).
有关为Gmail设置的说明是here.