" t .TH PROXYMAP 8 "" "" "راهنمای Postfix" .ad .fi .SH "نام (NAME)" proxymap \- سرور پراکسی جدول‌های جستجوی Postfix .SH "خلاصه دستور (SYNOPSIS)" .na .nf \fBproxymap\fR [گزینه‌های عمومی دیمن Postfix] .SH "توضیحات (DESCRIPTION)" .ad .fi سرور \fBproxymap\fR(8) خدمات جستجوی جدول فقط‌خواندنی یا خواندنی-نوشتنی را به فرآیندهای Postfix ارائه می‌دهد. این خدمات به ترتیب با نام‌های سرویس مجزای \fBproxymap\fR و \fBproxywrite\fR پیاده‌سازی شده‌اند. هدف از این خدمات عبارت است از: .IP \(bu غلبه بر محدودیت‌های chroot. برای نمونه، یک سرور SMTP در محیط chroot برای رد نامه‌های مربوط به نشانی‌های محلی ناموجود نیازمند دسترسی به فایل passwd سیستم است، اما نگهداری نسخه‌ای از فایل passwd در زندان chroot کاربردی و عملی نیست. راهکار: .sp .nf local_recipient_maps = proxy:unix:passwd.byname .fi .IP \(bu تجمیع تعداد جدول‌های جستجوی باز از طریق اشتراک‌گذاری یک جدول باز میان چندین فرآیند. برای نمونه، برقراری اتصالات mysql از سوی تک‌تک فرآیندهای دیمن Postfix منجر به خطای "too many connections" می‌شود. راهکار: .sp .nf virtual_alias_maps = proxy:mysql:/etc/postfix/virtual_alias.cf .fi .sp تعداد کل اتصالات با تعداد فرآیندهای سرور proxymap محدود می‌شود. .IP \(bu ارائه قابلیت به‌روزرسانی منفرد (single-updater) برای جدول‌های جستجویی که به‌طور قابل اتکا از چندین نویسنده همزمان پشتیبانی نمی‌کنند (یعنی تمام جدول‌های مبتنی بر فایل که بر پایه \fBlmdb\fR نیستند). .PP سرور \fBproxymap\fR(8) درخواست‌های زیر را پیاده‌سازی می‌کند: .IP "\fBopen\fR \fImaptype:mapname instance\-flags\fR" باز کردن جدول با نوع \fImaptype\fR و نام \fImapname\fR، با پرچم‌های اولیه دیکشنری \fIinstance\-flags\fR. پاسخ شامل پرچم‌های واقعی دیکشنری است (برای نمونه جهت تمایز میان جدول رشته ثابت و جدول عبارات باقاعده). .IP "\fBlookup\fR \fImaptype:mapname instance\-flags request\-flags key\fR" جستجوی داده ذخیره‌شده ذیل کلید درخواستی با استفاده از پرچم‌های دیکشنری در \fIrequest\-flags\fR. پاسخ شامل کد وضعیت تکمیل درخواست، پرچم‌های حاصل، و مقدار نتیجه جستجو است. \fImaptype:mapname\fR و \fIinstance\-flags\fR مشابه درخواست \fBopen\fR هستند. .IP "\fBupdate\fR \fImaptype:mapname instance\-flags request\-flags key value\fR" به‌روزرسانی داده‌های ذخیره‌شده ذیل کلید درخواستی با استفاده از پرچم‌های دیکشنری در \fIrequest\-flags\fR. پاسخ شامل کد وضعیت تکمیل درخواست و پرچم‌های حاصل است. \fImaptype:mapname\fR و \fIinstance\-flags\fR مشابه درخواست \fBopen\fR هستند. .sp جهت پیاده‌سازی نقشه‌های با تک‌به‌روزرسان، محدودیت فرآیند (process limit) را روی 1 در ورودی فایل master.cf برای سرویس \fBproxywrite\fR مشخص نمایید. .sp این درخواست در پُست‌فیکس نسخه 2.5 و بالاتر پشتیبانی می‌شود. .IP "\fBdelete\fR \fImaptype:mapname instance\-flags request\-flags key\fR" حذف داده‌های ذخیره‌شده ذیل کلید درخواستی، با استفاده از پرچم‌های دیکشنری در \fIrequest\-flags\fR. پاسخ شامل کد وضعیت تکمیل درخواست و پرچم‌های حاصل است. \fImaptype:mapname\fR و \fIinstance\-flags\fR مشابه درخواست \fBopen\fR هستند. .sp این درخواست در پُست‌فیکس نسخه 2.5 و بالاتر پشتیبانی می‌شود. .IP "\fBsequence\fR \fImaptype:mapname instance\-flags request\-flags function\fR" پیمایش روی پایگاه‌داده مشخص‌شده با استفاده از پرچم‌های دیکشنری در \fIrequest\-flags\fR. آرگومان \fIfunction\fR برابر DICT_SEQ_FUN_FIRST یا DICT_SEQ_FUN_NEXT است. پاسخ شامل کد وضعیت تکمیل درخواست، پرچم‌های حاصل، و کلید جستجو و مقدار نتیجه در صورت یافت شدن است. \fImaptype:mapname\fR و \fIinstance\-flags\fR مشابه درخواست \fBopen\fR هستند. .sp این درخواست در پُست‌فیکس نسخه 2.9 و بالاتر پشتیبانی می‌شود. .IP "پیاده‌سازی‌نشده: close" هیچ درخواست \fBclose\fR وجود ندارد و هنگام قطع ارتباط کلاینت نیز جدول‌ها به‌طور ضمنی بسته نمی‌شوند. هدف اشتراک‌گذاری جدول‌ها میان چندین فرآیند کلاینت است. به دلیل عدم وجود بستن صریح یا ضمنی، به‌روزرسانی‌ها به اجبار همگام (synchronous) هستند. .PP وضعیت تکمیل درخواست یکی از موارد OK، RETRY، NOKEY (جستجو ناموفق بود چون کلید یافت نشد)، BAD (درخواست ناقص) یا DENY (جدول برای دسترسی خواندن یا به‌روزرسانی پراکسی تأیید نشده است) می‌باشد. .SH "مدیریت فرآیند سرور (SERVER PROCESS MANAGEMENT)" .na .nf .ad .fi سرورهای \fBproxymap\fR(8) تحت کنترل سرور \fBmaster\fR(8) پُست‌فیکس اجرا می‌شوند. هر سرور می‌تواند چندین اتصال همزمان را مدیریت کند. هنگامی که تمامی سرورها در زمان اتصال کلاینت مشغول باشند، \fBmaster\fR(8) فرآیند سرور جدیدی از \fBproxymap\fR(8) ایجاد می‌نماید، به شرط آنکه از سقف فرآیندها فراتر نرود. هر سرور پس از سرویس‌دهی به حداقل \fB\fR کلاینت یا پس از \fB\fR ثانیه زمان بیکاری خاتمه می‌یابد. .SH "امنیت (SECURITY)" .na .nf .ad .fi سرور \fBproxymap\fR(8) تنها جدول‌هایی را باز می‌کند که از طریق پارامترهای پیکربندی \fBproxy_read_maps\fR یا \fBproxy_write_maps\fR تأیید شده باشند، با کاربران تعامل ندارد، و می‌تواند با سطح دسترسی پایین، در محیط chroot یا خارج از آن اجرا شود. با این حال اجرای سرور proxymap در chroot کارایی آن را به شدت محدود می‌کند، زیرا تنها قادر به باز کردن جدول‌های داخل chroot خواهد بود. سرور \fBproxymap\fR(8) یک فرآیند دیمن مورد اعتماد نیست و نباید برای جستجوی اطلاعات حساس نظیر شناسه‌های کاربری یا گروهی یونیکس، نام فایل‌ها/دایرکتوری‌های صندوق پستی یا دستورات خارجی به کار رود. در نسخه 2.2 پُست‌فیکس و بالاتر، کلاینت proxymap درخواست‌های دسترسی به جدول برای مقاصد حساس امنیتی را شناسایی کرده و جدول را مستقیماً باز می‌کند. فایل‌های داده قابل نوشتن توسط پُست‌فیکس باید در یک دایرکتوری اختصاصی ذخیره شوند که تنها برای سیستم پستی پُست‌فیکس قابل نوشتن باشد، مانند \fBdata_directory\fR متعلق به پُست‌فیکس. به‌ویژه، فایل‌های قابل نوشتن توسط پُست‌فیکس هرگز نباید در دایرکتوری‌های متعلق به root قرار گیرند. .SH "عیب‌یابی (DIAGNOSTICS)" .ad .fi مشکلات و تراکنش‌ها در \fBsyslogd\fR(8) یا \fBpostlogd\fR(8) ثبت می‌شوند. .SH "اشکالات (BUGS)" .ad .fi سرور \fBproxymap\fR(8) به چندین کلاینت خدمات ارائه می‌دهد و بنابراین نباید برای جدول‌هایی با تأخیر جستجوی بالا به کار گرفته شود. سرویس خواندنی-نوشتنی \fBproxymap\fR(8) به صراحت جدول‌های جستجو را نمی‌بندد (حتی اگر می‌بست نیز نمی‌شد به آن اتکا کرد، چرا که ممکن است فرآیند میان به‌روزرسانی‌های جدول خاتمه یابد). بنابراین سرویس خواندنی-نوشتنی نباید برای جدول‌هایی به کار رود که ذخیره‌سازی پایدار را میان به‌روزرسانی‌ها در وضعیت ناسازگار رها می‌کنند (برای نمونه CDB). جدول‌هایی که از "همگام‌سازی در زمان به‌روزرسانی (sync on update)" پشتیبانی می‌کنند باید ایمن باشند (مانند Berkeley DB)، همان‌طور که جدول‌های پیاده‌سازی‌شده با یک پایگاه‌داده واقعی (DBMS) ایمن هستند. .SH "پارامترهای پیکربندی (CONFIGURATION PARAMETERS)" .na .nf .ad .fi در سیستم‌های پستی شلوغ ممکن است زمان زیادی بگذرد تا تغییرات مربوط به \fBproxymap\fR(8) در \fBmain.cf\fR اعمال شوند. برای تسریع این امر از دستور "\fBpostfix reload\fR" استفاده کنید. متن زیر تنها خلاصه‌ای از پارامترها را ارائه می‌دهد. برای جزئیات بیشتر شامل مثال‌ها به \fBpostconf\fR(5) مراجعه فرمایید. .IP "\fBconfig_directory (خروجی 'postconf -d' را ببینید)\fR" مکان پیش‌فرض فایل‌های پیکربندی main.cf و master.cf پُست‌فیکس. .IP "\fBdata_directory (خروجی 'postconf -d' را ببینید)\fR" دایرکتوری فایل‌های داده قابل نوشتن توسط پُست‌فیکس (مانند کش‌ها، اعداد شبه‌تصادفی). .IP "\fBdaemon_timeout (18000s)\fR" حداکثر زمانی که فرآیند دیمن پُست‌فیکس می‌تواند صرف رسیدگی به یک درخواست کند پیش از آنکه توسط تایمر دیده‌بان داخلی خاتمه داده شود. .IP "\fBipc_timeout (3600s)\fR" مهلت زمانی برای ارسال یا دریافت اطلاعات روی کانال ارتباطی داخلی. .IP "\fBmax_idle (100s)\fR" حداکثر مدت زمانی که فرآیند دیمن بیکار پُست‌فیکس در انتظار اتصال ورودی می‌ماند پیش از آنکه داوطلبانه خاتمه یابد. .IP "\fBmax_use (100)\fR" حداکثر تعداد اتصالات ورودی که فرآیند دیمن پُست‌فیکس پیش از خروج داوطلبانه سرویس‌دهی می‌کند. .IP "\fBprocess_id (فقط‌خواندنی)\fR" شناسه فرآیند (PID) دستور یا دیمن پُست‌فیکس. .IP "\fBprocess_name (فقط‌خواندنی)\fR" نام فرآیند دستور یا دیمن پُست‌فیکس. .IP "\fBproxy_read_maps (خروجی 'postconf -d' را ببینید)\fR" جدول‌های جستجویی که سرور \fBproxymap\fR(8) مجاز به دسترسی به آن‌ها برای سرویس فقط‌خواندنی است. .PP موجود در Postfix 2.5 و بالاتر: .IP "\fBproxy_write_maps (خروجی 'postconf -d' را ببینید)\fR" جدول‌های جستجویی که سرور \fBproxymap\fR(8) مجاز به دسترسی به آن‌ها برای سرویس خواندنی-نوشتنی است. .PP موجود در Postfix 3.3 و بالاتر: .IP "\fBservice_name (فقط‌خواندنی)\fR" نام سرویس master.cf برای یک فرآیند دیمن Postfix. .SH "همچنین ببینید (SEE ALSO)" .na .nf postconf(5), پارامترهای پیکربندی master(5), گزینه‌های عمومی دیمن .SH "فایل‌های راهنما (README FILES)" .na .nf .ad .fi برای یافتن این اطلاعات از "\fBpostconf readme_directory\fR" یا "\fBpostconf html_directory\fR" استفاده کنید. .na .nf DATABASE_README, مروری بر جدول‌های جستجوی Postfix .SH "مجوز (LICENSE)" .na .nf .ad .fi مجوز Secure Mailer باید همراه با این نرم‌افزار توزیع شود. .SH "تاریخچه (HISTORY)" .ad .fi سرویس proxymap در Postfix نسخه 2.0 معرفی گردید. .SH "نویسندگان (AUTHORS)" .na .nf Wietse Venema IBM T.J. Watson Research P.O. Box 704 Yorktown Heights, NY 10598, USA Wietse Venema Google, Inc. 111 8th Avenue New York, NY 10011, USA Wietse Venema porcupine.org