運用・管理 / メール送信
本製品は簡易的な電子メール送信機能(メールクライアント)を備えています。この機能は、トリガーを使ってイベントの発生を管理者に通知したり、ログをメールで送信したりするときに便利です。
基本設定
メール送信機能を使用するには、あらかじめ次の2項目を設定しておく必要があります。両方を設定しないとメールの送信(mailコマンドの実行)はできません。- 本製品が使う送信元メールアドレス
- 送信用メールサーバー(SMTPサーバー)のIPアドレス(IPv4/IPv6)またはホスト名
送信元メールアドレスはグローバルコンフィグモードのmail fromコマンド、送信用メールサーバーは同じくグローバルコンフィグモードのmail smtpserverコマンドで設定します。
なお、実際にメールが配送されるためには、本製品と送信用メールサーバー、送信用メールサーバーと宛先メールアドレスのメールボックスが存在するメールサーバーとが互いに通信できるようになっている必要があります。以下の説明では、IP関連の設定(アドレス設定や経路設定)は完了しているものとします。
- メール送信時に本製品が使用する送信元メールアドレスを設定します。このアドレスは送信メールのFromアドレスとして使われます。また、SMTPセッションの開始時には、このメールアドレスのドメイン部分がHELOコマンドでメールサーバーに送信されます。
ここでは、送信元メールアドレスとして「manager@bulbul.example.com」を使用するものとします。
awplus(config)# mail from manager@bulbul.example.com
- 送信用メールサーバー(SMTPサーバー)のIPアドレス(IPv4/IPv6)かホスト名を設定します。
本製品は、送信するすべてのメールをこのSMTPサーバーに転送して以後の配送を依頼します。
awplus(config)# mail smtpserver 172.17.28.1 または awplus(config)# mail smtpserver smtp.example.com
- 設定を確認します。State欄がAliveになっていればメール送信機能の基本設定は完了しています(IPなど下位層の設定は確認できません)。
awplus(config)# end awplus# show mail Mail Settings ------------------------------------------------------------ State : Alive SMTP Server : 172.17.28.1 Host Name : manager@bulbul.example.com Port : 25 Debug : Disabled Messages ------------------------------------------------------------ There is no mail in the queue.
メール機能の使用例
これでメールを送るための設定は完了です。以下、メール機能の実際の使用例を示します。メールの送信は特権EXECモードのmailコマンドで行います。コマンドラインから短いメールメッセージを送るには次のようにします。管理者のアドレスにテストメールを送ってみましょう。メールの件名(タイトル)は「test1」とします。
awplus# mail to admin@example.com subject test1 Type the message below and finish with a CTRL-d This is a test. ↓ <Ctrl/D> Sending /var/spool/mqueue/20120814091804.8319... ok.
この例では、コマンドラインから宛先メールアドレスとメールの件名(タイトル)を指定しています。すると、「Type the message below and finish with a CTRL-d」というメッセージが表示され、カーソルが次の行に移動するので、メール本文を入力し、入力が終わったら「Ctrl/D」キーを押してください。これでメールが送信されます。
次に送信されたメールの例を示します。
Return-Path: <manager@bulbul.example.com>
Received: from bulbul.example.com ([172.17.28.187])
by thrush.example.com (8.11.6/8.11.6) with SMTP id l7E0IwE15347
for <admin@example.com>; Tue, 17 Jan 2012 09:18:58 +0900 (JST)
(envelope-from manager@bulbul.example.com)
Message-Id: <201201170018.l7E0IwE15347@thrush.example.com>
Received: by bulbul.example.com (nbSMTP-1.00) for uid 0
manager@bulbul.example.com; Tue, 17 Jan 2012 09:18:04 +0900 (JST)
Subject: test1
From: <manager@bulbul.example.com>
To: <admin@example.com>
Date: Tue, 17 Jan 2012 09:18:58 +0900 (JST)
This is a test.
fileパラメーターを使用すれば、テキスト形式のファイルをメール本文として送ることができます。次の例では、カレントディレクトリーにあるテキストファイル「mailbody.txt」をメール本文として管理者に送信します。
awplus# mail to admin@example.com subject test2 file mailbody.txt
Sending /var/spool/mqueue/20120202043556.13821... ok.
メール機能の設定やメール送信キューの状態を表示するには特権EXECモードのshow mailコマンドを使います。
awplus# show mail
Mail Settings
------------------------------------------------------------
State : Alive
SMTP Server : 172.17.28.1
Host Name : manager@bulbul.example.com
Port : 25
Debug : Disabled
Messages
------------------------------------------------------------
To : admin@example.com
Subject : test3
Message-ID : 20120202043645.30177
メール送信キュー内のメールを削除するには特権EXECモードのdelete mailコマンドを使います。上記show mailコマンドの出力例で表示されているメッセージID「20120202043645.30177」のメールを削除するには、次のようにします。
awplus# delete mail mail-id 20120202043645.30177 awplus# show mail Mail Settings ------------------------------------------------------------ State : Alive SMTP Server : 172.17.28.1 Host Name : manager@bulbul.example.com Port : 25 Debug : Disabled Messages ------------------------------------------------------------ There is no mail in the queue.
高度な機能
暗号化通信(TLS)
SMTPではメールサーバーとのやりとりを暗号化なしの通信(平文)で行いますが、本製品では設定により暗号化通信(TLS)を利用することもできます。メール送信時の暗号化通信にはTLSの開始タイミングによって次の2つの方式があります。
本製品ではどちらの方式も利用可能です。
- STARTTLS - いったん平文で接続した後、SMTPのSTARTTLSコマンドを発行してTLS通信に移行し、その上でSMTPのやりとりを行う
- SMTPS - 最初からTLSで接続し、その上でSMTPのやりとりを行う
STARTTLSを使うにはmail smtpserver tlsコマンドでstarttlsを指定します。
STARTTLSを有効にした場合、デフォルトではメールサーバーのTCPポート587に接続します。他のポートに接続したいときはmail smtpserver portコマンドで接続先ポートを明示的に設定してください。
awplus(config)# mail smtpserver tls starttls
SMTPSを使うにはmail smtpserver tlsコマンドでsmtpsを指定します。
SMTPSを有効にした場合、デフォルトではメールサーバーのTCPポート465に接続します。他のポートに接続したいときはmail smtpserver portコマンドで接続先ポートを明示的に設定してください。
awplus(config)# mail smtpserver tls smtps
暗号化通信を無効にするにはmail smtpserver tlsコマンドをno形式で実行します。
暗号化通信の無効時は、デフォルトでメールサーバーのTCPポート25に接続します。他のポートに接続したいときはmail smtpserver portコマンドで接続先ポートを明示的に設定してください。
awplus(config)# no mail smtpserver tls
メール送信時認証(SMTP認証)
本製品のメール送信機能はSMTP認証に対応しているため、送信時に認証を要求するメールサーバーも利用可能です。SMTP認証の設定は、基本設定が終わった後にmail smtpserver authenticationコマンドで行います。
同コマンドの実行に必要な情報は、使用する認証方式(CRAM-MD5、LOGIN、PLAINのいずれか)とユーザー名、パスワードです。
たとえば、認証方式CRAM-MD5、ユーザー名manager、パスワードterCe2u2T1m!hでSMTP認証を行うよう設定するには、次のようにします。
awplus(config)# mail smtpserver authentication crammd5 username manager password terCe2u2T1m!h
SMTP認証の設定を削除し、メール送信時の認証を行わない設定に戻すには、mail smtpserver authenticationコマンドをno形式で実行します。
awplus(config)# no mail smtpserver authentication
送信先TCPポートの変更
近年、迷惑メール対策として、前述のメール送信時認証(SMTP認証)に加え、SMTP標準ポートであるTCP 25番ポート宛て通信の遮断が広く行われています(Outbound Port 25 Blocking)。そうした環境ではメール送信用サーバーが587番(submission)などの代替ポートで待ち受けているケースがよく見られますが、本製品のメール送信機能ではmail smtpserver portコマンドでメール送信時の接続先ポート番号を変更することができます。
たとえば、送信先TCPポートを587番に変更するには、次のようにします。
awplus(config)# mail smtpserver port 587
送信先TCPポートを標準の25番に戻すには、mail smtpserver portコマンドをno形式で実行します。
awplus(config)# no mail smtpserver port
メール件名へのシステム情報埋め込み
mailコマンドのsubjectパラメーターで指定するメール件名(タイトル)内では、下記の変数を用いることでシステムに関する情報を埋め込むことができます。| %N | ホスト名。hostnameコマンドで設定したもの |
| %S | シリアル番号。show system serialnumberコマンドで表示されるものと同じ |
| %T | システム日時(ローカル時刻) |
| %D | システム日時(ローカル時刻) |
| %L | システム日時(ローカル時刻) |
| %U | システム日時(UTC) |
たとえば、次のようにしてメールを送信した場合、
box301# mail to manager@example.com subject "%N (%S) %T"
件名として指定した文字列中の変数 %N、%S、%T は前記のシステム情報に展開されるため、実際に送信されるメールの件名は次のようになります。
box301 (X000000000000000) 2018-06-28T10:04:32+0900