لقد قمت بتطبيق تصفية valid_recipients عبر postfix/valid_recipients وقمت بملء /etc/postfix/valid_recipients. منذ ذلك الحين، أرى تحذيرات متكررة ومحاولات اتصال واردة كل ~6 دقائق. إليك جزء مُنظف من السجل الخاص بي.
مخرجات السجل الدقيقة
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: warning: /etc/postfix/valid_recipients, line 1: expected format: key whitespace value -- ignoring this line
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: warning: /etc/postfix/valid_recipients, line 2: expected format: key whitespace value -- ignoring this line
...
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: warning: /etc/postfix/valid_recipients, line 16: expected format: key whitespace value -- ignoring this line
تظهر هذه التحذيرات كل بضع دقائق، وتتماشى مع محاولات الاتصال المتكررة غير المصادق عليها مثل:
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: warning: hostname unassigned.quadranet.com does not resolve to address 198.55.98.3
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: connect from unknown[198.55.98.3]
Jul 23 05:13:40 ubuntu-mail-receiver postfix/smtpd[2265]: disconnect from unknown[198.55.98.3] ehlo=1 auth=0/1 quit=1 commands=2/3
يتكرر هذا النمط نفسه من 198.55.98.3 عبر عشرات الدورات طوال الساعة.
البريد الشرعي يمر
فقط للتأكيد، عمليات التسليم الشرعية (مثل من Microsoft 365) تعمل:
البحث عن: هل من الضروري أو الموصى به تعديل main.cf يدويًا عند تطبيق ملف valid_recipients لقيود المستلمين في حاوية Discourse mail-receiver؟ هل يجب تحرير main.cf مباشرة، أم أن جميع التغييرات الموصى بها تتم معالجتها بواسطة متغيرات بيئة docker أو إعدادات launcher yml لإعدادات Discourse mail-receiver؟
يقوم Docker/launcher بتطبيق هذه الإعدادات بشكل صحيح عند بدء تشغيل الحاوية، وحقنها في Postfix دون الحاجة إلى تعديل الملفات مباشرة.
قد يتسبب تعديل main.cf مباشرة في حدوث تعارضات أو قد يتم استبداله عند إعادة بناء الحاوية. كما أنه من السهل كسر الأشياء (مثل تنسيق الملف أو تعيين المستلمين) بهذه الطريقة.
بخصوص خطأك:
التحذيرات التي تراها:
warning: /etc/postfix/valid_recipients, line 1: expected format: key whitespace value -- ignoring this line
تنتج عن تنسيق غير صحيح لملف valid_recipients - وليس عن كيفية تعيين التكوين (env مقابل main.cf). تأكد من أن إدخالاتك تبدو كالتالي:
alloweduser@yourdomain.com OK
another@yourdomain.com OK
default REJECT
لا توجد نقاط أو علامات يساوي أو فواصل - فقط العنوان، مسافة بيضاء، و OK (أو REJECT).
لا تقم بتعديلmain.cf إلا إذا كان لديك تكوين مخصص متقدم للغاية وتفهم تمامًا ما تفعله.
تتم جميع التعليمات العادية (بما في ذلك تصفية المستلمين والمرسلين الصالحين) عن طريق تعيين متغيرات البيئة في mail-receiver.yml.
ملخص:
لا تحتاج إلى لمس main.cf لإعدادات Discourse mail-receiver القياسية. متغيرات البيئة في yml هي الطريقة الموصى بها والمدعومة. بالنسبة لخرائط المستلمين، استخدم دائمًا تنسيقات hash/texthash الصحيحة وصيغة الملف الصحيحة.
في الواقع، لقد قمت بإزالة التكوين المخصص بالكامل، والتكوين الموصوف هنا، واختبار البريد الخاص بي سار على ما يرام.
تم اكتشاف بنية x86_64.
جارٍ التأكد من تحديث المشغل
جارٍ جلب الأصل
المشغل محدث
جارٍ إيقاف الحاوية القديمة
+ /usr/bin/docker stop -t 600 mail-receiver
mail-receiver
release: جارٍ سحب من discourse/mail-receiver
Digest: sha256:2a0d45bb92a783c846a821e635413764eeadb3441ef6190085545a4[تم حذف 9 أرقام]
Status: الصورة محدثة لـ discourse/mail-receiver:release
docker.io/discourse/mail-receiver:release
ERROR: لا يمكن العثور على ملف مكتبة Ruby أو مكتبة مشتركة pups
cd /pups && /pups/bin/pups --stdin
/bin/bash: تحذير: setlocale: LC_ALL: لا يمكن تغيير اللغة (en_US.UTF-8)
sha256:[تم حذف 6 أرقام]69734d779a95ec83c7103dc2fc04f1d690ebde62[تم حذف 18 رقمًا]
[مفتاح API بحجم 64 حرفًا؟ تم حذفه]
جارٍ إزالة الحاوية القديمة
+ /usr/bin/docker rm mail-receiver
mail-receiver
+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e LC_ALL=en_US.UTF-8 -e LANGUAGE=en_US.UTF-8 -e MAIL_DOMAIN=discourse. MYDOMAINNAME.com -e DISCOURSE_BASE_URL=https:// MYDOMAINNAME.com -e DISCOURSE_API_KEY=[مفتاح API بحجم 64 رقمًا محذوف] -e DISCOURSE_API_USERNAME=system -h ubuntu-mail-receiver -e DOCKER_HOST_IP=172.17.0.1 --name mail-receiver -t -p 25:25 -v /var/discourse/shared/mail-receiver/postfix-spool:/var/spool/postfix --mac-address [عنوان MAC محذوف] local_discourse/mail-receiver /sbin/boot
[مفتاح API بحجم 64 رقمًا؟ محذوف]
root@ubuntu:/var/discourse# ./launcher logs mail-receiver
تم اكتشاف بنية x86_64.
/bin/bash: تحذير: setlocale: LC_ALL: لا يمكن تغيير اللغة (en_US.UTF-8)
بيئة التشغيل:
HOSTNAME=ubuntu-mail-receiver
LANGUAGE=en_US.UTF-8
MAIL_DOMAIN=discourse.MYDOMAINNAME.com
DOCKER_HOST_IP=172.17.0.1
PWD=/
DISCOURSE_BASE_URL=https:// MYDOMAINNAME.com
HOME=/root
LANG=en_US.UTF-8
TERM=xterm
SHLVL=1
DISCOURSE_API_USERNAME=system
LC_ALL=en_US.UTF-8
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
INCLUDE_DMARC=true
DISCOURSE_API_KEY=[مفتاح API بحجم 64 رقمًا محذوف]
_=/usr/bin/env
جارٍ تسليم البريد المرسل إلى discourse. MYDOMAINNAME.com إلى Discourse
جارٍ بدء OpenDKIM...
perl: تحذير: فشل تعيين اللغة.
perl: تحذير: يرجى التحقق من إعدادات اللغة الخاصة بك:
LANGUAGE = "en_US.UTF-8"،
LC_ALL = "en_US.UTF-8"،
LANG = "en_US.UTF-8"
مدعومة ومثبتة على نظامك.
perl: تحذير: العودة إلى اللغة القياسية ("C").
جارٍ إضافة المستخدم 'postfix' إلى المجموعة 'opendkim'...
<86>Jul 23 13:27:19 usermod[16]: add 'postfix' to group 'opendkim'<86>Jul 23 13:27:19 usermod[16]: add 'postfix' to shadow group 'opendkim'تم.
جارٍ بدء OpenDMARC...
perl: تحذير: فشل تعيين اللغة.
perl: تحذير: يرجى التحقق من إعدادات اللغة الخاصة بك:
LANGUAGE = "en_US.UTF-8"،
LC_ALL = "en_US.UTF-8"،
LANG = "en_US.UTF-8"
مدعومة ومثبتة على نظامك.
perl: تحذير: العودة إلى اللغة القياسية ("C").
<22>Jul 23 13:27:19 opendkim[24]: OpenDKIM Filter v2.11.0 starting (args: -x /etc/opendkim.conf)جارٍ إضافة المستخدم 'postfix' إلى المجموعة 'opendmarc'...
<86>Jul 23 13:27:19 usermod[31]: add 'postfix' to group 'opendmarc'<86>Jul 23 13:27:19 usermod[31]: add 'postfix' to shadow group 'opendmarc'تم.
<22>Jul 23 13:27:19 opendmarc[39]: OpenDMARC Filter v1.4.2 starting (args: -c /etc/opendmarc.conf)<22>Jul 23 13:27:19 opendmarc[39]: additional trusted authentication services: (none)postfix: Postfix is using backwards-compatible default settings
Jul 23 13:27:19 ubuntu-mail-receiver postfix[51]: Postfix is using backwards-compatible default settings
postfix: See http://www.postfix.org/COMPATIBILITY_README.html for details
Jul 23 13:27:19 ubuntu-mail-receiver postfix[51]: See http://www.postfix.org/COMPATIBILITY_README.html for details
postfix: To disable backwards compatibility use "postconf compatibility_level=3.6" and "postfix reload"
Jul 23 13:27:19 ubuntu-mail-receiver postfix[51]: To disable backwards compatibility use "postconf compatibility_level=3.6" and "postfix reload"
جارٍ بدء Postfix
Jul 23 13:27:19 ubuntu-mail-receiver postfix/master[1]: daemon started -- version 3.7.11, configuration /etc/postfix
Jul 23 13:27:53 ubuntu-mail-receiver postfix/smtpd[122]: connect from mail-il1-f180.google.com[209.85.166.180]
<22>Jul 23 13:27:54 policyd-spf[129]: : prepend Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=209.85.166.180; helo=mail-il1-f180.google.com; envelope-from= person@gmail.com; receiver=discourse. MYDOMAINNAME.com Jul 23 13:27:54 ubuntu-mail-receiver postfix/smtpd[122]: BC6D71BF9C8: client=mail-il1-f180.google.com[209.85.166.180]
Jul 23 13:27:54 ubuntu-mail-receiver postfix/cleanup[130]: BC6D71BF9C8: message-id=<CWXP1[تم حذف 8 أرقام]81B627937FA7F4B2CE65A15FA@CWXP123MB2918.GBRP123.PROD.OUTLOOK.COM>
<22>Jul 23 13:27:55 opendkim[24]: BC6D71BF9C8: DKIM verification successful<22>Jul 23 13:27:55 opendkim[24]: BC6D71BF9C8: s=20230601 d=gmail.com a=rsa-sha256 SSL<22>Jul 23 13:27:55 opendmarc[39]: implicit authentication service: ubuntu-mail-receiver.localdomain<22>Jul 23 13:27:55 opendmarc[39]: BC6D71BF9C8: gmail.com passJul 23 13:27:55 ubuntu-mail-receiver postfix/qmgr[120]: BC6D71BF9C8: from=<person@gmail.com>, size=75533, nrcpt=1 (queue active)
Jul 23 13:27:55 ubuntu-mail-receiver postfix/smtpd[122]: disconnect from mail-il1-f180.google.com[209.85.166.180] ehlo=1 mail=1 rcpt=1 bdat=2 quit=1 commands=6
<23>Jul 23 13:27:55 receive-mail[133]: Recipient: person.REDACTED@discourse. MYDOMAINNAME.comJul 23 13:27:55 ubuntu-mail-receiver postfix/pipe[132]: BC6D71BF9C8: to=< person.REDACTED@discourse. MYDOMAINNAME.com>, relay=discourse, delay=1.8, delays=1.6/0.01/0/0.22, dsn=2.0.0, status=sent (delivered via discourse service)
Jul 23 13:27:55 ubuntu-mail-receiver postfix/qmgr[120]: BC6D71BF9C8: removed