postfixでユーザごとに最大容量を制限する方法

このQ&Aのポイント
  • postfixの機能を利用してユーザのメール容量の制限をかける方法について調査しました。
  • 調査の結果、mailbox_size_limit = 51200000 の項目を設定することで制限がかけられることがわかりました。
  • また、各ユーザごとに異なる容量制限を設定する方法として、ユーザAはデフォルトの50M、ユーザBは100M、ユーザCは500Mといった設定例があります。
回答を見る
  • ベストアンサー

postfixでユーザごとに最大容量を制限したい

お世話になります。 postfixの機能を利用してユーザのメール容量の制限をかけたいと思っております。 Quotaで制限をかけるやり方もあるそうですが、POP時エラーが出てしまうことがあるそうです。 postfixの機能だけで制限を実現できればと思った次第です。 調べたところ mailbox_size_limit = 51200000 という項目で制限がかけられることはわかりました。 ちなみにメールはMaildir形式で行っています。 実現したいのはユーザ毎にメールボックスの容量を制限したいのです。 ユーザAはデフォルトの50M ユーザBは100M ユーザCは500M    :    : というイメージになります。 何か良い方法や別の仕組みとあわせて上記のような事を実現していますというような設定例ありましたらアドバイスお願いいたします。 ■現在仕様 fedora3 postfix-2.1.5 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

postfixの設定によりますが、うちでは local_transport = virtual なので、 virtual_mailbox_limit_maps = hash:/etc/postfix/vquota という行を追加し、/etc/postfix/vquota ファイルにてユーザごとに容量制限かけています。

coinstar
質問者

お礼

返事遅くなりました。 適切な回答ありがとうございます。 私の扱っている環境の設定もvirtualなのでその設定を試してみます。 ありがとうございました。

関連するQ&A

  • Postfix 特定ユーザのみに例外設定を適用するには

    お世話になります。 Postfixの機能を利用してメールボックスの最大容量を20MBに制限しています。 ~main.cfにて~ mailbox_size_limit = 20480000 しかし、特定のユーザ宛てのメールボックスは、最大サイズを無限、もしくは上記の20MBよりも大きい値に設定を行いたいと考えています。 Postfixの機能で、特定のユーザのみ、例外的な設定を行うことはできるのでしょうか? Postfixのバージョンは2.4.5です。 宜しくお願いいたします。

  • postfixでユーザごとにメール送信容量制限

    掲題の件ですが、postfixで下記の様な条件で送信容量制限を 設定したいのですが、それは実現可能でしょうか。 ・/etc/postfix/main.cfへは制限はしない。(message_size_limit = 0) ・一部のメールユーザのみ制限をかけたい。(例えば上限が2MBまで。) ざっくりまとめると100ユーザのうち、20ユーザだけはメールの送信容量の 制限が2MBで、残りの80ユーザは制限無しとしたい。 ご教授の程よろしくお願いします。 【バージョン】 OS :CentOS release 4.6 postfix: mail_version = 2.2.10

  • Postfixの設定

    Postfixの設定を行っていますが、ユーザディレクトリを指定し、 メールボックスをMaildirにしていますが、指定のディレクトリに メールの送信履歴、受信履歴は残らずに、Mailbox形式になって しまいます。どなたかMaildirになる方法を教えて下さい。 ちなみに、設定main.cfではきちんと home_mailbox =Maildir/と 指定しています。宜しくお願い致します。

  • mailboxの容量を増やすにはどうしたらよいでしょうか?

    お世話になります。 postfixでメールサーバーを運用していますがmailboxの容量を増やす方法がわかりません。 postfixのバージョンは2.1.5になります。 osはCentos4でメールサーバーはpostfixをmailbox形式で使っています。デフォルトのままで使用していましたが一部のユーザーのmailboxの容量が多くなり以下のようなエラーが出ます。cannot access mailbox /var/mail/**** for user ****. error writing message: File too large (****はユーザー名です。) メールを削除すればいいのですがIMAPで管理しておりメールのそのままにして容量を増やしたいのです。 webminでユーザーメールボックスを確認しますと****の容量は812Mbありました。これを2Gに増やしたいのです。 main.cfにて20Mに制限するときはmailbox_size_limit = 20480000することはわかりますが これは各ユーザーの設定だと思います。 特定のユーザーのみ(ここでは****)の容量を2Gにする様な設定の方法はありますでしょうか?またデフォルトでの容量はどこでどのように調べることができますでしょうか?教えていただけましたら幸いに存じます。

  • postfixの設定

    前担当者が退職し postfixの設定を担当することになりました。 メールボックスの形式が 共有ディレクトリ形式 Maildir形式 と2種類ありどちらかを利用するというのは調べたのですが、 どちらもコメントアウトになっていました #home_mailbox = Mailbox #home_mailbox = Maildir/ この場合メールはどちらの形式で保存されますか? 使用OSはCentOS release 5.7 (Final) postfixのバージョンは2.3.3 です よろしくお願いします

  • Postfix+Dovecotで、Maildir形式と、/var/sp

    Postfix+Dovecotで、Maildir形式と、/var/spool/mail/ 方式が混在してしまう Fedora13 にPostfix+Dovecotをインストールして、LAN内のメール交換に使っています。 ところが、ユーザーによって、Mozilla Thunderbird でメールが取れない現象が発生し、調べたところ、取れないユーザーは、/var/spool/mail/ のユーザー名のファイルが更新されていました。 メールが取れるユーザーは、/home/ユーザー名/Maildir/new/ にファイルが追加され、/var/spool/mail/ は日時が新しくなっていません。 という事は、Maildir形式と、/var/spool/mail/ 方式が混在している事になってしまいます。 /etc/postfix/main.cf には、 home_mailbox = Maildir/ を設定してありますし、 /etc/dovecot.conf にも mail_location = maildir:~/Maildir が設定してあります。 Postfix と、Dovecot のバージョンは、 /usr/sbin/postconf | grep mail_version mail_version = 2.7.0 $ rpm -qa | grep dovecot dovecot-1.2.14-1.fc13.i686 となります。 方式が混在するような事があるのか、また、Maildir形式に統一することは可能かどうか、ご存知の方、ご教授ください。

  • Postfixにするとrootにメールが届かない

    Fedora Core 2にPostfixをインストールしています。 #mail user だとメールが届きますが、 #mail root ではメールが届きません。 ログは、 Feb 6 12:33:38 fc2 postfix/pickup[11536]: 7DE7FD0E: uid=500 from=<user> Feb 6 12:33:38 fc2 postfix/cleanup[16482]: 7DE7FD0E: message-id=<20050206033338.7DE7FD0E@fc2.domain.tld> Feb 6 12:33:38 fc2 postfix/nqmgr[11537]: 7DE7FD0E: from=<user@domain.tld>, size=284, nrcpt=1 (queue active) Feb 6 12:33:38 fc2 postfix/local[16494]: 7DE7FD0E: to=<postfix@domain.tld>, orig_to=<root>, relay=local, delay=0, status=sent (mailbox) となっています。 宛がuserの時は user@postfix@domain.tld と変わるだけで無事届き、mailコマンドでも dovecot経由でBeckyやOutlokkでも受信できます。 confファイルの主だったところは次のような感じです。 mail_owner = postfix myhostname = fc2.domain.tld mydomain = domain.tld myorigin = $mydomain inet_interfaces = localhost mydestination = $myhostname, localhost.$mydomain $mydomain mynetworks_style = subnet #home_mailbox = Mailbox #home_mailbox = Maildir/ mail_spool_directory = /var/spool/mail なお、MTAをsendmailにするとrootでもuserでも、問題なく動いてます。このときのsendmailの状態はデフォルトです。

  • postfixとdovecotの設定が合わない?

    自宅のPCにFedora8を入れました。そしてそのインストールDVDに入っていたpostfix-2.4.5とdovecot-1.0.5というrpmを入れてメールサーバを構築したのですが、テストユーザ(便宜的にaki-kunとさせてもらいます)を作成し送受信を行ったところイマイチうまくいきません。 まず、同じく自宅内の別PC(Windows)からアウトルックにaki-kunユーザを登録しての送受信は問題なくできているようです。 しかし、ローカル(メールサーバを入れたFedora8内)でメールがうまく読めません。 その手順です 1. ローカル(Fedora8)にrootでログインし、aki-kunのアドレス(例えばaki-kun@domain.com)にメールを送信できました。aki-kunユーザにsuしても送信できているようです。 2. aki-kunにsuし、mailコマンドでメールを確認しても「メールはありません」みたいな表示が出ます。ここが今回困っているところです。 実際にアクセスしているメールディレクトリですが、基本的には"/home/aki-kun/Maildir"のようですが、ローカルにaki-kunでログインし、mailコマンドを行った場合には"/var/spool/mail/aki-kun"を確認しているようです。ここが原因だろうと考えているのですがどこを修正したらよいでしょうか。 一応関係ありそうな設定値を書いてみます postfixの設定ファイルmain.cf home_mailbox = Maildir/ dovecotの設定ファイルdovecot.conf mail_location = maildir:~/Maildir 他に必要な設定、障害解明に必要な情報などありましたらぜひ教えてください。

  • Postfix 受信制限

    Postfixにて以下の様な動作をさせたいと思っています。 1)インターネット、WAN、ローカルドメイン宛にメールを送信でき、受信できる 2)ローカルドメインのみ送受信可(外部へメール送受信禁止) 2)の外部メールへの送信規制は、「restricted_senders」を使用し、制限しています⇒外部への送信は出来なくなりました   しかし、外部からのメールが受信できてしまいます。   一部の(特定の)ユーザのみ外部からのメールを拒否することは可能でしょうか?   出来れば外部のツールを使用せず、Postfixの機能のみで実現したいと思っています。 よろしくお願いいたします。 OS:CentOS 5.5 Version:Postfix 2.2

  • Postfix+POP3の質問

    お世話になります。 私はLinux歴2週間のSEです。以前まで5年ぐらいwin上でシステム開発を担当していました。 最近、Linux(Miracle)を使ってサーバー構築することにになり、Mysql4、Apache2、PHP5まで使える状態になりました。 次にPostfixを使ってメールサーバーを構築しようとしましたが、POP3を使って受信できません。 PostFixの定義 command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix myhostname = webmaster.xxxx.com mydomain = xxxx.com myorigin = $mydomain mydestination = $myhostname, localhost.$mydomain, $mydomain inet_interfaces = all relay_domains = $mydestination alias_maps = hash:/etc/postfix/aliases alias_database = hash:/etc/postfix/aliases home_mailbox = Maildir/ mailbox_size_limit = 102400000 message_size_limit = 5120000 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix mynetworks = 127.0.0.0/8, 192.168.0.0/24 (不正中継対策は未だ定義していません) この定義でKmail(メーラー)を使って送信は問題なく出来ました。テストで「a1」と言うユーザーを作り受信テストしました。 メールボックス(/home/a1/maildir/new)まで届いているにも拘らずメーラーからPOP経由でメッセージを受信できません。 当然ですがデレクトリー直接指定の場合は受信出来ました。 POP3はxinetdから起動しています。 メーラーからの応答は”メッセージなし”だけで何の定義が足らないか又は起動するプログラムを間違えているのかサッパリ解らなく質問させて頂きました。 初めての質問でご無礼ございましたらご容赦ください。