วางแผนเก็บและจัดเก็บอีเมลย้อนหลังขององค์กร

ออกแบบนโยบายว่าอีเมลต้องเก็บนานแค่ไหน เก็บที่ไหน และค้นหาย้อนหลังอย่างไร พร้อมวิธีทางเทคนิคที่ทำได้จริง

โดย ทีมงาน THAI DATA CLOUD อัปเดต อ่าน 13 นาที เข้าชม 7 ครั้ง

แชร์FacebookXLINELinkedIn
Email Archive — วางแผนเก็บและจัดเก็บอีเมลย้อนหลังขององค์กร
วางแผนเก็บและจัดเก็บอีเมลย้อนหลังขององค์กร

คำตอบสั้น ๆ: ออกแบบนโยบายว่าอีเมลต้องเก็บนานแค่ไหน เก็บที่ไหน และค้นหาย้อนหลังอย่างไร พร้อมวิธีทางเทคนิคที่ทำได้จริง

คู่มือนี้อธิบาย Email Archive ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย

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

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

ความต่างที่ต้องเข้าใจก่อน

การสำรองข้อมูล

มีไว้กู้คืนเมื่อระบบเสียหาย ตอบคำถามว่า "ทำอย่างไรให้ระบบกลับมาเหมือนเมื่อวาน" เก็บระยะสั้น เช่น 30 วัน และไม่ได้ออกแบบมาให้ค้นหารายฉบับ

การจัดเก็บ

มีไว้ค้นหาย้อนหลังและตอบข้อกำหนด ตอบคำถามว่า "อีเมลที่คุยกับลูกค้ารายนี้เมื่อสามปีก่อนว่าอย่างไร" เก็บระยะยาว เช่น 5-10 ปี และต้องค้นหาได้

ข้อมูลสำรองใช้แทนการจัดเก็บไม่ได้ เพราะเมื่อผู้ใช้ลบอีเมลแล้ว รอบสำรองถัดไปก็ไม่มีอีเมลนั้นอีก การจัดเก็บที่ถูกต้องต้องเก็บตั้งแต่ตอนที่อีเมลผ่านระบบ ก่อนที่ผู้ใช้จะมีโอกาสลบ

ขั้นตอนที่ 1: กำหนดนโยบายก่อนลงมือทางเทคนิค

ตอบคำถามเหล่านี้ร่วมกับฝ่ายกฎหมายและผู้บริหาร

  • ต้องเก็บนานแค่ไหน แยกตามประเภทหรือไม่
  • ใครมีสิทธิ์ค้นหาย้อนหลัง และต้องผ่านการอนุมัติจากใคร
  • จะจัดการกับข้อมูลส่วนบุคคลใน อีเมลอย่างไรให้สอดคล้องกับ PDPA
  • เมื่อพ้นระยะเวลาแล้วจะลบหรือเก็บต่อ

ข้อควรระวังด้าน PDPA การเก็บอีเมลไว้นานกว่าที่จำเป็นโดยไม่มีฐานทางกฎหมายรองรับเป็นความเสี่ยงในตัวมันเอง นโยบายที่ดีต้องระบุทั้งระยะเวลาเก็บและการลบเมื่อพ้นกำหนด

ระยะเวลาที่ใช้กันทั่วไปในองค์กรไทย

  • อีเมลทั่วไป 3-5 ปี
  • อีเมลที่เกี่ยวกับสัญญาและการเงิน 10 ปี ตามอายุความ
  • อีเมลของฝ่ายบุคคล ตามกฎหมายแรงงานที่เกี่ยวข้อง

ปรึกษาที่ปรึกษากฎหมายขององค์กรเพื่อกำหนดตัวเลขที่เหมาะกับธุรกิจของคุณ

ขั้นตอนที่ 2: ตั้งการเก็บสำเนาทุกฉบับที่ผ่านระบบ

วิธีที่ถูกต้องคือทำสำเนาตั้งแต่ตอนที่อีเมลเข้าและออกจากเซิร์ฟเวอร์ ซึ่งเรียกว่า journaling

บน Postfix ตั้งด้วย always_bcc

sudo postconf -e 'always_bcc = [email protected]'
sudo systemctl reload postfix
sudo postconf always_bcc

อีเมลทุกฉบับทั้งขาเข้าและขาออกจะถูกสำเนาไปยังบัญชีนั้น

ข้อควรระวังสำคัญ บัญชีปลายทางต้องอยู่คนละโดเมนหรือตั้งค่าไม่ให้ always_bcc ทำงานซ้ำกับตัวเอง ไม่เช่นนั้นจะเกิดการวนซ้ำไม่รู้จบ

ต้องแจ้งพนักงานให้ทราบว่ามีการเก็บสำเนา ซึ่งเป็นทั้งข้อกำหนดทางกฎหมายและเรื่องความโปร่งใส

ขั้นตอนที่ 3: แยกที่เก็บออกจากระบบอีเมลหลัก

ที่เก็บถาวรควรอยู่คนละเซิร์ฟเวอร์และมีสิทธิ์เข้าถึงแยกต่างหาก เพื่อให้ผู้ดูแลระบบอีเมลทั่วไปแก้ไขข้อมูลย้อนหลังไม่ได้

#!/bin/bash
# ย้ายอีเมลจากบัญชีรวมไปเก็บแบบแยกตามเดือน
set -euo pipefail

[email protected]
DEST=/srv/mail-archive
MONTH=$(date -d 'last month' +%Y-%m)

mkdir -p "$DEST/$MONTH"

doveadm fetch -u "$SRC" text \
  mailbox INBOX savedbefore "$(date -d 'last month' +%Y-%m-01)" \
  > "$DEST/$MONTH/archive.mbox"

gzip -9 "$DEST/$MONTH/archive.mbox"

# ตั้งสิทธิ์อ่านอย่างเดียว
chmod 440 "$DEST/$MONTH/archive.mbox.gz"
chown root:archive "$DEST/$MONTH/archive.mbox.gz"

# ลบออกจากบัญชีรวมหลังย้ายแล้ว
doveadm expunge -u "$SRC" mailbox INBOX savedbefore "$(date -d 'last month' +%Y-%m-01)"

echo "จัดเก็บเดือน $MONTH เสร็จ ขนาด $(du -h "$DEST/$MONTH/archive.mbox.gz" | cut -f1)"

ส่งสำเนาออกไปเก็บนอกสถานที่ด้วย เพื่อให้รอดแม้ศูนย์ข้อมูลเสียหาย

restic backup /srv/mail-archive --tag mail-archive

ขั้นตอนที่ 4: ทำให้ค้นหาได้

ไฟล์ mbox ที่บีบอัดไว้ค้นหายาก สำหรับองค์กรที่ต้องค้นบ่อย ควรมีระบบดัชนี

ทางเลือกที่ทำได้จริง

  • เก็บไว้ในบัญชี IMAP เฉพาะ แล้วใช้ความสามารถค้นหาของ Dovecot ซึ่งง่ายที่สุดและใช้ได้ทันที
  • ใช้ระบบจัดเก็บอีเมลโดยเฉพาะ เช่น MailPiler ซึ่งมีหน้าจอค้นหาและควบคุมสิทธิ์ในตัว
  • ส่งเข้า OpenSearch สำหรับองค์กรที่มีระบบค้นหาอยู่แล้ว

ค้นหาด้วย doveadm สำหรับกรณีที่เก็บไว้ในบัญชี IMAP

# ค้นหาตามผู้ส่ง
sudo doveadm search -u [email protected] FROM '[email protected]'

# ค้นหาตามคำในหัวข้อและช่วงเวลา
sudo doveadm search -u [email protected] \
  SUBJECT 'สัญญา' SINCE 2024-01-01 BEFORE 2025-01-01

# ดึงอีเมลที่พบออกมา
sudo doveadm fetch -u [email protected] 'hdr.subject hdr.from hdr.date' \
  FROM '[email protected]' | head -40

ขั้นตอนที่ 5: จัดการเมื่อพนักงานลาออก

นี่คือกรณีที่เกิดบ่อยที่สุดและมักจัดการไม่ดี ขั้นตอนที่ควรทำ

  1. อย่าลบบัญชีทันที ให้ระงับการล็อกอินแทน
  2. ตั้งการส่งต่ออีเมลไปยังผู้รับช่วงงาน
  3. ตั้งข้อความตอบกลับอัตโนมัติแจ้งผู้ติดต่อ
  4. ส่งออกกล่องจดหมายเก็บไว้ตามนโยบาย
  5. เมื่อครบระยะเวลาที่กำหนด เช่น 6-12 เดือน จึงลบบัญชี
# ระงับการล็อกอินแต่ยังรับอีเมลได้
sudo doveadm user [email protected]
# ตั้งใน DirectAdmin หรือ Plesk ที่หน้าจัดการอีเมล

# ส่งออกกล่องจดหมายทั้งหมด
sudo doveadm fetch -u [email protected] text mailbox '*' \
  | gzip > /srv/mail-archive/staff/leaving-$(date +%F).mbox.gz

# ตั้งส่งต่อ
echo '[email protected]: [email protected]' >> /etc/postfix/virtual
sudo postmap /etc/postfix/virtual && sudo systemctl reload postfix

ขั้นตอนที่ 6: ควบคุมสิทธิ์การเข้าถึง

ข้อมูลที่จัดเก็บไว้มีอีเมลของทุกคนในองค์กร จึงต้องควบคุมเข้มกว่าระบบอีเมลปกติ

  • ให้สิทธิ์เข้าถึงเฉพาะบุคคลที่จำเป็น และจำกัดจำนวนให้น้อยที่สุด
  • บันทึกทุกครั้งที่มีการค้นหา ว่าใครค้นอะไรเมื่อไรและด้วยเหตุผลใด
  • กำหนดให้ต้องได้รับอนุมัติเป็นลายลักษณ์อักษรก่อนค้นหา
  • เก็บที่เก็บข้อมูลแบบเข้ารหัส
# บันทึกการเข้าถึง
sudo nano /etc/rsyslog.d/50-archive-access.conf
:programname, isequal, "doveadm" /var/log/archive-access.log
& stop

ขั้นตอนที่ 7: ลบเมื่อพ้นกำหนด

การเก็บตลอดไปไม่ใช่นโยบายที่ดี ทั้งเรื่องต้นทุนและความเสี่ยงทางกฎหมาย

#!/bin/bash
# ลบข้อมูลที่เก็บเกินกำหนด
YEARS=5
DEST=/srv/mail-archive
CUTOFF=$(date -d "$YEARS years ago" +%Y-%m)

find "$DEST" -maxdepth 1 -type d -name '20*' | while read -r d; do
  m=$(basename "$d")
  if [[ "$m" < "$CUTOFF" ]]; then
    echo "จะลบ $d (เก่ากว่า $CUTOFF)"
    # ลบจริงเมื่อยืนยันแล้ว
    # rm -rf "$d"
  fi
done

ทำการลบเป็นกระบวนการที่มีการอนุมัติ ไม่ใช่สคริปต์ที่รันเองโดยไม่มีใครตรวจ และบันทึกไว้เป็นหลักฐานว่าลบอะไรไปเมื่อไร

ขั้นตอนที่ 8: ทดสอบว่าระบบใช้งานได้จริง

ทดสอบทุกไตรมาสด้วยสถานการณ์จำลอง

  • ค้นหาอีเมลจากลูกค้ารายหนึ่งในช่วงเวลาที่กำหนด
  • กู้กล่องจดหมายของพนักงานที่ลาออกไปแล้ว
  • ตรวจว่าข้อมูลที่ควรถูกลบตามนโยบายถูกลบจริง

จับเวลาและบันทึกผล ระบบจัดเก็บที่ค้นหาไม่ได้ในเวลาที่ยอมรับได้เท่ากับไม่มีระบบ

ปัญหาที่พบบ่อยเกี่ยวกับ Email Archive

พื้นที่จัดเก็บโตเร็วเกินคาด

ไฟล์แนบคือส่วนใหญ่ของขนาด พิจารณาแยกเก็บไฟล์แนบและเก็บเฉพาะตัวอ้างอิงในอีเมล หรือบีบอัดข้อมูลเก่าด้วยอัตราสูงขึ้น

du -sh /srv/mail-archive/* | sort -h | tail

always_bcc ทำให้เกิดการวนซ้ำ

บัญชีปลายทางอยู่ในโดเมนที่ถูก bcc เอง แยกไปคนละโดเมนหรือใช้ sender_bcc_maps กับ recipient_bcc_maps ที่ควบคุมได้ละเอียดกว่า

ค้นหาช้ามากเมื่อข้อมูลเยอะ

เปิดการทำดัชนีข้อความเต็มของ Dovecot หรือย้ายไปใช้ระบบจัดเก็บที่มีดัชนีโดยเฉพาะ

ไม่แน่ใจว่านโยบายถูกต้องตามกฎหมายหรือไม่

เอกสารนี้อธิบายวิธีทางเทคนิค ไม่ใช่คำแนะนำทางกฎหมาย ให้ที่ปรึกษากฎหมายขององค์กรตรวจสอบนโยบายก่อนนำไปใช้จริง

ต้องการวางระบบจัดเก็บอีเมลขององค์กรบนคลาวด์ในประเทศไทย ติดต่อ THAI DATA CLOUD ได้ที่ https://thaidata.cloud/contact/

ทำความเข้าใจ Email Archive ก่อนเริ่ม

Email Archive ต่างจากการสำรองข้อมูลตรงเป้าหมาย การสำรองมีไว้กู้ระบบกลับมาเมื่อเสียหาย ส่วน Email Archive มีไว้เก็บอีเมลไว้ค้นหาย้อนหลังตามระยะเวลาที่องค์กรกำหนด และมักต้องตอบโจทย์ด้านกฎหมายหรือการตรวจสอบภายในด้วย องค์กรที่มีแต่สำเนาสำรองจะพบว่าตอบคำถามง่าย ๆ อย่างขอดูอีเมลทั้งหมดที่ติดต่อกับคู่ค้ารายนี้ในปีที่แล้วไม่ได้เลย เพราะสำเนาสำรองออกแบบมาให้กู้ทั้งก้อน ไม่ได้ออกแบบมาให้ค้น การวางระบบ Email Archive จึงเริ่มจากนโยบายก่อนเครื่องมือเสมอ

สิ่งที่ต้องเตรียมก่อนใช้งาน Email Archive

  • นโยบายระยะเวลาเก็บที่ตกลงกับฝ่ายกฎหมายหรือผู้บริหารแล้ว ว่าอีเมลประเภทใดต้องเก็บกี่ปี
  • ประมาณการปริมาณอีเมลต่อปี เพื่อคำนวณพื้นที่ที่ Email Archive ต้องใช้ตลอดอายุการเก็บ
  • ข้อสรุปว่าใครมีสิทธิ์ค้นหาข้อมูลใน Email Archive และต้องผ่านการอนุมัติจากใคร

ตรวจสอบว่า Email Archive ทำงานถูกต้องแล้ว

  1. ทดสอบค้นหาย้อนหลังด้วยเงื่อนไขจริง เช่น ค้นตามคู่สนทนาและช่วงวันที่ แล้วได้ผลครบ
  2. ตรวจว่าอีเมลที่ถูกลบจากกล่องจดหมายของผู้ใช้ยังอยู่ใน Email Archive
  3. ตรวจว่าการเข้าถึงถูกบันทึกไว้ว่าใครค้นหาอะไรเมื่อใด ซึ่งเป็นข้อกำหนดพื้นฐานของระบบที่เก็บข้อมูลอ่อนไหว

ข้อควรรู้และข้อจำกัดของ Email Archive

  • อย่าตั้งระยะเวลาเก็บนานเกินความจำเป็น ข้อมูลที่เก็บไว้เกินหน้าที่คือความเสี่ยงและค่าใช้จ่ายที่ไม่ได้สร้างประโยชน์
  • แยกสิทธิ์การค้นหาออกจากสิทธิ์ผู้ดูแลระบบ เพราะการอ่านอีเมลของผู้อื่นควรมีขั้นตอนอนุมัติเสมอ
  • ทดสอบการกู้ข้อมูลจาก Email Archive ปีละครั้ง เช่นเดียวกับที่ทดสอบสำเนาสำรอง

คำถามที่พบบ่อยเกี่ยวกับ Email Archive

Email Archive แทนการสำรองข้อมูลได้ไหม

ไม่ได้ครับ คนละหน้าที่กัน การสำรองมีไว้กู้ระบบกลับมาทั้งก้อนเมื่อเสียหาย ส่วน Email Archive มีไว้ค้นหาย้อนหลังตามนโยบาย องค์กรควรมีทั้งสองอย่าง

ผู้ใช้ลบอีเมลทิ้งแล้วข้อมูลจะยังอยู่หรือไม่

อยู่ครับ ถ้าระบบเก็บสำเนาไว้ตั้งแต่ตอนรับส่ง ซึ่งเป็นเหตุผลที่ต้องแจ้งพนักงานให้ทราบนโยบายนี้ตั้งแต่ต้น เพื่อความโปร่งใสและเพื่อให้สอดคล้องกับกฎหมายคุ้มครองข้อมูลส่วนบุคคล

ต้องเก็บอีเมลนานแค่ไหนถึงจะพอ

ไม่มีตัวเลขเดียวที่ใช้ได้กับทุกองค์กร ให้ยึดจากข้อกำหนดของธุรกิจและกฎหมายที่เกี่ยวข้องเป็นหลัก แล้วกำหนดเป็นนโยบายเป็นลายลักษณ์อักษร ไม่ใช่ปล่อยให้เก็บไปเรื่อย ๆ โดยไม่มีใครตัดสินใจ

สรุปขั้นตอน Email Archive

ทบทวน Email Archive ทั้งหมดตามลำดับ ก่อนนำไปใช้กับระบบจริง

  1. กำหนดนโยบายก่อนลงมือทางเทคนิค
  2. ตั้งการเก็บสำเนาทุกฉบับที่ผ่านระบบ
  3. แยกที่เก็บออกจากระบบอีเมลหลัก
  4. ทำให้ค้นหาได้
  5. จัดการเมื่อพนักงานลาออก
  6. ควบคุมสิทธิ์การเข้าถึง
  7. ลบเมื่อพ้นกำหนด
  8. ทดสอบว่าระบบใช้งานได้จริง

เมื่อทำครบทุกข้อแล้ว Email Archive จะพร้อมใช้งาน หากผลลัพธ์ไม่เป็นไปตามที่คาด ให้ย้อนกลับไปดูหัวข้อปัญหาที่พบบ่อยด้านบน ซึ่งรวบรวมกรณีที่พบจริงจากการใช้งาน Email Archive ไว้แล้ว

อ่านเพิ่มเติมเกี่ยวกับ Email Archive

แชร์FacebookXLINELinkedIn

มีคำถามเรื่องบริการ? ติดต่อทีมงาน