تعیین لیست الیاس Alias در سیستم Postfix برای ارسال و یا دریافت ایمیل با استفاده از پایگاه داده Postgresql
گاهی نیاز است که فهرست ایمیل‌ها را در یک پایگاه داده ذخیره کنید و بعد با استفاده از یک کوئری فهرست ایمیل‌ها را تعیین کنید. پست فیکس به گونه‌ای طراحی شده که شما داده‌های خود را در پایگاه داده ذخیره کنید. در این بلاگ به شما نشان می‌دهیم چطور بخشی از داده‌های خود را در پایگاه داده ذخیره و در postfix استفاده کنید.
31 دسامبر, 2023 به وسیله
تعیین لیست الیاس Alias در سیستم Postfix برای ارسال و یا دریافت ایمیل با استفاده از پایگاه داده Postgresql
ویراوب ۱۲۳, مصطفی برمشوری
| No comments yet

 

`

افزونه Postfix pgsql به شما امکان می دهد Postfix را به پایگاه داده PostgreSQL متصل کنید. این پیاده سازی استفاده از چندین پایگاه داده pgsql را امکان پذیر می کند: در صورت تمایل می توانید از یک پایگاه داده برای جدول مجازی، یک پایگاه دیگر برای جدول دسترسی و پایگاه دیگری برای جدول مستعار استفاده کنید. شما می توانید چندین سرور را برای یک پایگاه داده مشخص کنید، به طوری که Postfix بتواند در صورت خراب شدن یکی از سرورهای پایگاه داده، به یک سرور پایگاه داده خوب سوئیچ کند.

سرورهای ارسال ایمیل که لود بالایی در ارسال ودریافت ایمیل دارند زمانی که از نقشه های pgsql استفاده می‌کنند و در نتیجه تعداد زیادی کلاینت pgsql همزمان تولید می کنند و این باعث کم شدن کارایی پایگاه داده می‌شود. بنابراین سرور(های) pgsql باید با در نظر گرفتن این واقعیت طراحی و پیکره بندی شوند.

البته راه جای گزین استفاده از proxymap است. با استفاده از سرویس Postfix proxymap می توانید تعداد کلاینت های همزمان pgsql را کاهش دهید.

اگر می خواهید از این دو افزونه استفاده کنید می‌بایست آنها را زمان کامپایل پست فیکس فعال کنید یا اینکه در سیستم‌های عاملی مثل Ubuntu ماژول معادل را نصب کنید. در ادامه ما فرض می‌کنیم که این ماژولها را نصب کرده‌اید.

پیکره بندی جدول جستجوی در پایگاه داده postgresql

هنگامی که Postfix با پشتیبانی pgsql و proxymap نصب شده باشد، می‌توانید یک نوع نقشه را در main.cf به این صورت مشخص کنید:

/etc/postfix/main.cf:
alias_maps = proxy:pgsql:/etc/postfix/pgsql-aliases.cf

فایل /etc/postfix/pgsql-aliases.cf اطلاعات زیادی را مشخص می کند که به postfix می گوید چگونه به پایگاه داده pgsql ارجاع دهد. برای توضیحات کامل، صفحه راهنمای pgsql_table را ببینید. در این تنظیم‌ها ما از proxymap استفاده کرده‌ایم تا کارایی بالایی داشته باشد.

مثال: نام مستعار محلی

حالا می‌توانیم با استفاده از یک فایل پیکره بندی فهرست نام‌های مستعار محلی را استخراج کنیم و از آنها در پستفیک استفاده کنیم. نمونه فایل زیر

#
# pgsql config file for local(8) aliases(5) lookups
#
#
# The hosts that Postfix will try to connect to
hosts = host1.some.domain host2.some.domain
# The user name and password to log into the pgsql server.
user = someone
password = some_password
# The database name on the servers.
dbname = customer_database
# Postfix 2.2 and later The SQL query template. See pgsql_table(5).
query = SELECT forw_addr FROM mxaliases WHERE alias='%s' AND status='paid'
# For Postfix releases prior to 2.2. See pgsql_table(5) for details.
select_field = forw_addr
table = mxaliases
where_field = alias
# Don't forget the leading "AND"!
additional_conditions = AND status = 'paid'

همه چیز آماده است!!

نتیجه: اتصال پایگاه داده به postfix

با اضافه کردن دو افزونه pgsql , proxymap با کارایی بالایی می‌توانید فهرست نام‌های مستعار برای ایمیل را از پایگاه داده استخراج کنید.


تعیین لیست الیاس Alias در سیستم Postfix برای ارسال و یا دریافت ایمیل با استفاده از پایگاه داده Postgresql
ویراوب ۱۲۳, مصطفی برمشوری 31 دسامبر, 2023
این پست را به اشتراک بگذارید
برچسب ها
بایگانی
ورود to leave a comment