DOVECONF(1) Dovecot DOVECONF(1)

doveconf - ابزار برون‌ریزی پیکربندی Dovecot

doveconf [-aCdFInPNUwx] [-c config-file] [-f filter]

doveconf [-n] [-c config-file] section_name ...

doveconf [-h] [-c config-file] [-f filter] setting_name ...

دستور doveconf فایل‌های پیکربندی Dovecot را خوانده و تجزیه می‌کند و آن‌ها را به قالبی ساده‌تر که توسط سایر بخش‌های Dovecot استفاده می‌شود، تبدیل می‌نماید.

تمامی برنامه‌های مستقل، مانند dovecot(1)، ابتدا تنظیمات خود را با اجرای doveconf به دست می‌آورند، مگر اینکه بتوانند تنظیمات را از طریق اتصال به سوکت یونیکس (UNIX socket) پیکربندی دریافت کنند.

برای مدیران سیستم، doveconf عمدتاً برای بازرسی پیکربندی فعلی در یک قالب خوانا برای انسان، بررسی تنظیمات منفرد و مقایسه مقادیر پیکربندی‌شده با مقادیر پیش‌فرض آن‌ها مفید است.

همچنین می‌توان از آن برای بررسی گروه‌های پیکربندی (@groups) از طریق پرس‌وجوی مستقیم آن‌ها استفاده کرد.

-a

نمایش تمامی تنظیمات به همراه مقادیر پیکربندی‌شده فعلی آن‌ها.

-C

TODO (بررسی پیکربندی کامل).

-c config-file

خواندن پیکربندی از config-file مشخص‌شده. به طور پیش‌فرض از /etc/dovecot/dovecot.conf استفاده خواهد شد.

-d

نمایش مقدار پیش‌فرض تنظیم به جای مقدار پیکربندی‌شده فعلی.

همچنین می‌توان از این گزینه برای نمایش محتویات گروه‌های تنظیمات پیش‌فرض با پرس‌وجوی مستقیم نام گروه استفاده کرد، برای مثال:

doveconf -d @mailbox_defaults/english

-F

نمایش پیکربندی در یک قالب مبتنی بر فیلتر، یعنی همان شیوه‌ای که Dovecot در ساختار داخلی به آن دسترسی دارد. این گزینه می‌تواند برای اشکال‌زدایی از دلایل کار نکردن پیکربندی طبق انتظار مفید باشد.

تنظیمات در «struct»های گوناگونی دسته‌بندی می‌شوند که همگی به طور مستقل قابل دسترسی هستند. در خروجی، یک struct جدید با # struct_name آغاز می‌شود.

مورد بعدی فهرست فیلترها است که با :FILTER و به دنبال آن فیلتر در نحو فیلتر رویداد (event filter syntax) آغاز می‌شود. یک فیلتر خالی با همه موارد مطابقت دارد. فیلترها از انتها به ابتدا پردازش می‌شوند. تنظیمات از نخستین فیلتر منطبق (یعنی آخرین فیلتر در خروجی) دریافت می‌شوند. از آنجا که تمام فیلترها همه تنظیمات را تعریف نکرده‌اند، پردازش تا زمانی که تمام تنظیمات پیدا شوند ادامه می‌یابد.

فیلترهای فهرست‌های نام‌گذاری‌شده مانند protocols = imap pop3 به صورت protocol/imap=yes و protocol/pop3=yes # stop list نمایش داده می‌شوند. عبارت «stop list» به این معناست که این مقدار توسط هیچ‌کدام از فیلترهای منطبق بعدی دستخوش تغییر نمی‌شود. اگر تنظیم به صورت protocols { imap=yes, pop3=yes } تعریف می‌شد، «stop list» وجود نداشت، زیرا این نوع تعریف صرفاً پروتکل‌ها را اضافه می‌کند، نه اینکه کل فهرست را جایگزین کند.

گروه‌های تنظیمات در خطوط :INCLUDE گنجانده می‌شوند. موارد include در آخر پردازش می‌شوند، پس از اینکه همه فیلترها اعمال شدند؛ بنابراین تمامی تنظیمات درون این گروه‌ها می‌توانند بازنویسی شوند.

-f filter

نمایش پیکربندی منطبق برای شرط filter مشخص‌شده. رشته گزینه filter باید به صورت جفتِ name = value داده شود. برای چندین شرط فیلتر، گزینه -f می‌تواند چند بار تکرار شود.

نام‌های ممکن برای filter عبارتند از:

protocol : پروتکل، مانند imap یا pop3

local_name : نام میزبان محلی برای تطبیق TLS SNI، مانند mail.example.com.

این مورد با فیلترهایی مطابقت دارد که بدین صورت پیکربندی شده‌اند:

local_name mail.example.com { # special settings }

local : نام میزبان محلی یا نشانی IP.

این مورد با فیلترهایی مطابقت دارد که بدین صورت پیکربندی شده‌اند:

local 1.2.3.0/24 { # special settings }

remote : نام میزبان کارخواه (کلاینت) یا نشانی IP آن.

این مورد با فیلترهایی مطابقت دارد که بدین صورت پیکربندی شده‌اند:

remote 1.2.3.0/24 { # special settings }

-h

پنهان کردن نام تنظیم و تنها نمایش مقدار آن.

-I

TODO (برون‌ریزی config import).

-n

تنها نمایش تنظیماتی با مقادیر غیر پیش‌فرض. در صورتی که هیچ پارامتر دیگری مشخص نشود، این رفتار پیش‌فرض است.

-N

نمایش تنظیمات با مقادیر غیر پیش‌فرض و مقادیر پیش‌فرضی که به صراحت مقداردهی شده‌اند.

-s

نمایش تنظیمات پنهان. تنظیمات پنهان به طور معمول نباید تغییر داده شوند.

-P

نمایش گذرواژه‌ها و سایر مقادیر حساس.

-U

نادیده‌گرفتن تمام تنظیمات ناشناخته در فایل پیکربندی.

-w

TODO (پنهان‌کردن هشدارهای منسوخ‌شده).

-x

بسط متغیرهای پیکربندی (مانند $ENV:foo) و نمایش محتویات فایل (به‌عنوان مثال از ssl_server_key_password = </etc/ssl/password.txt).

section_name

نمایش تنها پیکربندی فعلیِ یک یا چند بخش مشخص‌شده.

setting_name

نمایش تنظیماتِ یک یا چند setting_name با مقدار پیکربندی‌شدهٔ فعلی. می‌توانید یک تنظیم در داخل یک بخش را با استفاده از / به عنوان جداکنندهٔ بخش نمایش دهید، مانند service/imap/executable.

نمایش تنها تنظیماتی که مقادیر غیرپیش‌فرض دارند (رفتار پیش‌فرض):

doveconf -n

نمایش تمامی تنظیمات همراه با مقادیر پیش‌فرض آن‌ها:

doveconf -ad

نمایش محتویات یک گروه تنظیمات پیش‌فرض:

doveconf -d @mailbox_defaults/english

هنگامی که Dovecot برای استفاده از تنظیمات مختلف برای برخی شبکه‌ها/زیرشبکه‌ها پیکربندی شده باشد، می‌توان مشاهده کرد که کدام تنظیمات برای یک اتصال مشخص اعمال خواهند شد.

doveconf -f local=10.0.0.110 -f remote=10.11.1.2 -f protocol=pop3 -n

استعلام یک تنظیم سراسری از doveconf:

doveconf mail_plugins
mail_plugins = quota

استعلام یک تنظیم ویژهٔ پروتکل از doveconf. استفاده از گزینهٔ -h به منظور پنهان کردن نام تنظیم:

doveconf -h -f protocol=imap login_greeting
Dovecot ready.

تخلیهٔ کامل یک بخش از پیکربندی:

doveconf service
service imap {
  ...
}
service pop3 {
  ...
}

یا تنها تخلیهٔ سرویس imap:

doveconf service/imap
service imap {
  ...
}

گزارش باگ‌ها را به همراه خروجی doveconf -n به فهرست پستی Dovecot به نشانی ⟨dovecot@dovecot.org⟩ ارسال کنید. اطلاعات مربوط به گزارش باگ‌ها در این نشانی در دسترس است: ⟨https://dovecot.org/bugreport.html⟩

doveadm(1)

May 2026 e5ac02a