アプリケーション開発ポータルサイト
ServerNote.NET
ServerNote.NET厳選キャンペーン・クーポンはこちら!
カテゴリー【CORESERVERDebianUbuntu
CORESERVERにメールを蓄積し外部から自動で取得する
POSTED BY
2022-02-24

安価なレンタルサーバーCORESERVERの活用例。
メールアドレスを新規作成しCORESERVERに蓄積させて、任意の外部サーバーからcronなどで自動でPOPする。

1、CORESERVERで受信メールアドレスを作成

自分のCORESERVERを仮にx9999.coreserver.jpとして話を進める。

コントロールパネル→メール

https://cp.coreserver.jp/mail/

メールの新規作成

メールアドレス: testmail@x9999.coreserver.jp
パスワード: ランダムなパスワードを作成
受信方法: POP/WEB
メールボックス容量: 100MB (適切な容量を自分で設定)
自動返信: しない
フィルター: なし
オプション: なし

これで、適当なGmailなどからtestmail@x9999.coreserver.jpへメールを送信できるようになり、溜まっていくはずだ。

2、自宅サーバーなどから自動でPOP(受信)してCORESERVERから削除する

放置しておくとすぐにメールボックス容量に到達するので、定期的に受信してCORESERVERから削除しなくてはならない。
ここではDebianサーバーからgetmailを使用してPOPを行ってみる。

getmailのインストール

apt search getmail

getmail4/oldstable,now 4.53.0-1+deb9u1 all
  POP3、IMAP4 や SDPS をサポートするメール取得プログラム

sudo apt install getmail4

設定ディレクトリとメールボックスの作成

cd
mkdir .getmail Maildir
cd Maildir
mkdir cur new tmp
cd ..
chmod -R go-rwx .getmail Maildir

設定ファイルの作成

cd .getmail
vi getmailrc

[options]
verbose = 0
delete = true

[retriever]
type = SimplePOP3SSLRetriever
server = x9999.coreserver.jp
username = testmail@x9999.coreserver.jp
password = <メールの新規作成時生成されたランダムなパスワード>

[destination]
type = Maildir
path = ~/Maildir/

上記はPOPしたメールはCORESERVERから削除、SSL over POP3を使用、メールは~/Maildirに蓄積、といった設定。

メールを取得する

getmail -v で詳細情報つきPOP、getmailのみでサイレントPOP。手動テストなら前者、cronで行うなら後者が良いだろう。

getmail -v
getmail version 4.54.0
Copyright (C) 1998-2012 Charles Cazabon.  Licensed under the GNU GPL version 2.
SimplePOP3SSLRetriever:testmail@x9999.coreserver.jp@x9999.coreserver.jp:995:
  msg 1/1 (2989 bytes) delivered, deleted
  1 messages (2989 bytes) retrieved, 0 skipped

新規メールが無事取得できたようだ。Maildirを確認してみる。

cd
cd Maildir

ls -alF
合計 40
drwx------  5 aaaaa bbbbb  4096  4月  9  2019 ./
drwxr-xr-x 80 aaaaa bbbbb 12288  2月 24 20:37 ../
drwx------  2 aaaaa bbbbb  4096  4月  9  2019 cur/
-rw-------  1 aaaaa bbbbb    51  4月  9  2019 dovecot-uidlist
-rw-------  1 aaaaa bbbbb     8  4月  9  2019 dovecot-uidvalidity
-r--r--r--  1 aaaaa bbbbb     0  4月  9  2019 dovecot-uidvalidity.5cabf8e5
-rw-------  1 aaaaa bbbbb   304  4月  9  2019 dovecot.index.log
drwx------  2 aaaaa bbbbb  4096  2月 24 21:11 new/
drwx------  2 aaaaa bbbbb  4096  2月 24 21:11 tmp/

ls -alF new/
合計 20
drwx------ 2 aaaaa bbbbb 4096  2月 24 21:11 ./
drwx------ 5 aaaaa bbbbb 4096  4月  9  2019 ../
-rw------- 1 aaaaa bbbbb 2773  2月 24 20:44 1645703088.M662482P29312Q0R6a72178ba7b09511.www
-rw------- 1 aaaaa bbbbb 3129  2月 24 21:10 1645704646.M767800P29403Q0R0d2dcfe148f31cdc.www
-rw------- 1 aaaaa bbbbb 3348  2月 24 21:11 1645704715.M335783P29407Q0R34e781be48e543f9.www

メールの本体が、newの中に溜まっている。あとはdovecotなどでPOPするかnewのファイルを直接cat等すればよい。

cronで自動取得する

getmailコマンド単体を打てばよい。

crontab -e

15,45 * * * * /usr/bin/getmail

上記例は、毎時15分/45分に、getmailを呼んで取得する設定。

オリジナルグッズ専門店 名入れ ギフト【ファンクリ】
・世界にひとつのオリジナルグッズを1個から作製し、最短で翌日にお届け可能です。 ・高品質でスピード出荷...READ MORE
学習アップに必要な栄養補給を!【Dr.Dekisugi】
【製品について】 『Dr.Dekisugi』は、6粒(1日目安量)にお子様の成長や脳の発達などに役立つ栄養素である...READ MORE
送料・手数料・査定料・梱包材がすべて無料【楽器買取アローズ】
◆買取金額30%アップキャンペーン実施中 ◆ 楽器を売るなら楽器買取アローズがおススメです! ただいま期...READ MORE
※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【webmaster/管理人】
自営業プログラマー
ご連絡は以下アドレスまで★

☆ServerNote.NETショッピング↓
ShoppingNote
☆お仲間ブログ↓
一人社長の不動産業務日誌
【キーワード検索】