レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

procmailでメールボックスのパーミッションが660になってしまう対処について調べてみた

2013年1月29日 2015年5月14日
procmail troubleshooting

Dovecotでfchmodのエラーが出た時の対処 でエラーの本当の原因は、メールボックスのパーミッションにグループの権限が付与される(660)になってしまうことにあることは書きました。
メールボックスは、初回のメール配信時に自動で作成されます。
そこで、今回は、その原因の中でも多い?と思われるprocmail によるものの対処案を考えてみました。

$ ls -l
-rw-rw---- 1 root   mail 526 2013-01-25 05:02 root
-rw-rw---- 1 hoge   mail 526 2013-01-28 09:39 hoge
-rw-rw---- 1 taro   mail 422 2013-01-28 09:54 taro
-rw-rw---- 1 hanako mail 526 2013-01-28 05:17 hanako

メールボックスのパーミッションが660になってしまう理由

メールボックスのパーミッションが660になってしまう理由は、いろいろありますが、もっとも簡単でかつ分かりにくいのは、 procmailが起因する場合です。

procmailは、既にメインのメンテナンスが終了しているのですが、各Linuxのディストリビューションで細々とセキュリティメンテが行われています。 メール配信ツールとしては、歴史も古く利用がが多いことから、今でも提供され続けているのだと思います。

以下に、procmailが原因である場合の対処について簡単な方法をいくつか紹介したいと思います。

procmailが原因かどうかは、スプールディレクトリのユーザ名のメールボックスファイルを削除して、以下のようにprocmail をテスト用に起動することで簡単に確認できます。
$ echo TEST | procmail -d <username>
これで、自動的にメールスプールに <username> のファイルが作成されます。そのファイルのパーミッションを確認すればOKです。
もちろん、最終的にはMTA(SendmailやPostfixなど)経由でprocmailでメール配信することですが、まず、簡単な確認だけなら上記でも確認できます。
  • procmailのSGID ビットを落とす方法

    まずは、procmailのパーミッションを確認します。

    $ ls -l /usr/bin/procmail
    -rwsr-sr-x 1 root mail 89720 2010-04-26 07:38 /usr/bin/procmail

    上記であれば、SGID(Set Group ID) ビットが立っています。この場合、SGIDを落としてやると デフォルトで 所有者のみ読み書き権限だけ(600)となることがあります。
    SGIDの落とし方は、以下のとおりです。

    $ chmod g-s /usr/bin/procmail
    $ ls -l /usr/bin/procmail
    -rwsr-xr-x 1 root mail 89720 2010-04-26 07:38 /usr/bin/procmail

  • /var/mail の所有グループとprocmailの所有グループが異なるように設定する方法

    ほとんどデフォルトの設定では、/var/mail の所有グループとprocmailの所有グループは、同じmailグループになっていることが多いです。 これをどちらか一方を別のグループにしてしまうと、メールボックスのパーミッションは、デフォルトで600となります。

    $ ls -l /usr/bin/procmail
    -rwsr-sr-x 1 root mail 89720 2010-04-26 07:38 /usr/bin/procmail
    
    $ ls -ld /var/mail/
    drwxrwsr-x. 2 root mail 4096 2012-11-21 11:40  /var/mail/

    上記ように同じグループ(mail)に所属しています。これを例えば procmail だけを rootのグループへ変更してみてください。
    メールボックスのパーミッションは、デフォルトで 所有者のみ読み書き権限だけ(600)となることがあります。

    procmail のグループを変更するには、/etc/groups を直接編集してもOKです。

    $ chown root. /usr/bin/procmail
    -rwsr-sr-x 1 root mail 89720 2010-04-26 07:38 /usr/bin/procmail
    $ ls -l /usr/bin/procmail
    -rwsr-sr-x 1 root root 89720 2010-04-26 07:38 /usr/bin/procmail
    ファイルを作成するのは、procmailですから、procmailの所有者、グループを作成したファイルも引き継ごうとします。 ここで、所属するグループが作成するファイルのディレクトリが異なるため権限を付加できなくなります。

procmailには、UMASK というものがあります。これを設定することでデフォルトのパーミッションを設定することができるとされていますが、 結論から言うと、うまく動作してくれませんでした。

Googleを検索すると、以下のような文面もあるのですが、うまくいきません。

(1)Procmailが新しいスプールファイルに660の許可を与える条件とされる記述です。

Procmail will give new spool files permission of 660 if and only if

a) the spool directory is not owned by the user as which procmail is
   running, and
b) the spool directory is not world writable, or the sgid bit is set
   on the directory, and
c) procmail is setgid to the group of the spool directory (or otherwise
   has a matching egid).

So, you'll need to choose a non-root user (uid != 0) that is not otherwise
 used (you may have to create one for this), and change the spool directory
  to be owned by it.  Then, turn on the sgid bit on the spool directory:

        chown mailspool /var/mail       # or whatever user you use
        chgrp mail /var/mail            # just in case...
        chmod g+s /var/mail             # or chmod o-w /var/mail


(2)procmailがumaskを使用する条件とされる記述です。

That wouldn't work anyway, as the permissions on new mailboxes are set 
when they're 'screened' before procmail opens any rcfiles.

Procmail will only use a umask of 007 when creating mail spools if
1) the spool directory is not owned by the user that procmail is 
   started as or setuid to (i.e., not owned by root), and
2) procmail is setuid to the group of the spool directory, and
3) either the setgid bit is set on the spool directory or the spool 
   is not world writable.

色々と調べましたが、結局、少なくとも 3.22 では、ソースコードからもメールスプールのパミッション変更はできないみたいです。

メールのクライアントツールが機能的に発達したため、今では、procmailの重要性もかなり小さくはなってきました。 ただ、今でもメールを条件付で転送させるには非常に便利なツールであることには変わりません。
それでも、メンテナンスの面からも そろそろprocmailから切り替える必要性を感じますね。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

procmailの代わりに(rpmを作成して)maildropをインストールする(RPM編)

procmailでメールボックスのパーミッションが660になってしまう対処について調べてみた でも指摘したように、procmailには、メンテナ ...

procmailの代わりに(makeを使って)maildropをインストールする(make編)

procmailの代わりに(rpmを作成して)maildropをインストールする(RPM編) では、CentOS/Scientific Linu ...

procmailの代わりにmaildropを使ってみる(メールの振り分けから自動応答(返信)まで)

以下の記事では、maildropのインストールについて解説してみました。 procmailの代わりに(rpmを作成して)maild ...

Dovecotでfchmodのエラーが出た時の対処

LogWatchなどでDovecotのログを確認していると以下のようなエラーメッセージが出力されることがあります。 **Unmatched ...

CentOS / Scientific Linux でsudoを使ってみる

sudoと言えば、Ubuntuだと思いますが、昨今のセキュリティ強化施策のための一つの手段として、 sudoが注目されています。 sud ...



コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2730 [s]