Score:0

Procmail ไม่ตีกลับอีเมล

ธง tr

ฉันมีที่อยู่อีเมลที่รับทั้งหมดสำหรับโดเมนของฉัน แต่ฉันต้องการบล็อกบางที่อยู่ไม่ให้รับจดหมาย ก่อนหน้านี้ฉันทำสิ่งนี้:

:0
* ^(X-Original-To): [email protected]
/dev/null

วิธีนี้ใช้ได้ดี อย่างไรก็ตาม อีเมลจะถูกละเว้นอย่างเงียบๆ ฉันต้องการให้จดหมายตีกลับถูกส่งกลับไปยังผู้ส่งเพื่อให้พวกเขารู้ว่ากำลังถูกปฏิเสธ ฉันใช้รหัสที่คล้ายกันกับ นี้ คำตอบ:

:0
* ^(X-Original-To): [email protected]
{ EXITCODE=67 โฮสต์= }

อย่างไรก็ตาม ขณะนี้อีเมลกำลังถูกส่งและไม่มีจดหมายตีกลับ

tripleee avatar
ar flag
จริง ๆ ด้วยการพิมพ์ผิดใน `EXITCODE`? คุณจะเรียกใช้ Procmail ได้อย่างไร MTA ใด ฯลฯ คุณมีตัวอย่างบันทึกการนำส่งของ Procmail หรือไม่
tripleee avatar
ar flag
สูตรนี้อยู่ใน `.procmailrc` ส่วนตัวของคุณหรือใน `/etc/procmailrc` หรือไม่
tr flag
@tripleee ฉันไม่รู้ว่าพิมพ์ผิดเข้าไปได้ยังไง ไม่มีปัญหาในไฟล์ ดังนั้นฉันต้องกดปุ่มหรืออะไรบางอย่างหลังจากวางลงในนี้ นอกจากนี้ สูตรนี้อยู่ในไฟล์ `.procmailrc` ของผู้ใช้
tripleee avatar
ar flag
คุณยังประสบปัญหานี้อยู่หรือไม่? หากเป็นเช่นนั้น โปรดพิจารณา [แก้ไข] เพื่อให้รายละเอียดเพิ่มเติม หรือโพสต์คำตอบของคุณเองเพื่ออธิบายวิธีแก้ไข ในรูปแบบปัจจุบัน การดำเนินการนี้ไม่น่าจะช่วยผู้เข้าชมในอนาคตได้ และควรปิดอย่างง่ายๆ เนื่องจากไม่สามารถทำซ้ำได้
Score:1
ธง ar

นอกจากการพิมพ์ผิดอย่างเห็นได้ชัดในความพยายามของคุณแล้ว ตัวอย่างของคุณยังใช้ได้ถ้าฉันใส่สูตรอาหารลงในส่วนตัวของฉัน .procmailrc.

นี่คือการสาธิตอย่างรวดเร็วบน Ubuntu ในคอนเทนเนอร์ Docker ใหม่ที่ฉันติดตั้ง Postfix, Procmail และ Netcat และสร้างบัญชีผู้ใช้สำหรับตัวเอง:

tripleee@0934b6a257c9:~$แมว >.procmailrc
LOGFILE=/tmp/procmail.log

:0
* ^(X-Original-To): [email protected]
{ EXITCODE=67 โฮสต์= }
^D
tripleee@0934b6a257c9:~$ nc localhost 25
220 0934b6a257c9 ESMTP Postfix (อูบุนตู)
ehlo localhost
250-0934b6a257c9
250-การวางท่อ
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-ดีเอสเอ็น
250-SMTPUTF8
250 ชิ้น
จดหมายจาก:<tripleee>
250 2.1.0 โอเค
rcpt ไปที่:<tripleee>
250 2.1.5 โอเค
ข้อมูล
354 สิ้นสุดข้อมูลด้วย <CR><LF>.<CR><LF>
X-Original-To: [email protected]
หัวเรื่อง: อันดับแรก

ใครเป็นคนแรก
.
250 2.0.0 ตกลง: เข้าคิวเป็น 608C329A304
ล้มเลิก
221 2.0.0 ลาก่อน
^ซี
tripleee@0934b6a257c9:~$ cat /tmp/procmail.log 
จาก tripleee@0934b6a257c9 ศ. 4 มี.ค. 11:50:59 น. 2565
 หัวเรื่อง: อันดับแรก
  โฟลเดอร์: 0
จาก MAILER-DAEMON วันศุกร์ที่ 4 มีนาคม 11:50:59 น. 2022
 เรื่อง: จดหมายที่ไม่ได้ส่งถูกส่งกลับถึงผู้ส่ง
  โฟลเดอร์: /var/mail/tripleee 2267

แต่สูตรเดียวกัน /etc/procmailrc ทำให้ข้อความถูกส่งต่อไป โดยพื้นฐานแล้ว โฮสต์= บอกว่าข้าม ปัจจุบัน ไฟล์สูตร แต่ใน /etc/procmailrcนั่นหมายถึงหยุดอ่านไฟล์นี้และดำเนินการส่งให้กับผู้ใช้

ฉันสามารถคาดเดาได้ว่านั่นคือปัญหาจริงที่คุณกำลังประสบอยู่ หากคุณมีรายละเอียดเพิ่มเติม โปรดแก้ไขคำถามของคุณเพื่อระบุ

นอกจากนี้ วงเล็บยังไม่จำเป็น และควรหลีกเลี่ยงจุด

:0
* ^X-Original-To: username@example\.com
{ EXITCODE=67 โฮสต์= }

หากคุณเปิดใช้งานการบันทึกแบบละเอียดด้วย VERBOSE=ใช่ คุณจะเห็นว่า Procmail มอบหมายจริง โฮสต์=} ซึ่งไม่ใช่สิ่งที่ฉันคาดหวัง แต่ใช้งานได้ (ตราบใดที่คุณ เจ้าภาพ ไม่ได้ชื่อจริงๆ }!)

โปรดสังเกตว่าไฟล์บันทึกแสดงข้อความขาเข้าที่ถูกละทิ้งอย่างไร จากนั้นข้อความตีกลับถูกส่งถึงฉัน (เนื่องจากฉันเป็นผู้ส่งและผู้รับ) อย่างไรก็ตาม ข้อความตีกลับที่สร้างขึ้นมีข้อความที่ (คลุมเครือ) เผยให้เห็นว่าที่อยู่ผู้รับมีอยู่จริง:

<tripleee@0934b6a257c9> (ขยายจาก <tripleee>): ไม่ทราบผู้ใช้

คุณอาจต้องคุ้นเคยกับข้อความตีกลับของ Postfix เป็นอย่างดีจึงจะเข้าใจว่าสิ่งนี้หมายถึงอะไร โดยทั่วไปจะบอกว่ามันขยายตัว ทริปเปิ้ล ไปยังที่อยู่อีเมลที่ขยายเต็มพร้อมชื่อโดเมนรวมอยู่ด้วย จากนั้นส่งไปยังที่อยู่อีเมลนั้นทำให้เกิดข้อความแสดงข้อผิดพลาดทางด้านขวาของเครื่องหมายทวิภาค (ไม่ว่าจะดีขึ้นหรือแย่ลง ข้อความตีกลับของ Sendmail ก็ยังดูคลุมเครือมากกว่า แต่ผู้เชี่ยวชาญตัวจริงของข้อความแสดงข้อผิดพลาดที่ไม่สามารถเข้าใจได้ก็คือ Microsoft เช่นเคย)

tripleee avatar
ar flag
และขออภัยที่คำตอบก่อนหน้านี้ไม่ชัดเจนเล็กน้อยในรายละเอียดนี้ ฉันได้อัปเดตแล้ว
tr flag
คำตอบที่อธิบายได้มาก แต่มันอยู่ในไฟล์ `.procmailrc` ของฉัน ดังนั้นฉันไม่คิดว่ามันจะใช้ได้กับฉัน บางทีฉันอาจต้องพยายามเปิดใช้การบันทึกเมื่อคุณมีที่นี่ และดูว่ามีอะไรปรากฏขึ้น
tripleee avatar
ar flag
อาจดู https://www.iki.fi/era/mail/procmail-debug.html ด้วย
tripleee avatar
ar flag
... และ `sendmail -v` หากคุณไม่สะดวกที่จะพูด SMTP ดิบกับเมลเซิร์ฟเวอร์ด้วยตัวเอง

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา