9 ก.ย.53 วันนี้คุณแบงค์บ่นว่าไม่ได้รับ forword mail จากเครื่องบริการที่ส่งไปถึง gmail.com มานานแล้ว ผมเข้าไปตรวจใน aliases ก็พบว่ากำหนดไว้ปกติ และอัพเดทแล้ว เข้าไปตรวจใน maillog พบว่า message ว่า Name service error for name=spamassassin type=A เมื่อตรวจสอบ ก็พบว่าปัญหาคือ ในแฟ้ม /etc/postfix/master.cf ได้กำหนด relayhost = spamassassin นั้นผิด เมื่อเปลี่ยนเป็น relay.cat.net.th ก็ไม่พบปัญหา forward mail ไม่ไปอีก
คำสำคัญ ‘mail’
ตรวจการติด Black List หลังพบปัญหา
โดย บุรินทร์ รุจจนพันธุ์ เมื่อ Thursday, August 27th, 2009

squirrel mail
27 ส.ค.52 วันนี้ตรวจสอบ queue ของ smtp server พบว่ามี mail ค้างกว่าหมื่นฉบับ ตรวจพบว่าผู้ส่งคือสมาชิกในองค์กรของเรา แต่เขาไม่น่าจะเป็นผู้ส่งเมลขนาดนี้ เมื่อตรวจในรายละเอียดก็พบว่าส่งจาก squirrelmail ซึ่งเป็น webbased mail และก็พบว่าการส่งนั้นมาจาก webbased mail ที่ถูก hack แม้จะใช้ ssl กรองด่านแรกแล้ว แต่ spam bot ก็ยังเจาะตรงเข้าไปได้ พบว่ามี user หลายคนมีพฤติกรรมเช่นนี้ สิ่งที่เหมือนกันของผู้เป็นเหยื่อ spam bot คือกำหนดรหัสผ่านที่เหมือนกับรหัสผู้ใช้ ซึ่งเป็นข้อบกพร่องที่ผมปล่อยให้เกิดขึ้นมาหลายปี และไม่ได้กำชับให้ทุกฝ่ายเข้าใจ คาดว่า spam bot มุ่งเจาะเข้าจุดอ่อนใน squirrelmail และการกำหนดรหัสของผู้ใช้ที่หละหลวม จึงทำการแก้ไขปัญหาดังกล่าว
เมื่อเกิดปัญหาแล้ว ก็ตามไปดูว่า ผลของปัญหาดังกล่าวมีปฏิกิริยาลูกโซ่สู่ภายนอกหรือไม่ ด้วยการตรวจว่า smtp server ตัวใหม่ของเราติด black list อีกแล้วหรือไม่ 1)ตรวจกับ spamhaus.org พบว่ามี 7 IP ที่ติดในบริการของ cat.net.th แต่เราไม่ติดในบัญชีดำชุดนี้ 2)ตรวจกับ find-ip-address.org แล้วพบว่าเราไม่ติด 3)ตรวจกับ mxtoolbox.com ซึ่งส่ง ip ไปตรวจใน 111 เครื่องบริการ พบว่า smtp ทั้งสองเครื่องติดใน 5 เครื่องบริการคือ 3.1)sorbs.net/lookup.shtml (ขอ delist) 3.2)barracudacentral.org/rbl (remove request) 3.3)spamrats.com (Removal) 3.4)wpbl.info (Remove Record) 3.5)uceprotect.net (?)
วิธีแก้ไข ที่ดำเนินการคือ 1)หยุดการส่ง spam จากเครื่องของเรา และตรวจสอบอยู่เสมอ 2)ขอแก้ไขกับผู้ให้บริการขึ้นบัญชี black list ทีละราย ซึ่งทำไปกับ 4 รายแล้ว 3)เปลี่ยนเครื่องบริการ smtp และต้องดูแลไม่ให้เกิดขึ้นอีก
แหล่งอ้างอิง
+ http://www.blacklistalert.org
+ http://mxtoolbox.com/blacklists.aspx
+ http://www.find-ip-address.org
+ http://www.spamhaus.org/sbl/index.lasso
+ http://whatismyipaddress.com
แก้ปัญหาจดหมายมาแล้วไม่เข้ากล่องจดหมาย
โดย บุรินทร์ รุจจนพันธุ์ เมื่อ Thursday, August 13th, 200913 ส.ค.52 พบปัญหาว่าอีเมลฉบับใหม่ไม่เข้ากล่องอีเมล(inbox) ของสมาชิกหลายท่าน ทดสอบส่งด้วย #echo “test”|sendmail hello@yonok.ac.th จะพบเวลาของกล่องอีเมลใน /var/mail เปลี่ยนไป แต่ขนาดไม่เปลี่ยน ทุกครั้งที่ตรวจสอบด้วย #ls -alt ผมก็จะตรวจแต่เวลาเท่านั้น มาทราบตอนคุณธรณินทร์ สุรินทร์ปันยศ แจ้งว่ามีสมาชิกหลายท่านรายงานปัญหานี้เข้ามา ปัญหานี้น่าจะเกิดจากการเปลี่ยนระบบบริการอีเมลจาก sendmail เป็น postfix ที่โครงสร้างการบริการอีเมลอาจแตกต่างกัน และพบปัญหากับสมาชิกเพียงบางท่าน
แต่ปัญหานี้ต้องแก้ไขเร่งด่วน จึงไม่ได้คัดกรองสมาชิกว่าคนใดมีปัญหาหรือไม่มี ส่วน smtp ก็ยังใช้บริการจาก relay.cat.net.th ใน squirrelmail ที่ยังทดสอบไม่เรียบร้อย ที่มีแผนจะใช้บริการจาก smtp virtual server ในองค์กร ซึ่ง คุณอนุชิต ยอดใจยา ติดตั้งและเปิดบริการให้ใช้เป็นเครื่องส่งอีเมลแทนเครื่องเดิม ที่ถูกขึ้นบัญชีดำโดยภายนอก
ดำเนินการแก้ปัญหาในเบื้องต้น 3 วิธี คือ 1)แก้ไขสิทธิ ความเป็นเจ้าของ และขนาดของแฟ้มก็ยังรับใหม่ไม่ได้ 2)นำอีเมลใหม่ต่อท้ายอีเมลเก่าด้วย #cat new>>old ก็ยังรับใหม่ไม่ได้ 3)สร้าง folder ใหม่แล้วย้ายกล่องจดหมายเข้า(inbox) ไปทับ folder ที่สร้างขึ้น เป็นทางออกให้สมาชิกสามารถรับอีเมลใหม่ได้ปกติ ส่วนอีเมลเก่าก็จะกลายเป็น folder ชื่อ oldmail อยู่ด้านซ้ายของ squirrelmail
รายละเอียดของการดำเนินการวิธีที่ 3 คือ 1)คัดลอกรายชื่อกล่องจดหมายเข้าใน /var/mail ด้วย #ls -al ไปใช้ใน excel แล้วเลือกเฉพาะชื่อ ไปเก็บไว้ใน column a1 2)เขียนฟังก์ชันสร้าง folder สำหรับ squirrelmail อัตโนมัติ =”echo mail/oldmail>>/home/” & A1 &”/mail/.subscriptions” แล้วคัดลอกไปวางใน Linux Shell ทั้ง column 3)ตรวจว่าผู้ใช้เคยใช้เว็บเมลหรือไม่ เพราะถ้าไม่เคยก็จะไม่มีห้อง mail จึงต้องเลือกดำเนินการกับผู้ใช้ที่ไม่เคยใช้บริการ แต่มีอีเมลถึงผู้ใช้เหล่านั้นมากมาย =”ls -al /home/”& A1 &”/mail” 4)ย้ายกล่องจดหมาเข้า(inbox) ไปเป็น folder ชื่อ oldmail ด้วย =”mv “& A1 &” /home/” & A1 &”/mail/mail/oldmail” ต้องทำทีละบรรทัด เพราะผู้ใช้บางท่านมีกล่องอีเมลใหญ่ถึง 300 MB 5)ลบสมาชิกด้วย 3 ขั้นตอนคือ #userdel -r hello และ #rm /home/hello -Rf และ #rm /var/mail/hello

