「getmail」外部サーバからメールを自動POPさせるの巻

スポンサーリンク

Hotmailに届くメールを迷惑メールを含めてPOPしたいと思ったのが今朝の事。

今まではHotmail側の転送設定で、trippyboy.comにメールを転送するようにしていたが、
それだとJunkとしてフィルタされたものをいちいちWebにアクセスして確認しなければいけない。

結局分ったことは、Hotmail上のJunkメールを確認する方法は、Webから確認する方法のみとの事。

Entourage (and other POP clients) will not receive messages from your Windows Live Hotmail Junk folder. We recommend that you sign in to your Windows Live Hotmail account in a Web browser periodically (at least once a month) to see whether any important messages were directed to the Junk folder. http://getsatisfaction.com/mozilla_messaging/topics/cannot_receive_hotmail_junk_mail

いい機会なのでgetmailというプログラムを用いてのPOP方法を紹介する。
「fetchmail」というものも有るが、「getmail」の方が簡単だと思うのでこれを紹介する。

DDNSサービスなどの接続元IPを確認させる為にPOPを用いる場合や、他のメールサーバ(gmail)などから
メールを受信してまとめて自分のサーバで管理したい場合には有効だろう。

インストールに際してRPMforgeのリポジトリが必要となるので以下を参考にRPMforgeのリポジトリを
使えるようにしておこう。

RPMforgeのrepoを追加するの巻@ServersMan

 

1. getmailをyumでインストールする
# yum -y install getmail
2. 設定ファイルが設置されるディレクトリを作成する
# sudo -u ユーザ mkdir -m 700 $HOME/.getmail
例:sudo -u user1 mkdir -m 700 $HOME/.getmail

3. POPを行なう設定ファイルを作成する
# sudo -u ユーザ vi $HOME/.getmail/getmailrc
例:sudo -u user1 vi $HOME/.getmail/getmailrc

以下記述内容。適切にコメントアウトしたりコメントアウトを解除したりしてください。

[options]
# 詳細表示なし
verbose = 0

# POPしたメールはサーバから削除する
delete = true

# ログを保存する場合は以下2行をコメントアウト
#message_log = ~/.getmail/log
#message_log_verbose = true #

[retriever]
# POP3で受信する場合(有効ナウ)
type = SimplePOP3Retriever

# POP3 over SSLで受信する場合
#type = SimplePOP3SSLRetriever

# IMAPで受信する場合
#type = SimpleIMAPRetriever
# 参照したいサーバ上のメールフォルダ
#mailboxes = ("INBOX", "lists.unix", "lists.getmail")
# 削除したメールの移動先
#move_on_delete = mail.deleted

# 受信ポートを指定したい場合
#port = 8110

# メールサーバ
server = popmail.isp.example.net
# ユーザ名
username = account_name
# パスワード
password = my_mail_password

[destination]

# Maildir形式
type = Maildir
# 保存先パス
path = ~/Maildir/
#path = ~/Maildir/.Getmail_Folder/
4. 「getmail」コマンドでメールを取得できるかを確認する。
# sudo -u ユーザ名 getmail -v
getmail version 4.10.0
Copyright (C) 1998-2009 Charles Cazabon.  Licensed under the GNU GPL version 2.
SimplePOP3SSLRetriever:アカウントID:ポート:
 0 messages (0 bytes) retrieved, 0 skipped
#
5. 上記正しく動いたら、クーロンで自動起動するようにしておく。
# crontab -u ユーザ名 -e

「vi」と同じ要領で編集し、以下の一行を追加

*/15 * * * * /usr/bin/getmail 2>/dev/null

以上で完了。

後は、テストメールをPOP対象メールサーバにメールして、正しくPOP出来るか試してみよう。
/var/log/cronを見て正しくクーロンが実行されているかの確認も出来るし、
getmailrcでログを出力する設定にしている場合は、/home/ユーザ名/.getmail/logを確認しよう。

 

コメント

タイトルとURLをコピーしました