Zimbra Webメールで添付ファイルの最大サイズを増やす方法

簡潔な答え

Zimbra Webmailの場合、設定を1つだけ上げるだけでは不十分な場合があります。送信メッセージに大きなファイルを添付する必要がある場合は、Webアップロード制限、メールボックスのSOAPコンテンツ制限、およびMTAの合計メッセージサイズ制限を調整してください。また、サーバー固有のオーバーライドや、より小さなリクエスト制限を課す外部プロキシがないかどうかも確認してください。

具体例として、組織がユーザーに最大 25 MiB のファイルを添付させたいとします。Zimbra のサイズに関するガイドラインでは、MIME エンコードされたメッセージ全体で元のファイルサイズの約 150% を許容することを推奨しています。40 MiB (41,943,040 バイト) は、テストとストレージ容量に応じて、このポリシーの妥当な開始例となります。MIME のオーバーヘッドはメッセージによって異なるため、乗数によってすべてのメッセージが収まることが保証されるわけではありません。

zimbra現在の値を確認し、サンプルポリシーがご使用の環境に適合していることを確認した後、ユーザーとして以下のコマンドを実行してください。

su - zimbra
zmprov gcf zimbraFileUploadMaxSize zimbraMailContentMaxSize zimbraMtaMaxMessageSize

zmprov mcf zimbraFileUploadMaxSize 41943040
zmprov mcf zimbraMailContentMaxSize 41943040
zmprov mcf zimbraMtaMaxMessageSize 41943040
postfix reload

これらのコマンドはグローバル値を設定します。メールボックスサーバーに独自の下限オーバーライドが設定されている場合は、そのサーバーも確認して調整してください。正確な属性と再起動動作は、Zimbraのリリースと展開環境によって異なる場合があります。広範囲に変更を適用する前に、インストールされているバージョンと照らし合わせて確認してください。

なぜ制限が複数存在するのか

zimbraFileUploadMaxSizeZimbraが処理するファイルアップロードを制御します。これには、組み込みのWebプロキシが受け入れるリクエストボディも含まれます。Zimbraのプロキシリファレンスでは、HTTPとHTTPSの両方の最大ボディサイズがこの属性にマッピングされています。プロキシの制限を超えるリクエストはHTTP 413エラーを受け取る可能性があります。複数のメールボックスを使用する環境では、この属性はグローバルに設定することも、サーバーごとに設定することもできます。

zimbraMailContentMaxSizeメールボックスのSOAPインターフェースを介して送信されるメッセージコンテンツのサイズを制御します。zimbraMtaMaxMessageSize標準的なZimbra環境ではPostfixであるMTAが受け入れる完全なメッセージの最大サイズを制御します。この合計サイズには、ディスク上の元のファイルだけでなく、メッセージヘッダーとMIMEエンコードされたコンテンツも含まれます。

Zimbraのテクニカルセンターにあるサイズ設定に関する記事は、現在作成中であることが明記されています。記事の説明とコマンドは役立ちますが、インストールされているZimbraのバージョンに合わせて属性の定義と動作を確認してください。参考資料としては、Zimbraのmaximum-message-sizeに関するガイダンスとZimbraプロキシ変数リファレンスがあります。

失敗状況に合った設定を使用してください。添付時にファイルが即座に拒否された場合は、まずアップロードまたはWebプロキシの制限が原因である可能性があります。送信中または配信中にメッセージが拒否された場合は、MTAまたは受信者のサーバーで問題が発生している可能性があります。アップロードは成功したが後で送信に失敗した場合は、MTAの制限またはMIME展開にまだ注意が必要です。

ご自身の保険契約に合った限度額を選択してください

すべての上限を可能な限り高く設定するのではなく、明確な業務上の制限を設定してください。たとえば、ユーザーが最大 25 MiB のファイルを添付する場合、40 MiB の例ではエンコードとメッセージのオーバーヘッドのための余裕が確保されます。Zimbra は、エンコードされたサイズの増加率は固定ではないため、メッセージ制限を見積もる際には、計画上の想定値として 150% を使用することを推奨しています。

サイズの大きいメッセージは、キューのストレージ、帯域幅、およびメールボックスの容量をより多く消費します。Zimbra は、Postfix のサイズ制限が過度に高いと、キュー パーティションに十分な空き容量がない場合にメール配信の問題が発生する可能性があると警告しています。Zimbra のサイズ属性が非常に高い場合、一部のバージョンではサービスの問題が発生する可能性もあります。Zimbra は、範囲外の値を設定すると Web アプリと管理コンソールで障害が発生することを報告しています。容量計画なしに数ギガバイトの上限を設定するのではなく、制限を段階的に増やして結果をテストしてください。

サーバーごとのオーバーライドを確認する

グローバル設定は、すべてのメールボックスサーバーが1つのポリシーを共有する必要がある場合に便利です。ただし、サーバーレベルの値がグローバル設定を上書きする場合があります。グローバル値を確認してから、影響を受けるユーザーを処理するメールボックスホストを確認してください。

su - zimbra
zmprov gcf zimbraFileUploadMaxSize zimbraMailContentMaxSize
zmprov gs mailbox1.example.com zimbraFileUploadMaxSize zimbraMailContentMaxSize

実際のメールボックスサーバー名に置き換えてくださいmailbox1.example.com。サーバー固有の値が低く、ポリシーでより大きなサイズが許可されている場合は、そのホストを更新してください。

zmprov ms mailbox1.example.com zimbraFileUploadMaxSize 41943040
zmprov ms mailbox1.example.com zimbraMailContentMaxSize 41943040

変更が必要なメールボックスホストに対してのみ、この手順を繰り返してください。グローバル構成を変更しても、既存のサーバーオーバーライドが削除されるとは限りません。マルチサーバー環境では、該当するすべてのメールボックスノードとすべてのMTAを確認してください。

MTA制限が有効になったことを確認してください

グローバルMTA属性を変更してPostfixをリロードした後、各Zimbra MTAで有効なPostfix値を確認します。

su - zimbra
zmprov gcf zimbraMtaMaxMessageSize
postconf message_size_limit

2つの結果はバイト単位で一致するはずです。LDAP属性が正しいにもかかわらずpostconf古い制限が表示される場合は、完全な再起動を試みる前に、Zimbra MTAの設定プロセスとログを確認してください。再起動はメールサービスを中断させる可能性があるため、インストールされているリリースと展開トポロジで必要な場合にのみ実行するようにスケジュールしてください。

Zimbra のプロキシは、HTTP リクエストボディの制限を から構築しますzimbraFileUploadMaxSize。環境内で、Zimbra の前に別の Nginx、Apache、クラウド ゲートウェイ、またはセキュリティ アプライアンスが配置されている場合、そのコンポーネントには独自のアップロード制限がある可能性があります。413 レスポンスまたはプロキシ ログ エントリは、エラーを返したレイヤーのリクエストボディの制限を確認する手がかりとなります。Zimbra が生成したプロキシ ファイルを直接編集することは避けてください。サポートされている Zimbra 設定を使用して変更を行い、バージョンごとにドキュメント化されている構成の再生成または再起動の手順を使用してください。

制御されたメッセージでテストする

  1. テスト用のメールボックスと、添付ファイルの上限サイズより少し小さいファイルを使用してください。システムが受け入れ可能な最大サイズのファイルから始めないでください。
  2. Zimbra Webmailでファイルを添付してください。ブラウザがアップロードサイズが大きすぎると報告する場合は、zimbraFileUploadMaxSizeメールボックスサーバーのオーバーライドとプロキシ制限を確認してください。
  3. 別の内部テスト用メールボックスにメッセージを送信してください。アップロードは成功したが送信が失敗した場合は、メールボックスのSOAP上限とMTA制限を確認してください。
  4. バウンスメッセージとログを確認してください。ZimbraのMTAガイダンスでは、Postfixがサイズ超過メッセージを552サイズエラーで拒否したことを示しており/var/log/zimbra.log、拒否、超過、制限、または警告イベントを確認することを推奨しています。
  5. 内部配信は正常に機能するものの、外部の受信者がメッセージを拒否する場合は、受信者が公開または文書化しているサイズ制限を確認してください。Zimbraの設定で、他のメールシステムの制限を引き上げることはできません。

送信SMTPの場合、PostfixはSMTPSIZE機能で受け入れ可能なサイズを通知できます。リモートメールサーバーは、Zimbraが送信した後に、より小さい値を通知したり、メッセージを拒否したりする場合があります。Zimbraのトラブルシューティング記事では、ローカルMTAによる拒否と受信側での拒否を区別する方法を説明しています。PostfixのメッセージサイズパラメータリファレンスとZimbraのMTAサイズに関するトラブルシューティング例を参照してください。

ファイル共有リンクを使うべき場合

メール添付ファイルの制限は、非常に大きなメディアファイル、ディスクイメージ、またはプロジェクトアーカイブを配布する確実な方法ではありません。受信者のメールシステムごとにメッセージの総数制限が異なる場合があり、エンコードされたメッセージは元の添付ファイルよりも大きくなります。制限を超えるとストレージやキューの容量に負担がかかる場合は、承認されたファイル共有サービスを介してファイルを共有し、アクセス権限で制御されたリンクをメールで送信してください。

変更が成功したかどうかは、新しいポリシー内のテストファイルがアップロード、送信され、内部受信者に届き、Postfixが意図したメッセージサイズ値を報告した場合に判断できます。特定のユーザーまたはサーバーノードのみが依然として失敗する場合は、それらのメールボックスサーバーのオーバーライドとプロキシルートを比較してください。外部受信者のみがメールを拒否する場合は、Zimbraの上限を再度引き上げる前に、その受信者の制限を確認してください。

コメントを残す

クライアントブラウザでのJitsi MeetにおけるCPU使用率の高さを修正する

クライアントブラウザでのJitsi MeetにおけるCPU使用率の高さを修正する

Jitsi MeetブラウザのCPUスパイクを診断し、ビデオタイル、カメラエフェクト、ブラウザグラフィック、ホスト設定をチェックすることで、クライアントの負荷を軽減します。

PrometheusとGrafanaを使用してJitsi Videobridgeのメトリクスを監視する方法

PrometheusとGrafanaを使用してJitsi Videobridgeのメトリクスを監視する方法

Jitsi Videobridgeに内蔵されたPrometheusエンドポイントを使用して、Jitsi Videobridgeの状態、会議の負荷、トラフィックを追跡し、Grafanaでデータを探索およびグラフ化できます。

Jitsi Meet Docker のカスタムドメイン名の設定方法

Jitsi Meet Docker のカスタムドメイン名の設定方法

Jitsi Meet Docker 用のカスタムドメインを、DNS、PUBLIC_URL、HTTPS、Let's Encrypt、ファイアウォールポート、NAT 設定、エンドツーエンド検証とともに構成します。

SSL更新後にZimbra管理コンソールで発生する404 Not Foundエラーを修正する

SSL更新後にZimbra管理コンソールで発生する404 Not Foundエラーを修正する

SSL更新後に発生するZimbra管理コンソールの404エラーを修正するには、正しいURLとポート、プロキシルーティング、サービスステータス、デプロイ済みの証明書、およびログを確認してください。

Nextcloudの「PHP OPcacheが正しく設定されていません」という警告を修正する

Nextcloudの「PHP OPcacheが正しく設定されていません」という警告を修正する

アクティブなPHP SAPI、サイズ制限、コメント、および再検証設定を確認することで、NextcloudのPHP OPcache構成警告を診断および修正する方法を学びましょう。

MySQLバージョンアップグレード後のKopanoデータベース移行エラーを修正する

MySQLバージョンアップグレード後のKopanoデータベース移行エラーを修正する

MySQLまたはMariaDBのアップグレード後にKopanoデータベースの移行が失敗した場合は、バックアップ、サーバーバージョン、SQLモード、文字セット、スキーマ状態、およびログを確認してトラブルシューティングを行います。

NextcloudでLDAPとActive Directory認証を設定する方法

NextcloudでLDAPとActive Directory認証を設定する方法

セキュアなトランスポート、ユーザーおよびグループフィルタ、ログイン属性、そしてテスト済みの展開機能を使用して、NextcloudをLDAPまたはActive Directoryに接続します。

GoogleサービスなしでElement Android通知を修正する方法:UnifiedPushガイド

GoogleサービスなしでElement Android通知を修正する方法:UnifiedPushガイド

UnifiedPush、Androidの権限設定、バッテリー設定、および信頼性の高い検証テストを設定することで、Googleサービスを削除した端末におけるElement Android通知の問題を修正します。

Nextcloudの「データベースに一部のインデックスが欠落しています」という警告を修正する

Nextcloudの「データベースに一部のインデックスが欠落しています」という警告を修正する

Nextcloudのデータベースインデックス不足警告を、公式のoccコマンドでクリアします。まずバックアップを作成し、変更内容をプレビューしてから修復を実行し、結果を確認してください。

Element WebでKeycloakを使用してシングルサインオン(SSO)を設定する方法

Element WebでKeycloakを使用してシングルサインオン(SSO)を設定する方法

Element Web 用の Keycloak SSO を設定するには、OIDC を Synapse に接続し、正確なコールバック URL を設定し、ユーザー クレームをマッピングし、ログアウトをテストします。