ドコモメールを自宅サーバで受信してGmailに転送

やっとこさ docomo.ne.jp なメールも公式にIMAP経由で受信できるようになったので、Gmailに転送できるようになった。
ただ、GmailはPOP3しか対応していないので、自宅のLinuxサーバでfetchmailを使いIMAP受信をしてGmailに転送することとした。

これでうんざりする迷惑メールもGmailの優秀なフィルタで排除されるし、携帯のメールもGmailにアーカイブしておけるようになった。

fetchmailインストール

# aptitude install fetchmail

設定ファイル作成
# vi /etc/fetchmailrc

poll imap.spmode.ne.jp
proto imap
uidl
timeout 30
username “docomo ID”
password “docomo IDパスワード”
smtpname “kuniharumaki+docomo@gmail.com”
smtphost “localhost”
idle
no mimedecode
keep
ssl

パスワード直書きなのでパーミッション注意
# chmod 600 /etc/fetchmailrc

デーモンとして起動するように設定
# vi /etc/default/fetchmail

OPTIONS=–syslog
START_DAEMON=yes

起動してメールがGmailに転送されてるか確認して終わり
# /etc/init.d/fetchmail start

動作状況はsyslogに出力されてるので確認する。
daemonとして起動させておくと、ほぼメールの着信と同時に転送がかかる。

参考情報: ドコモメールアプリ以外のメールソフトでのご利用方法
https://www.nttdocomo.co.jp/service/docomo_cloud/docomo_mail/function/other/index.html

Apache CVE-2011-3192 対応

先月末に世間を賑わせたRange headerを悪用したDoS攻撃を食らうApacheの脆弱性。
Ubuntuでも対応パッケージがリリースされていたのでインストール。
ウチはUbuntu 10.04LTSを使ってるけど、Apache 2.2.14にパッチを当てたパッケージになっているので細かい動作検証は不要っぽい。
Debianの対応チームに感謝!!

以下、更新パッケージ詳細

apticron report [Sat, 03 Sep 2011 04:40:11 +0900]
========================================================================

apticron has detected that some packages need upgrading on:

kuniharumaki.com

The following packages are currently pending an upgrade:

apache2 2.2.14-5ubuntu8.6
apache2-mpm-prefork 2.2.14-5ubuntu8.6
apache2-prefork-dev 2.2.14-5ubuntu8.6
apache2-utils 2.2.14-5ubuntu8.6
apache2.2-bin 2.2.14-5ubuntu8.6
apache2.2-common 2.2.14-5ubuntu8.6

========================================================================

Package Details:

Reading changelogs…
— Changes for apache2 (apache2 apache2-mpm-prefork apache2-prefork-dev apache2-utils apache2.2-bin apache2.2-common) —
apache2 (2.2.14-5ubuntu8.6) lucid-security; urgency=low

* SECURITY UPDATE: Range header DoS vulnerability
– debian/patches/207_CVE-2011-3192.dpatch: filter out large
byte ranges and improve memory efficiency in handling buckets.
(thanks to Debian and upstream)
– CVE-2011-3192
* Include fix for regressions introduced by above patch:
– debian/patches/208_CVE-2011-3192_regression.dpatch: return 206
and 416 response codes where appropriate (see deban bug 639825)

— Steve BeattieThu, 01 Sep 2011 01:52:17 -0700

========================================================================

You can perform the upgrade by issuing the command:

aptitude full-upgrade

phpMyAdmin 初期設定メモ

このblogもWordpressで運用しているので、たまにデータのメンテナンスでphpMyAdminを使うことがある。
Ubuntuなので、基本はaptitudeで簡単インストールなのだが、その後若干の設定変更が必要なので、その部分のメモ。
Ubuntu 10.04 LTS のphpMyAdmin 3.3.2deb1 想定。

まず、インストールが終わってログインすると、

リンクテーブルを処理するための追加機能が無効になっています。理由についてはこちらをご覧ください

というアラートが表示されている。
これを解消するための設定。

管理用テーブル(phpmyadmin)の作成

  1. zcat /usr/share/doc/phpmyadmin/examples/create_tables.sql.gz > /tmp/create_tables.sql
  2. mysql -u [mysql管理者ID] -p < /tmp/create_tables.sql
  3. rm /tmp/create_tables.sql

/etc/phpmyadmin/config-db.php 編集
$dbname=”; を $dbname=’phpmyadmin’; に変更
※それ以外の箇所はデフォルトのままで問題ないはず。

/etc/phpmyadmin/config.inc.php 編集
$cfg[‘Servers’][$i][‘designer_coords’] = ‘pma_designer_coords’; の下に
$cfg[‘Servers’][$i][‘tracking’] = ‘pma_tracking’; を追記(なんでこれ書かれてないんだろ)

これでphpMyAdminをログアウトしてからログインしなおせばアラートが消えて、追加機能が有効になる。
例えば追加される「デザイナ」タブでは、テーブルのリレーションがグラフィカルに設定できるようになったりする模様。

Apacheのログ出力はcronolog経由が便利

Ubuntuでもそうだけど、Apacheインストール直後はlogrotateで4時くらいにログをローテートさせるのが一般的。

  • 何か追加でインストールする必要が無い
  • 指定した期間でローテートできる
  • 指定した期間で削除できる
  • 自動的に圧縮できる

みたいなメリットがある。
でも逆に、

  • 出力ファイル名を変更できない(出来るけど面倒)
  • さらに月別にディレクトリを掘るとかが大変

ってことで、出力ファイル名を変えたい人は普通Apacheに付属のrotatelogsを使っているみたい。
でも、どうにもrotatelogsのオプションがしっくりこなくて使ってなかったんだけど、似たようなものでcronologというのがあって、そっちがしっくりきたので、簡単にメモ。

インストールはaptitudeで簡単に入るので省略。

使い方も簡単で、ログ出力指定のところにパイプで書くだけ。

CustomLog “|/usr/bin/cronolog -S /var/www/logs/latest -P /var/www/logs/latest.prev /var/www/logs/%Y/%m/default-%Y%m%d-access.log” combined

こんな感じ。ErrorLogやRewiteLogなどパイプで渡せる部分にならどこでも使える。(別にApacheじゃなくても良い)
年/月 とディレクトリを作成して、その下に default-20100601-access.log みたいなファイル名でログを出力する設定になっている。

詳しいオプションは本家ページのUsageを確認して貰うとして、便利なのは S オプションと P オプション。
それぞれ、Sが最新(現在出力中)のファイルへのシンボリックリンク作成、Pが一個前(上記の例だと1日前)のファイルへのシンボリックリンクが作成される。
いちいち今出力されているログファイルのパスとかファイル名を考えなくてもシンボリックリンクを参照すれば良いので管理が楽になる。

結構ボケーッとログファイルを眺めていることが好きなので、そういうときには、

tail -q –follow=name –retry /var/www/logs/latest

とかやっておけば、ログを流して見ておけるし、日付が変わってリンク先が切り替わっても追従してくれる。
pオプションで作ったリンクは、前日のログファイルをvisitorsなどで解析するときの指定に便利。

rotatelogsは付属してくるので割と使われているのを見るけど、cronologの方が高機能だからオススメ。

ちなみに当たり前だけど、ログは出力されっぱなしで圧縮も削除もされないので、その辺りはfindコマンドなどで別途実装する必要がある。

Zoneedit.comで動的IPアドレスによる独自ドメイン運用 (ddclient利用)

先日ドメイン(kuniharumaki.com)を取得した。
今利用中のkuniharumaki.comドメインから移行するにあたって、まずはDynamic DNSとして利用できるDNSサービスを選定。
SPF設定のためにTXTレコードが編集できるところで、かつ無料のところを探してみたところ、有名そうなところではZoneEdit.comが良さそうだったので、とりあえずここに。

IPアドレスの通知は特定ページにアクセスすれば出来るようだが、Ubuntuにはddclientという便利なパッケージがあるので、それを使うことにする。
以下は覚え書き。
続きを読む Zoneedit.comで動的IPアドレスによる独自ドメイン運用 (ddclient利用)

ClamAVでのOUTDATEDワーニング解消 (Ubuntu 10.04LTS)

UbuntuのClamAVはデフォルト状態で1時間ごとにfreshclamがパターンファイルを更新してくれるが、そのログファイル(/var/log/clamav/freshclam.log)にWARNINGが出ていた。

WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.96 Recommended version: 0.96.1
DON’T PANIC! Read http://www.clamav.net/support/faq

10.04LTSでインストールされるバージョンは0.96なんだが、もう古くなってるよ! すでに0.96.1がリリースされているよ! ということらしい。
パニクらずにそこのURLを読めと言われたので読んでみたけどよく分からん。
ってことで探してたら普通にUbuntuのヘルプページに解説があった。
ClamAV – Community Ubuntu Documentation

ちゃんと読んでないけど、恐らく標準のリポジトリのものはバージョンアップしないから、PPAのを使ってねということのようだ。
というわけで、以下手順の覚え書き。(コンソールの応答は冗長なので必要に応じて省略)
面倒なので作業はrootでやっているため、Ubuntuのお作法に従いたい人は頭にsudoを付けて実行してください。

続きを読む ClamAVでのOUTDATEDワーニング解消 (Ubuntu 10.04LTS)