نصب و پیکربندی Postfix برای ارسال ایمیل - قسمت ۸ - بررسی لاگها و عیبیابی پیشرفته
نویسنده: وحید نصیری
تاریخ: ۱۴۰۴/۰۴/۲۲ ۰۸:۱۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
/var/log/mail.log قلب تپنده سیستم ایمیل ماست. تمام اتفاقات در این فایل ثبت میشود. بیایید یاد بگیریم چگونه اطلاعات مفید را از آن استخراج کنیم.grep، میتوانید تمام مراحل پردازش آن ایمیل را دنبال کنید.# فرض کنید شناسه ایمیل مورد نظر A1B2C3D4E5 است sudo grep 'A1B2C3D4E5' /var/log/mail.log
status=sent: موفقیت! ایمیل با موفقیت به سرور مقصد تحویل داده شده است.status=deferred: تعویق افتاده. این یک خطای موقتی است. Postfix نتوانسته در تلاش اول ایمیل را تحویل دهد، اما در آینده دوباره تلاش خواهد کرد. دلایل رایج عبارتند از:status=deferred (host gmail-smtp-in.l.google.com[...]: Connection timed out)status=bounced: برگشت خورده. این یک خطای دائمی است. Postfix ارسال ایمیل را متوقف کرده و آن را برگشت خورده تلقی میکند. دلایل رایج:User unknown).Host or domain name not found).PTR یا SPF) رد شده است.status=bounced (host example.com[...]: 550 5.1.1journald (سیستم مدیریت لاگ systemd) آنها را ثبت میکند. برای مشاهده این لاگها از دستور journalctl استفاده میکنیم.sudo journalctl -u opendkim -f
-u opendkim: مشخص میکند که فقط لاگهای مربوط به سرویس opendkim را میخواهیم.-f: لاگها را به صورت زنده دنبال میکند (مشابه tail -f).key not found in table: سرویس نتوانسته کلید مناسب را برای امضای ایمیل پیدا کند (مشکل در فایل SigningTable یا KeyTable).can't load key from /etc/postfix/dkim/mail.private: سرویس به دلیل مشکل در مجوزها یا مسیر فایل، نتوانسته کلید خصوصی را بارگذاری کند.mailq)postqueue -p است.mailq
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
A1B2C3D4E5 350 Tue Jul 1 10:20:15 sender@yourdomain.com
(host mx.example.org[...]: Connection refused)
recipient@example.orgA1B2C3D4E5 به دلیل رد شدن اتصال، در صف گیر کرده است.postcat)postcat به همراه شناسه صف استفاده کنید.sudo postcat -q A1B2C3D4E5
postfix flush)sudo postfix flush
postqueue -f است.postsuper)# حذف یک ایمیل خاص sudo postsuper -d A1B2C3D4E5 # حذف تمام ایمیلهای در حالت تعویق (deferred) # !!! با احتیاط فراوان استفاده شود !!! sudo postsuper -d ALL deferred