อีเมลเริ่มเด้งกลับ ไฟร์วอลล์ของพาร์ตเนอร์หยุดตอบ หรือเว็บไซต์แสดงกำแพง captcha ให้เซิร์ฟเวอร์ของคุณ มีคนบอกว่า “IP ของคุณติดแบล็กลิสต์” และสัญชาตญาณแรกคือขอ IP ใหม่ ซึ่งมักเป็นก้าวแรกที่ผิด นี่คือวิธีหาว่าเกิดอะไรขึ้นจริง ๆ ภายในราวห้านาที และอะไรที่แก้ได้อย่างถาวร
“บล็อกลิสต์” คืออะไรกันแน่
คำนี้ครอบคลุมสามเรื่องที่ต่างกัน และแต่ละเรื่องแก้ด้วยวิธีที่ต่างกัน
- บล็อกลิสต์ DNS (DNSBL) รายชื่อสาธารณะของที่อยู่ที่เคยส่งสแปมหรือแสดงสัญญาณว่าถูกเจาะ เซิร์ฟเวอร์อีเมลจะสอบถามลิสต์เหล่านี้ทุกครั้งที่มีการเชื่อมต่อเข้ามา คำว่า “ติดแบล็กลิสต์” มักหมายถึงแบบนี้ และเป็นแบบที่แก้ได้
- ชื่อเสียงส่วนตัวที่ผู้ให้บริการกล่องจดหมายรายใหญ่ บริการเว็บเมลขนาดใหญ่เก็บคะแนนของตัวเองและไม่เผยแพร่ คุณเห็นผลลัพธ์ (อีเมลเข้าสแปมหรือถูกหน่วง) แต่ไม่มีลิสต์ให้ตรวจ มีเพียงเครื่องมือ postmaster ของพวกเขา
- การจัดประเภทเครือข่าย หลายเว็บไซต์และระบบป้องกันการฉ้อโกงถือว่าที่อยู่ของดาต้าเซ็นเตอร์ทุกที่อยู่เป็น “โฮสติ้ง” แล้วขอการยืนยันหรือบล็อก นี่ไม่ใช่การติดลิสต์และถอดออกไม่ได้ มันบอกเพียงว่าที่อยู่นั้นอยู่ในเครือข่ายประเภทไหน
ส่วนที่เหลือของบทความนี้ส่วนใหญ่พูดถึงแบบแรก เพราะเป็นแบบที่คุณตรวจและแก้เองได้
ลิสต์ที่ควรตรวจ
- Spamhaus เป็นลิสต์ที่เซิร์ฟเวอร์อีเมลส่วนใหญ่ใช้ โซนรวมชื่อ ZEN ประกอบด้วย SBL (แหล่งสแปมที่รู้จัก) XBL (เครื่องที่ติดมัลแวร์หรือถูกใช้ประโยชน์ ป้อนข้อมูลจาก CBL) PBL (ช่วงที่อยู่ที่ไม่ควรส่งอีเมลโดยตรง) และ CSS (สแปมปริมาณน้อยแบบ “snowshoe”)
- Barracuda มีลิสต์ของตัวเอง ซึ่งเกตเวย์อีเมลขององค์กรจำนวนมากใช้
- SpamCop ขึ้นบัญชีที่อยู่ที่ผู้ใช้รายงาน รายการจะหมดอายุเองประมาณ 24 ชั่วโมงหลังรายงานล่าสุด
- UCEPROTECT มีสามระดับ ระดับ 1 เป็นที่อยู่รายตัว และหมดอายุอัตโนมัติหลังเจ็ดวันหากไม่มีสแปมใหม่ ระดับ 2 และ 3 ขึ้นบัญชีทั้งช่วงที่จัดสรรและทั้งเครือข่ายเพราะพฤติกรรมของเพื่อนบ้าน และขายบริการถอดชื่อ “ด่วน” ผู้ให้บริการอีเมลรายใหญ่แทบไม่พึ่งระดับ 2 และ 3
การตรวจ
การสอบถามบล็อกลิสต์ DNS ทำโดยกลับลำดับออกเท็ตของที่อยู่ แล้วค้นหาภายใต้โซนของลิสต์ จากเซิร์ฟเวอร์ Linux ใดก็ได้:
IP=203.0.113.7
REV=$(echo "$IP" | awk -F. '{print $4"."$3"."$2"."$1}')
for BL in zen.spamhaus.org b.barracudacentral.org bl.spamcop.net; do
echo "$BL: $(dig +short "$REV.$BL" A | tr '\n' ' ')"
done
ไม่มีคำตอบหมายความว่าไม่ได้ติดลิสต์ คำตอบในช่วง 127.0.0.x หมายความว่าติดลิสต์ และสำหรับ Spamhaus ตัวเลขสุดท้ายบอกว่าเป็นส่วนไหนของ ZEN:
| คำตอบ | ความหมาย |
|---|---|
127.0.0.2 | SBL: แหล่งสแปมที่รู้จัก |
127.0.0.3 | CSS: สแปมแบบ snowshoe |
127.0.0.4–127.0.0.7 | XBL: เครื่องที่ถูกเจาะหรือถูกใช้ประโยชน์ |
127.0.0.10, 127.0.0.11 | PBL: ไม่ควรส่งอีเมลโดยตรง |
127.255.255.254 | ไม่ใช่การติดลิสต์: คุณค้นผ่าน resolver สาธารณะ |
แถวสุดท้ายทำให้หลายคนสับสน Spamhaus ไม่ตอบคำค้นที่มาผ่าน DNS resolver สาธารณะขนาดใหญ่ และจะคืนรหัสข้อผิดพลาดแทน ถ้าผลการตรวจทุกอันดูแปลก ให้รันจากเซิร์ฟเวอร์ที่ใช้ resolver ของตัวเอง หรือใช้หน้าค้นหาบนเว็บไซต์ของแต่ละลิสต์ บางลิสต์ยังขอให้ผู้ใช้ที่ค้นปริมาณมากลงทะเบียนก่อนสอบถามผ่าน DNS
แก้ต้นเหตุก่อน
การขอถอดชื่อโดยไม่แก้ไขช่วยให้คุณได้เวลาแค่หนึ่งถึงสองวันจนกว่าจะติดลิสต์อีกครั้ง และการติดลิสต์ซ้ำจะใช้เวลาล้างนานขึ้น ดังนั้นให้หาว่าการติดลิสต์มาจากไหน:
- ที่อยู่นี้ติดลิสต์ก่อนที่คุณจะได้รับหรือไม่? เทียบวันที่ติดลิสต์กับวันที่สร้างเซิร์ฟเวอร์ของคุณ การติดลิสต์เก่าที่ไม่มีกิจกรรมใหม่เป็นกรณีง่าย: ไปที่แบบฟอร์มถอดชื่อได้เลย
- ติดลิสต์ XBL หรือ CBL: ลิสต์เห็นทราฟฟิกแบบมัลแวร์หรือบอตเน็ตจากที่อยู่ของคุณ มองหาโปรเซสที่คุณไม่รู้จัก การเชื่อมต่อขาออกที่ไม่คาดคิดไปยังพอร์ต 25 รายการ cron ใหม่ และคีย์ SSH ที่ไม่รู้จัก เว็บแอปที่ถูกเจาะหรือรหัสผ่านที่อ่อนแอคือช่องทางเข้าที่พบบ่อย ถ้าไม่แน่ใจว่าเครื่องสะอาด ให้สร้างใหม่
- ติดลิสต์ SBL หรือ CSS: อีเมลจากที่อยู่ของคุณดูเหมือนสแปม ตรวจแบบฟอร์มติดต่อที่ส่งอีเมลโดยไม่มี captcha สคริปต์ที่ส่งจดหมายข่าว และบริการ SMTP ใด ๆ ที่รอรับการเชื่อมต่อบนอินเทอร์เฟซสาธารณะ
- คุณส่งอีเมลอยู่หรือเปล่า? ผู้ให้บริการโฮสติ้งหลายรายปิดพอร์ตขาออก 25 และ 465 ไว้เป็นค่าเริ่มต้น อีเมลควรส่งผ่านผู้ให้บริการอีเมลทางพอร์ต 587 ถ้าคุณไม่เคยส่งอีเมลแต่ยังติดลิสต์ แสดงว่ามีอย่างอื่นบนเซิร์ฟเวอร์กำลังส่ง
ถ้าคุณรันโค้ดที่ไม่น่าไว้ใจบนเครื่องเดียวกับที่ส่งอีเมลของคุณ นี่คือเวลาที่ควรแยกมันออกจากกัน แซนด์บ็อกซ์หรือเซิร์ฟเวอร์ตัวที่สองสำหรับงานเสี่ยงจะกันปัญหาชื่อเสียงของมันให้ห่างจากที่อยู่อีเมลของคุณ ระดับการแยกส่วนสำหรับโค้ดที่ไม่น่าไว้ใจ เปรียบเทียบตัวเลือกต่าง ๆ
จากนั้นจึงขอถอดชื่อ
- Spamhaus: ใช้หน้าค้นหา ซึ่งจะลิงก์ไปยังขั้นตอนถอดชื่อที่ถูกต้องของโซนนั้น การถอดชื่อจาก XBL/CBL และ PBL ทำได้ด้วยตนเองเมื่อต้นเหตุหายไปแล้ว ส่วนการถอดชื่อจาก PBL จะมีความหมายก็ต่อเมื่อคุณรันเมลเซิร์ฟเวอร์จริงและมี reverse DNS ที่ตรงกัน
- Barracuda: ส่งแบบฟอร์มขอถอดชื่อพร้อมคำอธิบายสั้น ๆ ว่าคุณแก้อะไรไป ใช้เวลาประมาณไม่เกินหนึ่งวัน
- SpamCop: ไม่ต้องทำอะไร รายการจะหมดอายุเองราวหนึ่งวันหลังจากไม่มีรายงานเพิ่ม
- UCEPROTECT: ระดับ 1 หมดอายุหลังเจ็ดวันหากไม่มีสแปมใหม่ ละเลยระดับ 2 และ 3 และอย่าจ่ายเงินเพื่อถอดชื่อ
หลังถอดชื่อแล้ว ให้ตั้งค่าพื้นฐานที่ช่วยไม่ให้ติดลิสต์อีก: ชื่อ reverse DNS ที่ตรงกับ hostname ของเซิร์ฟเวอร์ SPF, DKIM และ DMARC สำหรับโดเมนของคุณ และ cron job รายสัปดาห์ที่รันการตรวจข้างต้นแล้วส่งอีเมลแจ้งคุณหากมีอะไรเปลี่ยน
เมื่อไรที่ที่อยู่ใหม่คือคำตอบที่ถูก
บางครั้งก็ใช่ เช่น ที่อยู่นั้นมีรายการ SBL เก่าที่คุณถอดออกไม่ได้ หรือคุณต้องการชื่อเสียงที่สะอาดสำหรับโปรเจกต์ใหม่ สำหรับเรา ที่อยู่ใหม่หมายถึงเซิร์ฟเวอร์ใหม่: สั่งซื้อ ย้ายข้อมูล แล้วยกเลิกเครื่องเดิม การเปลี่ยนที่อยู่ IP อธิบายทุกตัวเลือก ถ้าคุณเชื่อว่ารายการบนที่อยู่ปัจจุบันของคุณผิดพลาด ให้เปิดทิกเก็ตพร้อมชื่อลิสต์และลิงก์ เราพิจารณาทุกกรณี แต่ไม่เปลี่ยนที่อยู่ตามคำขอ
สองข้อสุดท้าย ถ้าชื่อเสียงสำคัญแม้เพียงเล็กน้อย (อีเมล allowlist ของพาร์ตเนอร์ คีย์ API ที่ผูกกับที่อยู่) ให้ใช้แพ็กเกจที่มี IPv4 ของตัวเอง เช่น Small-IP เพราะในแพ็กเกจ NAT ที่อยู่ขาออกไม่ใช่ของคุณเอง จึงสร้างชื่อเสียงผู้ส่งของคุณเองไม่ได้ และถ้าเว็บไซต์บล็อกคุณเพราะคุณอยู่ในดาต้าเซ็นเตอร์ ไม่มีลิสต์ใดหรือที่อยู่ดาต้าเซ็นเตอร์ใหม่ใดเปลี่ยนเรื่องนี้ได้ เครือข่ายและพอร์ต อธิบายว่าแต่ละแพ็กเกจเปิดอะไรบ้าง
ความคิดเห็น
ยังไม่มีความคิดเห็น เป็นคนแรกสิ