リモートサーバーからサーバーレポートを自分に送信する必要があり、それらがスパムになることを気にしないので、SPF、DKIMなどは必要ありません。
mailutils
を使用してuptime | mail -s "uptime" [email protected]
のようなものを送信しようとしましたが、メールは送信されません。/var/mail/rootで、HELOが無効であるというメッセージを受け取りました。それで-r root@my-ip
も追加しようとしましたが、エラーメッセージは表示されませんが、電子メールも受信しません。
これどうやってするの?
OK
$ apt-get install mailutils
$ vim /etc/postfix/main.cf
myhostname = mydomain.com
$ service postfix restart
次に、ドメインのレコードを設定して、「mail.mydomain.com」がマシンのIPをポイントし、MXレコードが「mail.mydomain.com」をポイントし、次のようにTXTレコードを使用してSPFを設定します。 v=spf1 include:mydomain.com ip4:1.2.3.4 -all
(実際のIPを置き換えます)
これで、mail
コマンドを使用してメールを送信できます。
「スマートホスト」として構成されたUbuntuでexim4電子メールパッケージを使用します。これは、通常のSMTPサーバーのユーザー名とパスワードをexim4に与えると、それを通してメール(メールやsendmailなどのコマンドから)が送信されることを意味します。
AskUbuntu.comでの設定について尋ねた質問 と見つけた答えは次のとおりです。
私はついに 実際に動作するトニー・セルフォによる詳細な指示セット を見つけました。ポート587でトランスポートレイヤーセキュリティ(TLS)を使用する必要があるようです。SSLSMTPが機能しない。
最初にSudo dpkg-reconfigure exim4-config
を実行し、次の構成オプションを使用します。
次にSudo vi /etc/exim4/passwd.client
を実行し、メールホストとそれに含まれるエイリアス(nslookup
で検出)に次の行を追加します。 <email address>と<password>を、メールをルーティングするアカウントに置き換えます):
mail.example.com:<email address>:<password>
mail.yourhosting.provider:<email address>:<password>
passwd.client
ファイルを編集したら、Sudo update-exim4.conf
を実行して、変更をExim4の構成に統合します。
Sudo /etc/init.d/exim4 restart
を実行し、サービスが適切に停止および開始することを確認します。サービスを再起動できない場合、passwd.client
ファイルを編集したときに何か問題が発生した可能性があります。
Exim4が再起動した場合は、Sudo tail -f /var/log/exim4/mainlog
を実行してメールログを監視します。別のウィンドウで、システムから電子メールを送信し、レコードがwithR=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com ... X=TLS-1.0:RSA_ARCFOUR_MD5:16
で表示されることを確認します。 X=TLS
は、必要なトランスポートレイヤーセキュリティでメールが送信されていることを意味します。
これは、Fedora/CentOS/RHELで exim を使用してgmail for SMTPを使用して実行することもできます(別のディストリビューションを使用してStephen Ostermillerの回答に基づいて構築します)。最初にyumを使用してeximをインストールします。
Sudo yum install exim
Fedora 20では、このインストールされたバージョン4.80.1
。インストールしたら、/etc/exim/exim.conf
にある構成を変更し、次のセクションをファイルに追加します。
# in the routers configuration section:
send_via_gmail:
driver = manualroute
domains = ! +local_domains
transport = gmail_smtp
route_list = * smtp.gmail.com
# in the transports configuration section
gmail_smtp:
driver = smtp
port = 587
hosts_require_auth = $Host_address
hosts_require_tls = $Host_address
# in the authentication configuration section
gmail_login:
driver = plaintext
public_name = LOGIN
client_send = : {your email address at gmail} : {password}
Googleで2要素認証を使用する場合は、 アプリパスワード を使用する必要があります。この構成を設定したら、サービスを再起動して有効にする必要があります。
Sudo service exim restart
サービスが開始されたら、コマンドラインから mail コマンドを使用して、Gmailアカウントを使用してメールを送信できます。
mail [email protected]
subject: {email subject} <enter>
{message}
.
[email protected]
は受信者です。 .
はメッセージを終了し、Gmailログインの資格情報を使用してGoogle SMTP経由でexim経由で送信します。 Gmailアカウントを持っていない場合は、SMTPサーバーへのアクセスを取得するように設定します。問題がある場合、ログは/var/log/exim/
のmain.log
およびpanic.log
に保存され、エラーが発生します。