ก่อนหน้านี้ ผมได้พูดถึงวิธีการ block spam mail โดยกำหนดที่ preference ของผู้ใช้ Zimbra แต่ละคนโดยดูจาก Email address หรือ Domain ต้นทางที่ส่งมา มีท่านผู้อ่านหลายท่าน ถามมาว่าเราสามารถกำหนดให้ Zimbra block หรือไม่ block mail ให้กับทุก account โดยระบุที่จุดเดียว แล้วให้มีผลกับทุก account ในระบบ แทนที่ต้องกำหนดแยกที่ละคนเหมือนในบทความครั้งที่แล้วได้หรือเปล่า
คำตอบก็คือทำได้ครับ โดยเราสามารถระบุได้สองอย่าง คือ
เปรียบเทียบกับบทความก่อนหน้านี้ ที่พูดถึง วิธี block spam mail สำหรับผู้ใช้ zimbra แต่ละคน whitelist เหมือน allow list ส่วน blacklist ก็เหมือน deny list ครับ
การ setup ต้องทำที่ Linux command line ตามขึ้นตอนดังนี้ครับ
ขั้นตอนการ setup
1) Login Linux ที่เครื่อง Zimbra โดยต้องเป็น root นะครับ
2) copy /opt/zimbra/conf/amavis.conf.in ของเดิม เก็บไว้ (สำคัญมาก) เผื่อทำอะไรผิด จะได้เอาไฟล์ที่ backup ไว้ save กลับมา
3) เพิ่มบรรทัดเข้าไปในไฟล์ /opt/zimbra/conf/amavis.conf.in ตามนี้ครับ
read_hash(\%whitelist_sender, '/etc/zimbra/whitelist')
read_hash(\%blacklist_sender, '/etc/zimbra/blacklist');
จากตัวอย่าง ผมใส่ไปสองบรรทัด บรรทัดแรกสำหรับ whitelist บรรทัดที่สองสำหรับ blacklist โดยทั้งสองบรรทัด ผมระบุให้ไปอ่าน whitelist และ blacklist ที่ /etc/zimbra/whitelist และ /etc/zimbra/blacklist ตามลำดับ
สำหรับบรรทัดที่ใส่ ผมคิดว่า ใส่ตรงไหนก็ได้ แต่ต้องไม่แทรก config ของเดิม และต้องอยู่ก่อนบรรทัดท้ายสุด ที่เขียนว่า
1; # insure a defined return value
ลองดูตัวอย่างตามรูปเลยครับ
4) สร้างที่เกี็บรายขื่อของ whitelist และ blacklist ตามที่เราระบุในข้อ 3) ตามตัวอย่างคือ /etc/zimbra/whitelist และ /etc/zimbra/blacklist และต้องกำหนด owner และ permission ให้ user zimbra อ่านได้ด้วยนะครับ
เสร็จแล้วใส่ ชื่อ domain ที่เราจะระบุเป็น whitelist และ blacklist เข้าไปใน ไฟล์นี้ บรรทัดละ 1 domain หรือ 1 address ครับ
สุดท้ายเราก็จะได้ไฟล์คล้ายๆ กับตัวอย่างนี้ครับ (อันนี้แสดงเฉพาะ blacklist)
5) Restart Zimbra ด้วยคำสั่ง "service zimbra restart"
ผลลัพท์ที่ได้
ถ้ามี email ส่งมาจาก address หรือ domain ที่อยู่ใน whitelist ระบบจะตัดสินว่า email พวกนี้ไม่เป็น spam และส่งตรงไปที่ mailbox ของคนรับเลย และไม่ลง spam folder ด้วย
แต่ถ้า email มี address ถูกส่งมาอยู่ใน blacklist ระบบจะไม่ส่ง email ไปให้ user ครับ ระบบจะตัดสินว่าเป็น spam และคัด email นั้นๆ ทิ้งทันที่ และไม่แม้แต่จะส่งไปเก็บอยู่ใน อยู่ใน spam folder ด้วยครับ
การนำไปประยุกต์ใช้
หรือในกรณีที่เรารู้แน่ๆว่า account ที่ส่งหาเรา ไม่มี spam แน่นอนเช่น เป็นคู่ค้า หรือเป็นลูกค้า แต่หลายๆ account ในระบบ zimbra ของเรา ดันมองว่า email ที่ส่งมาจาก account หรือ domain เหล่านั้นเป็น spam เราสามารถใช้วิธีนี้แก้ปัญหาได้ครับ โดยใส่ Email หรือ ชื่อ domain ของคู่ค้าของเรา เข้าไปใน whitelist
นอกจากนี้ วิธีนี้เป็นการแก้ปัญหาที่หลายคนพบว่ามีบาง account ใน domain เดียวกัน ส่ง email หากันแล้วระบบมองว่าเป็น spam เลยเอา email ที่ได้รับไปเก็บไว้ใน spam folder
เราก็จัดการแก้โดย set domain ที่อยู่ในเครื่อง zimbra ไว้ที่ whitelist เลย ระบบก็จะมองว่า เมล์ที่ถูกส่งจาก domain ที่อยู่ในเครื่องเราเองไม่เป็น spam อีกต่อไปครับ
คำตอบก็คือทำได้ครับ โดยเราสามารถระบุได้สองอย่าง คือ
- whitelist เป็นรายชื่อของ email address หรือ domain ที่เราต้องการให้ระบบมองว่า Email ที่ถูกส่งมา จาก email address หรือ domain นี้ไม่เป็น spam แน่นอน ปล่อยผ่านมาได้
- blacklist เป็นรายชื่อของ email address หรือ domain ซึ่งถ้า email ถูกส่งมาจาก address หรือ domain ชุดนี้ ระบบจะมองว่าเป็น spam ทันที และจะถูก block ไว้
เปรียบเทียบกับบทความก่อนหน้านี้ ที่พูดถึง วิธี block spam mail สำหรับผู้ใช้ zimbra แต่ละคน whitelist เหมือน allow list ส่วน blacklist ก็เหมือน deny list ครับ
การ setup ต้องทำที่ Linux command line ตามขึ้นตอนดังนี้ครับ
ขั้นตอนการ setup
1) Login Linux ที่เครื่อง Zimbra โดยต้องเป็น root นะครับ
2) copy /opt/zimbra/conf/amavis.conf.in ของเดิม เก็บไว้ (สำคัญมาก) เผื่อทำอะไรผิด จะได้เอาไฟล์ที่ backup ไว้ save กลับมา
3) เพิ่มบรรทัดเข้าไปในไฟล์ /opt/zimbra/conf/amavis.conf.in ตามนี้ครับ
read_hash(\%whitelist_sender, '/etc/zimbra/whitelist')
read_hash(\%blacklist_sender, '/etc/zimbra/blacklist');
จากตัวอย่าง ผมใส่ไปสองบรรทัด บรรทัดแรกสำหรับ whitelist บรรทัดที่สองสำหรับ blacklist โดยทั้งสองบรรทัด ผมระบุให้ไปอ่าน whitelist และ blacklist ที่ /etc/zimbra/whitelist และ /etc/zimbra/blacklist ตามลำดับ
สำหรับบรรทัดที่ใส่ ผมคิดว่า ใส่ตรงไหนก็ได้ แต่ต้องไม่แทรก config ของเดิม และต้องอยู่ก่อนบรรทัดท้ายสุด ที่เขียนว่า
1; # insure a defined return value
ลองดูตัวอย่างตามรูปเลยครับ
4) สร้างที่เกี็บรายขื่อของ whitelist และ blacklist ตามที่เราระบุในข้อ 3) ตามตัวอย่างคือ /etc/zimbra/whitelist และ /etc/zimbra/blacklist และต้องกำหนด owner และ permission ให้ user zimbra อ่านได้ด้วยนะครับ
เสร็จแล้วใส่ ชื่อ domain ที่เราจะระบุเป็น whitelist และ blacklist เข้าไปใน ไฟล์นี้ บรรทัดละ 1 domain หรือ 1 address ครับ
สุดท้ายเราก็จะได้ไฟล์คล้ายๆ กับตัวอย่างนี้ครับ (อันนี้แสดงเฉพาะ blacklist)
5) Restart Zimbra ด้วยคำสั่ง "service zimbra restart"
ผลลัพท์ที่ได้
ถ้ามี email ส่งมาจาก address หรือ domain ที่อยู่ใน whitelist ระบบจะตัดสินว่า email พวกนี้ไม่เป็น spam และส่งตรงไปที่ mailbox ของคนรับเลย และไม่ลง spam folder ด้วย
แต่ถ้า email มี address ถูกส่งมาอยู่ใน blacklist ระบบจะไม่ส่ง email ไปให้ user ครับ ระบบจะตัดสินว่าเป็น spam และคัด email นั้นๆ ทิ้งทันที่ และไม่แม้แต่จะส่งไปเก็บอยู่ใน อยู่ใน spam folder ด้วยครับ
การนำไปประยุกต์ใช้
หรือในกรณีที่เรารู้แน่ๆว่า account ที่ส่งหาเรา ไม่มี spam แน่นอนเช่น เป็นคู่ค้า หรือเป็นลูกค้า แต่หลายๆ account ในระบบ zimbra ของเรา ดันมองว่า email ที่ส่งมาจาก account หรือ domain เหล่านั้นเป็น spam เราสามารถใช้วิธีนี้แก้ปัญหาได้ครับ โดยใส่ Email หรือ ชื่อ domain ของคู่ค้าของเรา เข้าไปใน whitelist
นอกจากนี้ วิธีนี้เป็นการแก้ปัญหาที่หลายคนพบว่ามีบาง account ใน domain เดียวกัน ส่ง email หากันแล้วระบบมองว่าเป็น spam เลยเอา email ที่ได้รับไปเก็บไว้ใน spam folder
เราก็จัดการแก้โดย set domain ที่อยู่ในเครื่อง zimbra ไว้ที่ whitelist เลย ระบบก็จะมองว่า เมล์ที่ถูกส่งจาก domain ที่อยู่ในเครื่องเราเองไม่เป็น spam อีกต่อไปครับ