OpenWrt化したWZR-HP-G300NHには、シリアルポートが無い。USBポートがあるのでUSB-Serial(DB9M)でSU500に接続した。
SU500 <-- 940-0024C --(DB9F)-><-(DB9M)--USB to Serial --(USB)-> OpenWrt(WZR-HP-G300NH)
(1)USB-Serial(DB9M)の接続
FTDI FT232RLチップのUSB-Serialを探したが価格高め。PL2303チップのUSB-Serialが安めなので1m長のDB9(Male)を選択した。
手持ちのFT232RLチップのUSB-Serial(RJ45)を接続して確認したためOpenWrtのUSB-Serialドライバーは、両者をインストールした。USB-Serialを接続
(2)apcupsd
をインストール
apcupsdの設定apcupsd-cgiの設定
(3)OpenWrtからメール発信設定
apcupsdから通知メールが発信されるが、OpenWrtにメールシステムを導入していなかった。Debin10のapcupsdパッケージが「/usr/bin/mail」を使うのと異なり、OpenWrtのapcupsdパッケージは、メールサーバの25番ポートに接続する「/usr/sbin/smtp」がインストール使用される。イントラネット内にメールサーバーを構築していないので、ISPのメールサーバーを使用することになる。メール送信は、Submission port(587)かSSL port(465)を使いユーザ認証する必要がある。「msmtp」を導入する事にした。
「msmtp」には、「msmtpd」という25番ポートで待ち受け「msmtp」にpipeする機能があるためapcupsdの「/usr/sbin/smtp」などの設定がそのまま使える。しかし、OpenWrtの「msmtp」は、version 1.8.7で「msmtpd」が含まれていなかった。をインストール
「msmtp」関連の設定
「apcupsd」の通知メール関連設定「commfailure/commok/onbattery/offbattery/changeme」ファイル修正(赤文字が修正部)。
各ファイル共に緑文字部が異なる。「msmtpd」があれば、修正無しで良いはず。
(4)IPv6メールサーバ経由の接続確認
Transit DS-Lite接続を停止、WAN側IPv4停止、IPv6インターフェースが有効な状態で
OpenWrt上のシェルからOpenWrt上の送信ログ着信メール( ブログ処理関係で<>は全角。メールアドレス、メールサーバ名、IPv6アドレスの一部匿名化。)
「spam」判定だが着信。Plalaのメールサーバ内部はIPv4でリレーされているが、IPv6送信を受け、送信されたことを確認。
SU500 <-- 940-0024C --(DB9F)-><-(DB9M)--USB to Serial --(USB)-> OpenWrt(WZR-HP-G300NH)
(1)USB-Serial(DB9M)の接続
FTDI FT232RLチップのUSB-Serialを探したが価格高め。PL2303チップのUSB-Serialが安めなので1m長のDB9(Male)を選択した。
手持ちのFT232RLチップのUSB-Serial(RJ45)を接続して確認したためOpenWrtのUSB-Serialドライバーは、両者をインストールした。
kmod-usb-serial
kmod-usb-serial-ftdi
kmod-usb-serial-pl2303
[1052842.381499] usb 1-1: new full-speed USB device number 5 using ehci-platform
[1052842.580601] pl2303 1-1:1.0: pl2303 converter detected
[1052842.596853] usb 1-1: pl2303 converter now attached to ttyUSB0
(2)apcupsd
apcupsd
apcupsd-cgi
apcupsdの設定
/etc/apcupsd/apcupsd.conf
#UPSNAME ups1 #本体設定の名前を使うためコメントアウト
UPSCABLE smart #940-0024CだがsmartでOK
UPSTYPE apcsmart
DEVICE /dev/ttyUSB0
/etc/apcupsd/hosts.conf
MONITOR 127.0.0.1 "SU500 on OpenWrt"
MONITOR debian10.familyname "SMT500J on Debian10"
(3)OpenWrtからメール発信設定
apcupsdから通知メールが発信されるが、OpenWrtにメールシステムを導入していなかった。Debin10のapcupsdパッケージが「/usr/bin/mail」を使うのと異なり、OpenWrtのapcupsdパッケージは、メールサーバの25番ポートに接続する「/usr/sbin/smtp」がインストール使用される。イントラネット内にメールサーバーを構築していないので、ISPのメールサーバーを使用することになる。メール送信は、Submission port(587)かSSL port(465)を使いユーザ認証する必要がある。「msmtp」を導入する事にした。
「msmtp」には、「msmtpd」という25番ポートで待ち受け「msmtp」にpipeする機能があるためapcupsdの「/usr/sbin/smtp」などの設定がそのまま使える。しかし、OpenWrtの「msmtp」は、version 1.8.7で「msmtpd」が含まれていなかった。
msmtp
msmtp-mta
「msmtp」関連の設定
/etc/msmtprc
account default
host v6mail.plala.or.jp
port 465
tls on
tls_starttls off
tls_trust_file /etc/ssl/certs/ca-certificates.crt
from %U@OpenWrt.familyname
auth on
user someone
password ********
aliases /etc/aliases
syslog LOG_MAIL
/etc/aliases
root: someone@anyserver.plala.or.jp
「apcupsd」の通知メール関連設定
/etc/apcupsd/apcupsd_mail.conf
MAILPROG="/usr/bin/msmtp"
MAILHOST="localhost:25"
FROM="apcups@OpenWrt.familyname"
TO="root"
HOSTNAME="OpenWrt"
各ファイル共に緑文字部が異なる。「msmtpd」があれば、修正無しで良いはず。
/etc/apcupsd/commfailure
#!/bin/sh
. /etc/apcupsd/apcupsd_mail.conf
MSG="$HOSTNAME Communications with UPS lost"
#
(
echo "To: $TO"
echo "Subject: $MSG"
echo
echo "$MSG"
echo " "
/usr/sbin/apcaccess status
) | $MAILPROG -f $FROM $TO
# $MAILPROG -h $MAILHOST -f $FROM -s "$MSG" $TO
exit 0
(4)IPv6メールサーバ経由の接続確認
Transit DS-Lite接続を停止、WAN側IPv4停止、IPv6インターフェースが有効な状態で
OpenWrt上のシェルから
root@OpenWrt:~# (echo "Subject: v6 mail";echo; echo "mail via ipv6")|msmtp -f
v6mail@openwrt.familyname root
Fri Oct 16 10:07:47 2020 mail.info msmtp: host=v6mail.plala.or.jp tls=on auth=on user=someone@anyserver.plala.or.jp from=v6mail@openwrt.familyname recipients=someone@anyserver.plala.or.jp mailsize=100 smtpstatus=250 smtpmsg='250 Message received: 20201016010747.SQBV16215.msc11.plala.or.jp@localhost' exitcode=EX_OK
Return-Path: <v6mail@openwrt.familyname>
Received: from mspmv01.ake-mailbk.plala.or.jp ([172.23.13.201])
by mta-eh11.plala.or.jp with ESMTP
id <20201016010747.SUYT18750.mta-eh11.plala.or.jp@mspmv01.ake-mailbk.plala.or.jp>
for <someone@anyserver.plala.or.jp>; Fri, 16 Oct 2020 10:07:47 +0900
Received: from msc11.ake-mailbk.plala.or.jp (HELO msc11.plala.or.jp) ([172.23.12.101])
by mspmv.ake-mailbk.plala.or.jp with ESMTP; 16 Oct 2020 10:07:47 +0900
Received: from localhost ([2409:10:XXXX:YY00:21d:73ff:feaa:bbcc])
by msc11.plala.or.jp with ESMTP
id <20201016010747.SQBV16215.msc11.plala.or.jp@localhost>
for <someone@anyserver.plala.or.jp>; Fri, 16 Oct 2020 10:07:47 +0900
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A-------------A?=
=?us-ascii?q?Q-------------------------------------------E?=
=?us-ascii?q?B-------------------------------------------A?=
=?us-ascii?q?w-------------------------------------------i?=
=?us-ascii?q?D-------------------------------------------H?=
=?us-ascii?q?g-----------------Q?=
X-ipas-positive: YES
X-iron-level: 50
From: v6mail@openwrt.familyname
Date: Fri, 16 Oct 2020 10:07:46 +0900
Subject: v6 mail
Message-Id: <20201016010747.SQBV16215.msc11.plala.or.jp@localhost>
X-VirusScan: Outbound; mvir-ac11; Fri, 16 Oct 2020 10:07:47 +0900
X-spam-judge: spam
mail via ipv6
「spam」判定だが着信。Plalaのメールサーバ内部はIPv4でリレーされているが、IPv6送信を受け、送信されたことを確認。