linux training in Thailand
| Home | Articles | Download | Free Linux Tips | Resources | Training | Web Link | Linux Training English|
| Courses | Schedule | Price & Promotion | Map | Customer Ref. | Instructors | Certification | FAQ | Registration Form |
สถาบันฯ ขอแจ้งปิดทำการระหว่างวันที่ 27 -31 กรกฏาคม 2558 และเปิดทำการปกติวันที่ 3 สิงหาคม 2558
We are on vacations 5 days in July 27-31, 2015 Please contract Line ID : nok_fly or e-mail : info@itdestination.com
ITDestination จะปิดปรับปรุงเว็บไซต์ ตั้งแต่วันที่ 7 - 9 มิถุนายน 2556
อาจจะทำให้ใช้งานไม่ได้ในบริการ Webboard Freetips และ E-Learning จึงขออภัยในความไม่สะดวกมา ณ ที่นี้
สถาบันฯ ขอแจ้งปิดทำการวันที่ 22-28 กุมภาพันธ์ 2560 และจะเปิดทำการปกติในวันที่ 1 มีนาคม 2560
กรณีติดต่อส่งข้อความมาที่ Facebook: LinuxITDestination หรือ e-mail: info@itdestination.com ซึ่งจะติดต่อกลับประมาณ 17.00 น.
ผู้ลงทะเบียนอบรมสามารถทำข้อสอบ online ในช่วงที่มาอบรมเพื่อทบทวนความรู้ ทำได้ไม่จำกัดจำนวนครั้ง มีข้อเฉลยที่ถูกต้องแนะนำ
สอบถามรายละเอียดโทร 089 890-5494 >>> อ่านรายละเอียด... คลิ๊ก
ถ้าพูดถึงเมล์สแกนเนอร์ในกลุ่มโอเพ่นซอร์สแล้วเราคงรู้จัก Amavis, Amavisd-new และ MailScanner กันมาบ้าง สำหรับตัวผู้เขียนเองชอบใช้ MailScanner เป็นหลัก เนื่องจากไฟล์คอนฟิกเกอเรชันที่อ่านง่ายและสามารถสร้าง ruleset เพื่อความยืดหยุ่นในการนำไปใช้งาน แต่หลังจากเรานำ MailScanner ไปใช้สักระยะหนึ่งแล้วเราจะพบว่าในล็อกไฟล์ที่ MailScanner สร้างขึ้นในไดเรกทอรี /var/log/maillog นั้นมีข้อมูลเกี่ยวกับอีเมล์ที่ผ่านเข้าออกในเมล์เซิร์ฟเวอร์ ไม่ว่าจะเป็นข้อมูลเกี่ยวกับอีเมล์ที่เป็นไวรัสหรือสแปม ซึ่งเราสามารถนำข้อมูลเหล่านั้นมาวิเคราะห์ได้ว่า ระบบเมล์เซิร์ฟเวอร์ที่เราใช้อยู่นั้นมีอีเมล์ที่พึงประสงค์และไม่พึงประสงค์ผ่านเข้าออกมากเพียงไร แต่ข้อมูลจากล็อกไฟล์จะเป็นข้อมูลแบบเท็กซ์ที่เรียงต่อกันไป การนำข้อมูลจากไฟล์ maillog จะต้องทำการเขียนโปรแกรมดึงข้อมูลเหล่านั้นมาทำการวิเคราะห์ ซึ่งเป็นการยากพอสมควร ทำให้ผู้ดูและระบบบางท่านอาจจะละเลยการดูข้อมูลของล็อกไฟล์ประกอบ เพื่อการปรับปรุงให้เมล์เซิร์ฟเวอร์มีความคงทนมากขึ้น MailWatch เป็นเครื่องมือที่ใช้ดูล็อกไฟล์ที่เกิดจาก MailSanner ให้สะดวกมากขึ้น โดยที่ MailWatch จะทำหน้าที่ดึงล็อกไฟล์ที่เกิดจาก MailScanner เข้าสู่ฐานข้อมูล MySQL หลังจากนั้น MailWatch จะนำข้อมูลที่จับได้มาวิเคราะห์เป็นรายงานดังภาพตัวอย่างต่อไปนี้

ภาพที่ 1 หน้าหลักของ MailWatch


ภาพที่ 2 หน้ารายงาน


ภาพที่ 3 ตัวอย่างรายงานจำนวนเมล์ที่เข้าออกประจำวัน

คุณสมบัติของ MailWatch
  • สามารถแสดงขนาดของเมล์คิว (สนับสนุนเฉพาะ Sendmail/Exim)
  • สามารถดู Load Average , รายงานเมล์เข้าออกประจำวัน, สแปม, ไวรัส และการระบบการป้องกันเนื้อหาซึ่งแยกในแต่ละรายงานไว้ดังตัวอย่างภาพที่ 2
  • ระบบการแยกสี เช่น สแปมเมล์จะเป็นสีชมพู และสแปมเมล์ที่เป็นสีชมพูเข้มหมายถึงสแปมเมล์ที่มีค่าสูง (ขึ้นอยู่ตอนที่กำหนดใน MailScanner)
  • สามารถเข้าไปดูรายละเอียดได้ในแต่ะละเมล์
  • มีระบบการจัดการการกักกัน (Quarantine management) ไม่ว่าจะเป็นการปล่อย ลบ หรือการใช้ sa-learn
  • ในรายงานแต่ละรายงานเราสามารถเสริมระบบกรองพร้อมไปกับรายงาน เช่น เราสามารถดูเมล์ที่เข้าออกประจำวัน โดยมีความรุนแรงสแปมตั้งแต่ 8 เป็นต้นไป
  • มีระบบการดูสถานะของ Virus Scanner (สนับสนุนเฉพาะ sophos และ clamav)
  • สามารถกำหนดยูสเซอร์ได้ 3 ระดับ คือ ระดับยูสเซอร์ ,ระดับโดเมน และระดับแอดมิน
  • สนับสนุน XML-RPC สามารถติดตั้ง MailScanner/MailWatch หลายตัวให้รวมเป็นหนึ่ง
  • คุณสมบัติของ MailWatchในบทความนี้จะทดลองติดตั้ง Postfix, MailScanner, SpamAssassin, ClamAV และ MailWatch โดยที่จะอธิบายในส่วนของการติดตั้ง MailWatch เพียงอย่างเดียว ผู้อ่านสามารถดาวน์โหลด MailWatch ได้ที่ http://mailwatch.sourceforge.net ขณะที่เขียนบทความอยู่นี้เป็นเวอร์ชัน 1.0.3 ซึ่งมีวิธีการติดตั้งดังต่อไปนี้ 1. แก้ไขไฟล์ /etc/php.ini ดังต่อไปนี้short_open_tag = On safe_mode = Off
    register_globals = Off
    magic_quotes_gpc = On
    magic_quotes_runtime = Off
    session.auto_start = 0
    2. #rpm -ivh /mnt/space1/centos42/files/CentOS/RPMS/php-gd-4.3.9-3.8.i386.rpm (สำหรับผู้ที่ใช้ RedHat 4 ขึ้นไป)
    3. #cp /mnt/space1/lab/ch12/mailwatch-1.0.3.tar.gz /source
    4. #cd /source
    5. #tar -xzvf mailwatch-1.0.3.tar.gz
    6. #cd mailwatch
    7. #mysql -u root -p < create.sql
    8. #mysql -u root -pท mysql> GRANT ALL ON mailscanner.* TO mailwatch@localhost IDENTIFIED BY ‘yourpassword’;
    9. แก้ไขไฟล์ MailWatch.pm ดังนี้
    my($db_user) = ‘mailwatch’;
    my($db_pass) = ‘yourpassword ที่บันทึกลงในข้อ 8’

    กรณีต้องการลด log mail ขาออก ค้นหา
    MailScanner::Log::InfoLog(“$$message(id): Logged to MailWatch SQL”) เปลี่ยนเป็น
    MailScanner::Log::DebugLog(“$$message(id): Logged to MailWatch SQL”) ค้นหา
    MailScanner::Log::InfoLog(“Logging message $message $msg(id) to SQL”); เปลี่ยนเป็น
    MailScanner::Log::DebugLog(“Logging message $message $msg(id) to SQL”);
    10. #cp MailWatch.pm /usr/lib/MailScanner/MailScanner/CustomFunctions
    11. #mysql mailscanner -u mailwatch -pท mysql> INSERT INTO users VALUES (‘mailwatch’,md5(‘yourpassword ในข้อ8’),’FullName’,’A’,’0’,’0’,’0’,’0’,’0’);
    12. #mv mailscanner/ /var/www/html
    13. #cd /var/www/html/mailscanner
    14. #chown root.apache images
    15. #chmod ug+rwx images
    16. #chmod root.apache images/cache
    17. #chmod ug+rwx images/cache
    18. #cd /var/www/html/mailscanner
    19. #cp conf.php.example conf.php
    20. แก้ไขไฟล์ /var/www/html/mailscanner/conf.phpท define(DB_USER, ‘mailwatch’);
  • define(DB_PASS, ‘yourpassword ในข้อ 8’);
  • define(QUARANTINE_USE_FLAG,true);
    21. แก้ไขไฟล์ /var/www/html/mailscanner/mailq.php (กรณีใช้ Sendmail และ Exim)
    ค้นหา
    case default:
    เปลี่ยนเป็น
    default:


  • กรณีต้องการให้มีการล้างไดเรกทอรี quarantine
    1. #cd /etc/cron.daily
    2. #แก้ไขไฟล์ clean.quarantineท $disabled = 1;
    3. #cp /source/mailwatch/tools/quarantine_maint.php /usr/local/bin
    4. #echo “/usr/local/bin/quarantine_main.php --clean” > /etc/cron.daily/mailwatch_quarantine_maint.sh
    5. #chmod +x /etc/cron.daily/mailwatch_quarantine_maint.sh6. กรณีต้องการใช้ db_clean.php
    ค้นหา
    #!/user/bin/php –qn
    เป็น
    #!/usr/bin/php –q
    ค้น
    dequery(“DELETE LOW_PRIORITY FROM maillog WHERE timestamp < (now() - INTERVAL 60 DAY)”);
    เป็น
    dequery(“DELETE LOW_PRIORITY FROM maillog WHERE date < (now() - INTERVAL 60 DAY)”);


    ปรับคอนฟิก /etc/MailScanner/MailScanner.conf
    1. แก้ไขไฟล์ /etc/MailScanner/MailScanner.conf
    2. Quarantine User = root
    3. Quarantine Group = apache
    4. Quarantine Permissions = 0660
    5. Quarantine Whole Message = yes
    6. Quarantine Whole Message As Queue Files = no
    7. Detailed Spam Report = yes
    8. Include Scores In SpamAssassin Report = yes
    9. Always Looked Up Last = &MailWatchLogging


    10. ต้องการให้ MailWatch จัดการเรื่อง Backlist/Whitelist
      1. #cd /source/mailwatch
      2. แก้ไขไฟล์ SQLBackWhiteList.pm ดังนี้
      3. my($db_user) = ‘mailwatch’;
      4. my($db_pass) = ‘password ที่บันทึกลงในข้อ 8’
      5. #cp SQLBackWhiteList.pm /usr/lib/MailScanner/MailScanner/CustomFunctions
      6. แก้ไขไฟล์ /etc/MailScanner เพิ่มเติม
      7. Is Definitely Not Spam = &SQLWhitelist
      8. Is Definitely Spam = &SQLBlacklist


      9. ต้องการนำ Bayesian Database มาใช้ใน MailWatch
        1. แก้ไขไฟล์ /etc/MailScanner/spam.assassin.prefs.conf
        2. use_bayes 1
        3. bayes_path /etc/MailScanner/bayes/bayes
        4. bayes_file_mode 0770
        5. #mkdir /etc/MailScanner/bayes
        6. #chown root.apache /etc/MailScanner/bayes
        7. #chmod g+rws /etc/MailScanner/bayes
        8. กรณีมี bayes database อยู่เก่า เช่น อยู่ที่ root
        9. #cp /root/.spamassassin/bayes_* /etc/MailScanner/bayes
        10. #chown root.apache /etc/MailScanner/bayes/bayes_*
        11. #chmod g+rw /etc/MailScanner/bayes/bayes_*
        12. ทดสอบ Bayes ด้วย SpamAssassin #spamassassin -D -p /etc/MailScanner/spam.assassin.prefs.conf - - lint
          หลังจากติดตั้งและดูข้อมูลผ่าน MailWatch ทำให้การมองภาพรวมเกี่ยวกับเมล์เซิร์ฟเวอร์ดูง่ายขึ้น เช่น ไวรัสที่ปัจจุบันกำลังแพร่หลายอยู่เป็นไวรัสอะไร สแปมที่ถูกจับโดยส่วนใหญ่อยู่ที่ระดับเท่าใด ซึ่งอาจทำให้เราสามารถวิเคราะห์การกำหนด Score ของสแปมให้เหมาะสมกับองค์กรของเรามากยิ่งขึ้น สามารถดู Load Average ของเครื่องเมล์เซิร์ฟเวอร์ของเราต้องมีการปรับปรุงหรือไม่ แถมท้ายด้วยหน้าเมนู Tools/Links ซึ่งสามารถดูสถานะข้อมูลของ ClamAV, F-Prot, MySQL, MailScanner Configuration ,PHP Information , SpamAssassin Lint (Test)และอีกหลายๆตัว เพียงแค่นี้ก็ทำให้ผู้ดูและระบบตรวจสอบระบบสุขภาพเมล์เซิร์ฟเวอร์ของท่านได้ทุกที่ทั่วโลกในหลากหลายรายงานด้วยเครื่องมือที่ชื่อว่า MailWatch

          แหล่งที่มา http://mailwatch.sourceforge.net

    MailWatch (MailScanner ของข้าใครอย่าแตะ)

    โดย มานะ ศฤงคารรัตนะ,RHCE,LPIC-2,CCNA,MCSA