procmailで既読メールに振り分け
procmail のレシピで、常習犯のSPAMを消し、
次に、SpamAssassinで、それをかいくぐったものを振り分けして、
次に、その残りをThunderbird により、最終振り分けすることで、
ほぼ迷惑メールは振り分けができてい。
しかし、Thunderbird起動時に、SpamAssassin が振り分けした
フォルダ内を、Thunderbird が再びスキャンするもんだから、
SpamAssassin で振り分けしたものと、Thunderbird が振り分け
したものが混ざってしまい、めんどくさい。
をそのまま使って、振り分け処理を書き換えた。
でも、procmaillのテクニックが分かり難く、導入するまでにマニュアルを
何度も読み直す。
≪$HOME/.procmailrc≫
# SpamAssassin と URIRBL のどちらかでSPAM判定されたら、別処理
:0
* 9876543210^0 ^X-Spam-Status: Yes
* 9876543210^0 ^X-URIRBL: Yes
{
# SPAM判定を、INBOX/Spam/SpamAssassinに格納、copyで次の処理を継続
:0c
Maildir/.Spam.SpamAssassin/
# ファイル名末尾の「/以降」を$tailに覚えておく
:0
* LASTFOLDER ?? /\/[^/]+$
{ tail=$MATCH }
# procmail処理終了後処理で cur に移動、ファイル末尾に
# 既読マーク":2,S"をつける
TRAP="/bin/mv $LASTFOLDER
Maildir/.Spam.SpamAssassin/cur/$tail:2,S"
# ホスト名の環境変数を消す(いまだにこれが必要な理由がわからん)
HOST
}
MyDNS.jp に移行
3domain.hk の停止予告に伴い、Dynamic DNS の管理を MyDNS.JP に移行した。
≪/..path../mydns-jp.sh≫ #!/bin/bash # "chmod 711 mydns.jp" にて、ひとまず見えないように... # MyDNS.JP にて発行された情報 USER=hogehoge PASS=fugafuga # アドレスの更新 if [ -x /usr/bin/wget ]; then /usr/bin/wget --no-proxy \ --http-user="$USER" --http-passwd="$PASS" \ -O /dev/null -q http://www.mydns.jp/login.html fi
この後、
- さくらインターネットに登録してある、tsaitoh.net の DNS サーバの設定を変更
- DNSサーバの稼働チェックの nagios の設定を変更
などの設定を加える。最後に、以下のコマンドで正しく引けていることを確認。
$ dig @dns1.ttn.ne.jp tsaitoh.net
ダイナミックDNS 3domain.hk サービス停止
今まで、自宅サーバのダイナミックDNSサービスで使用していた、3domain.hk より、
サービスを5月で停止するとのメールがはいった。この前身の miniDNS から使って
いたけど、さて、どこに移管するか….
移管の度に、候補としてでてくる、丹南CATVに任せるのも検討するが、
3domain.hk = $9.75 / 年だけど、丹南だと
によれば、固定5000円/月、ドメイン維持7000円/月で、かかりすぎ。
ひとまず、探してみると、トップドメインでも無料でサービスしてくれる、
「MyDNS.JP」 が便利そう。個人運営みたいだけど、利用者も多そうだし、
ひとまず登録してみる。
IPアドレスの更新も、HTTP/BASIC認証でちょいと心配なところもあるけど、
ひとまず十分だろう。
トラックバックの実験
ほれ、じっけん。
ママの日記にトラックバックを送ってみる。
movabletype-opensource でコメント認証メールの文字化け
MovableType に移行後、それなりに以前と同じような使い方になってきた。
しかし、ブログへのコメントの認証メールが文字化けして読めない。
メールのソースを見ると文字コードが変。
≪$MT/Mail.pm≫
my $mgr = MT->config;
my $xfer = $mgr->MailTransfer;
my $enc = $mgr->PublishCharset;
my $mail_enc = uc ($mgr->MailEncoding || $enc);
を見ると、MailEncoding なる設定値を参照している様子。
Debian の movabletype-opensource は、メンテナーは日本じゃないし、
さっそく、
≪/etc/movabletype-opensource/mt-config.cgi≫
MailEncoding ISO-2022-JP
EmailReplyTo 1
の設定を追加する。
movabletype 移行に伴い、記事サマリ収集プログラムの修正
movabletype に変更して、自宅サイトのトップの記事サマリが実態にあわなくなった。
自動生成されている Atom 形式の RSS フィードを、マージするプログラムを作り、
その処理に、記事サマリを HTML 化したものを出力するように変更する。
#!/usr/bin/perl
use Jcode ;
use XML::TreePP ;
use XML::FeedPP ;
use POSIX qw( strftime ) ;
# 新規に生成するRSSフィード
$rss_atom = "/var/www/system/atom.xml" ;
# RSSフィードをHTML形式でも作成(トップページ用)
$rss_html = "/var/www/system/rss.html" ;
# RSSフィードを探すユーザ一覧
@local_rss_uid = ( "ユーザ名" ) ;
my $feed = XML::FeedPP::Atom->new();
$feed->merge( "/var/www/system/rss.xml" ) ;
# 自宅 MovableType の RSS Feed をマージ
foreach $uid ( @local_rss_uid ) {
if ( -f "/home/$uid/public_html/mt/atom.xml" ) {
$feed->merge( "/home/$uid/public_html/mt/atom.xml" ) ;
}
}
# RSS Feed に全体情報を設定
$feed->title( Jcode->new( "tsaitoh.net全体のRSSフィード" )->utf8 ) ;
$feed->pubDate( time() ) ;
# フィード一覧をHTMLで生成
open( HTML , ">$rss_html" ) ;
print HTML "<ul>\n" ;
foreach my $item ( sort( $feed->get_item() ) ) {
if ( $item->title() ne "" ) {
my $date = strftime( "%m/%d" ,
localtime( XML::FeedPP::Util::get_epoch( $item->pubDate() ) ) ) ;
print HTML "<li>$date <a href=\"".$item->link()."\" target=\"_top\">"
.Jcode->new( do htmlspecialchars( $item->title() ) )->euc ."</a></li>\n" ;
}
}
print HTML "</ul>\n" ;
close( HTML ) ;
$feed->to_file( $rss_atom ) ;
携帯からの書き込み
携帯からの書き込みができるように、mail2entry.pl を設定する。
# mail2entry.pl は、/usr/lib/cgi-bin/movabletype/ に保存しないと、
# 正しく動いてくれなかった。
.qmail にて、書き込み処理を呼び出すが、動作権限が通常ユーザ権限で
実行されるため、sudo にmail2entry.pl を登録したりして、ちょっと
面倒な設定であった。
# movabletype は web 権限で動くし、$HOME/.qmail-XXX は、ユーザ権限で動く
≪/etc/sudoers≫
# %webloggroup : mail2entryを使うユーザ
%webloggroup LOCAL= (www-data) NOPASSWD: /usr/lib/cgi-bin/movabletype/mail2entry.pl
≪$HOME/.qmail-XXX≫
# .qmail-XXX の XXX は拡張メールアドレス
| /usr/bin/sudo -u www-data /usr/lib/cgi-bin/movabletype/mail2entry.pl
それに、debian のパッケージでは、MT ディレクトリが、mail2entry.pl の
想定している場所と違ったりで、手間取ってしまった。
携帯からの書き込みチェック。
MovableType に移行中、サイト全体のRSSがほしい
長年、hns にて運用してきた日記だけど、データの移行のメドがたったので、
一気に movabletype に変更。 blog エンジンの設定に手間取るのも、
いやなので、Debian の、movabletype-opensource を使う。
記事のインポートは、終了したけど、自宅サイトトップページ中央に
表示させている自宅全体の新規記事一覧が、漢字コードutf8 の違いもあり、
壊れてしまっている。
ということで、movabletype の RSS(atom)をマージして、自宅サイト全体の
新規記事一覧を作り出したい。
まずは、RSS のマージから。
を参考に、CPAN より XML::FeedPP , XML::TreePPをインストール。
# perl -MCPAN -e shell
cpan> install XML::TreePP
cpan> install XML::FeedPP
hnsを変換するための前実験
書き込みの実験
HNSの記事をMovableTypeに移行
いまさらながらのHNSだけど、MovableTypeに移行するのは簡単なのだろうか….
ひとまず、移行した人の情報を参考に….



