Listmonk พร้อมระบบส่งต่ออีเมลสำหรับการส่งจดหมายข่าวที่ปลอดภัย

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

  • ลิสต์มงก์:จัดการการจัดการสมาชิก การจัดระเบียบรายชื่อ การสร้างแคมเปญ และการติดตามประสิทธิภาพ
  • ส่งต่ออีเมล:ทำหน้าที่เป็นเซิร์ฟเวอร์ SMTP ที่ปลอดภัย จัดการการส่งอีเมลจริงด้วยฟีเจอร์ความปลอดภัยในตัว เช่น SPF, DKIM, DMARC และการเข้ารหัส TLS

ด้วยการบูรณาการทั้งสองสิ่งนี้เข้าด้วยกัน คุณจะยังคงควบคุมข้อมูลและโครงสร้างพื้นฐานของคุณได้อย่างสมบูรณ์ พร้อมทั้งใช้ประโยชน์จากระบบส่งมอบอันแข็งแกร่งของ Forward Email

  • โอเพ่นซอร์ส:ทั้ง Listmonk และหลักการเบื้องหลัง Forward Email เน้นย้ำถึงความโปร่งใสและการควบคุม คุณเป็นผู้โฮสต์ Listmonk เองและเป็นเจ้าของข้อมูลของคุณเอง
  • เน้นความเป็นส่วนตัว:การส่งต่ออีเมลนั้นสร้างขึ้นโดยยึดหลักความเป็นส่วนตัวเป็นสำคัญ โดยลดการเก็บรักษาข้อมูลให้เหลือน้อยที่สุดและเน้นที่การส่งข้อมูลอย่างปลอดภัย
  • คุ้มค่าคุ้มราคา:Listmonk ให้บริการฟรี และ Forward Email นำเสนอบริการฟรีที่หลากหลายและแผนการชำระเงินที่คุ้มค่า ทำให้เป็นโซลูชันที่เป็นมิตรกับงบประมาณ
  • ความสามารถในการปรับขนาด:Listmonk มีประสิทธิภาพสูง และโครงสร้างพื้นฐานของ Forward Email ได้รับการออกแบบมาเพื่อการส่งมอบที่เชื่อถือได้ในระดับขนาดใหญ่
  • เป็นมิตรกับนักพัฒนา:Listmonk นำเสนอ API ที่แข็งแกร่ง และ Forward Email นำเสนอการรวม SMTP และเว็บฮุกที่ตรงไปตรงมา

ก่อนที่คุณจะเริ่มต้น ให้แน่ใจว่าคุณมีสิ่งต่อไปนี้:

  • เซิร์ฟเวอร์ส่วนตัวเสมือน (VPS) ที่ใช้ระบบปฏิบัติการ Linux ล่าสุด (แนะนำ Ubuntu 20.04 ขึ้นไป) โดยมี CPU อย่างน้อย 1 ตัวและ RAM 1 GB (แนะนำ 2 GB)
  • ชื่อโดเมนที่คุณควบคุม (จำเป็นต้องมีการเข้าถึง DNS)
  • บัญชีที่ใช้งานอยู่กับ ส่งต่ออีเมล.
  • รากหรือ sudo การเข้าถึง VPS ของคุณ
  • ความคุ้นเคยเบื้องต้นกับการใช้งานบรรทัดคำสั่งของ Linux

ขั้นตอนเหล่านี้จะแนะนำคุณในการติดตั้ง Listmonk โดยใช้ Docker และ Docker Compose บน VPS ของคุณ

1. อัปเดตเซิร์ฟเวอร์ของคุณ

ตรวจสอบให้แน่ใจว่ารายการแพ็กเกจระบบและแพ็กเกจที่ติดตั้งของคุณเป็นข้อมูลล่าสุด

sudo apt update && sudo apt upgrade -y

2. ติดตั้งส่วนที่ต้องพึ่งพา

ติดตั้ง Docker, Docker Compose และ UFW (ไฟร์วอลล์ที่ไม่ซับซ้อน)

sudo apt install -y docker.io docker-compose ufw

3. ดาวน์โหลดการกำหนดค่า Listmonk

สร้างไดเรกทอรีสำหรับ Listmonk และดาวน์โหลดอย่างเป็นทางการ docker-compose.yml ไฟล์.

mkdir listmonk && cd listmonk
curl -Lo docker-compose.yml https://raw.githubusercontent.com/knadh/listmonk/master/docker-compose.yml

ไฟล์นี้กำหนดคอนเทนเนอร์แอปพลิเคชัน Listmonk และคอนเทนเนอร์ฐานข้อมูล PostgreSQL ที่จำเป็น

4. กำหนดค่าไฟร์วอลล์ (UFW)

อนุญาตให้มีการรับส่งข้อมูลที่จำเป็น (SSH, HTTP, HTTPS) ผ่านไฟร์วอลล์ หาก SSH ของคุณทำงานบนพอร์ตที่ไม่ใช่มาตรฐาน ให้ปรับให้เหมาะสม

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

ยืนยันการเปิดใช้งานไฟร์วอลล์เมื่อได้รับแจ้ง

5. กำหนดค่าการเข้าถึง HTTPS

การรัน Listmonk ผ่าน HTTPS เป็นสิ่งสำคัญสำหรับความปลอดภัย คุณมีสองตัวเลือกหลัก:

หาก DNS ของโดเมนของคุณได้รับการจัดการโดย Cloudflare คุณสามารถใช้ประโยชน์จากคุณสมบัติพร็อกซีของพวกเขาเพื่อให้ใช้ HTTPS ได้อย่างง่ายดาย

  1. จุด DNS: สร้าง A บันทึกใน Cloudflare สำหรับโดเมนย่อย Listmonk ของคุณ (เช่น listmonk.yourdomain.com) ชี้ไปที่ที่อยู่ IP VPS ของคุณ ตรวจสอบให้แน่ใจว่า สถานะพร็อกซี ถูกตั้งเป็น พร็อกซี (เมฆสีส้ม)
  2. ปรับเปลี่ยน Docker Compose: แก้ไข docker-compose.yml ไฟล์ที่คุณดาวน์โหลด:
    sed -i 's/9000:9000/80:9000/' docker-compose.yml
    
    ซึ่งทำให้สามารถเข้าถึง Listmonk ได้ภายในพอร์ต 80 ซึ่ง Cloudflare สามารถทำพร็อกซีและรักษาความปลอดภัยด้วย HTTPS ได้

ตัวเลือก B: การใช้พร็อกซีแบบย้อนกลับ (Nginx, Caddy เป็นต้น)

อีกวิธีหนึ่งคือคุณสามารถตั้งค่าพร็อกซีแบบย้อนกลับเช่น Nginx หรือ Caddy บน VPS ของคุณเพื่อจัดการการยุติ HTTPS และคำขอพร็อกซีไปยัง Listmonk (ทำงานบนพอร์ต 9000 ตามค่าเริ่มต้น)

  • คงไว้ซึ่งค่าเริ่มต้น ports: - "127.0.0.1:9000:9000" ใน docker-compose.yml เพื่อให้แน่ใจว่า Listmonk สามารถเข้าถึงได้เฉพาะในเครื่องเท่านั้น
  • กำหนดค่าพร็อกซีแบบย้อนกลับที่คุณเลือกเพื่อฟังที่พอร์ต 80 และ 443 จัดการการรับใบรับรอง SSL (เช่น ผ่าน Let's Encrypt) และส่งต่อการรับส่งข้อมูลไปยัง http://127.0.0.1:9000.
  • การตั้งค่าพร็อกซีแบบย้อนกลับโดยละเอียดนั้นเกินขอบเขตของคู่มือนี้ แต่มีบทช่วยสอนมากมายให้บริการทางออนไลน์

6. เริ่มต้น Listmonk

นำทางกลับไปยังของคุณ listmonk ไดเร็กทอรี (หากคุณยังไม่ได้อยู่ที่นั่น) และเริ่มคอนเทนเนอร์ในโหมดแยกออก

cd ~/listmonk # Or the directory where you saved docker-compose.yml
docker compose up -d

Docker จะดาวน์โหลดรูปภาพที่จำเป็นและเริ่มต้นแอปพลิเคชัน Listmonk และคอนเทนเนอร์ฐานข้อมูล อาจใช้เวลาหนึ่งหรือสองนาทีในครั้งแรก

การเข้าถึง Listmonk:ตอนนี้คุณควรสามารถเข้าถึงอินเทอร์เฟซเว็บ Listmonk ได้ผ่านโดเมนที่คุณกำหนดค่าไว้ (เช่น https://listmonk.yourdomain.com).

7. กำหนดค่าการส่งต่ออีเมล SMTP ใน Listmonk

ขั้นตอนต่อไป ให้กำหนดค่า Listmonk เพื่อส่งอีเมลโดยใช้บัญชีส่งต่ออีเมลของคุณ

  1. เปิดใช้งาน SMTP ในการส่งต่ออีเมล: ตรวจสอบให้แน่ใจว่าคุณได้สร้างข้อมูลประจำตัว SMTP ไว้ในแดชบอร์ดบัญชีส่งต่ออีเมลของคุณแล้ว ทำตามขั้นตอนดังต่อไปนี้ คู่มือการส่งต่ออีเมลสำหรับการส่งอีเมลด้วยโดเมนที่กำหนดเองผ่าน SMTP หากคุณยังไม่ได้ทำ
  2. กำหนดค่า Listmonkเข้าสู่ระบบแผงควบคุมผู้ดูแลระบบ Listmonk ของคุณ
    • นำทางไปที่ การตั้งค่า -> SMTP.

    • Listmonk มีการสนับสนุนในตัวสำหรับการส่งต่ออีเมล เลือก ส่งต่ออีเมล์ จากรายชื่อผู้ให้บริการหรือป้อนรายละเอียดต่อไปนี้ด้วยตนเอง:

      การตั้งค่าค่า
      เจ้าภาพsmtp.forwardemail.net
      ท่าเรือ465
      โปรโตคอลการตรวจสอบสิทธิ์LOGIN
      ชื่อผู้ใช้อีเมลส่งต่อของคุณ ชื่อผู้ใช้ SMTP
      รหัสผ่านอีเมลส่งต่อของคุณ รหัสผ่าน SMTP
      TLSSSL/TLS
      จากอีเมล์ที่คุณต้องการ From ที่อยู่ (เช่น newsletter@yourdomain.com) ตรวจสอบให้แน่ใจว่าโดเมนนี้ได้รับการกำหนดค่าในการส่งต่ออีเมล
    • สำคัญ: ใช้พอร์ตเสมอ 465 กับ SSL/TLS สำหรับการเชื่อมต่อที่ปลอดภัยด้วยการส่งต่ออีเมล อย่าใช้ STARTTLS (พอร์ต 587)

    • คลิก บันทึก.

  3. ส่งอีเมลทดสอบ:ใช้ปุ่ม "ส่งอีเมลทดสอบ" ในหน้าการตั้งค่า SMTP ป้อนที่อยู่ผู้รับที่คุณสามารถเข้าถึงได้และคลิก ส่ง. ตรวจสอบว่าอีเมลมาถึงกล่องจดหมายของผู้รับ

8. กำหนดค่าการประมวลผลการตีกลับ

การประมวลผลการตีกลับช่วยให้ Listmonk สามารถจัดการอีเมลที่ไม่สามารถส่งได้โดยอัตโนมัติ (เช่น เนื่องจากที่อยู่อีเมลไม่ถูกต้อง) การส่งต่ออีเมลจะให้เว็บฮุกเพื่อแจ้งให้ Listmonk ทราบเกี่ยวกับการตีกลับ

การตั้งค่าการส่งต่ออีเมล์

  1. เข้าสู่ระบบของคุณ แผงควบคุมการส่งต่ออีเมล์.
  2. นำทางไปที่ โดเมนเลือกโดเมนที่คุณกำลังใช้ในการส่ง และไปที่ การตั้งค่า หน้าหนังสือ.
  3. เลื่อนลงไปที่ URL เว็บฮุกเด้ง ส่วน.
  4. ป้อน URL ต่อไปนี้แทน <your_listmonk_domain> ด้วยโดเมนหรือโดเมนย่อยจริงที่คุณสามารถเข้าถึงอินสแตนซ์ Listmonk ได้:
    https://<your_listmonk_domain>/webhooks/service/forwardemail
    
    ตัวอย่าง: https://listmonk.yourdomain.com/webhooks/service/forwardemail
  5. เลื่อนลงไปอีกเพื่อ คีย์การยืนยันเพย์โหลดลายเซ็น Webhook ส่วน.
  6. สำเนา คีย์ยืนยันที่สร้างขึ้น คุณจะต้องใช้สิ่งนี้ใน Listmonk
  7. บันทึกการเปลี่ยนแปลงในการตั้งค่าโดเมนการส่งต่ออีเมลของคุณ

การตั้งค่า Listmonk

  1. ในแผงควบคุมผู้ดูแลระบบ Listmonk ของคุณ ไปที่ การตั้งค่า -> การตีกลับ.
  2. เปิดใช้งาน เปิดใช้งานการประมวลผลการตีกลับ.
  3. เปิดใช้งาน เปิดใช้งานเว็บฮุกเด้ง.
  4. เลื่อนลงไปที่ ผู้ให้บริการเว็บฮุก ส่วน.
  5. เปิดใช้งาน ส่งต่ออีเมล.
  6. วาง คีย์การยืนยันเพย์โหลดลายเซ็น Webhook คุณคัดลอกจากแดชบอร์ดการส่งต่ออีเมลไปยัง คีย์การส่งต่ออีเมล์ สนาม.
  7. คลิก บันทึก ที่ด้านล่างสุดของหน้า
  8. กำหนดค่าการประมวลผลการตีกลับแล้ว! เมื่อ Forward Email ตรวจพบการตีกลับสำหรับอีเมลที่ส่งโดย Listmonk ระบบจะแจ้งให้อินสแตนซ์ Listmonk ของคุณทราบผ่านเว็บฮุก และ Listmonk จะทำเครื่องหมายผู้สมัครสมาชิกตามนั้น
  9. ดำเนินการตามขั้นตอนต่อไปนี้ให้ครบถ้วน การทดสอบ เพื่อให้แน่ใจว่าทุกอย่างทำงานได้

ต่อไปนี้เป็นภาพรวมโดยย่อของฟังก์ชันหลักของ Listmonk:

สร้างรายการส่งจดหมาย

  • ไปที่ รายการ ในแถบด้านข้าง
  • คลิก รายการใหม่.
  • กรอกรายละเอียด (ชื่อ, ประเภท: สาธารณะ/ส่วนตัว, คำอธิบาย, แท็ก) และ บันทึก.

เพิ่มสมาชิก

  • นำทางไปที่ สมาชิก ส่วน.
  • คุณสามารถเพิ่มสมาชิกได้:
    • ด้วยตนเอง:คลิก สมาชิกใหม่.
    • การนำเข้า:คลิก นำเข้าสมาชิก เพื่ออัพโหลดไฟล์ CSV
    • API:ใช้ Listmonk API สำหรับการเพิ่มเติมตามโปรแกรม
  • กำหนดสมาชิกให้กับรายการหนึ่งรายการหรือมากกว่าในระหว่างการสร้างหรือการนำเข้า
  • แนวทางปฏิบัติที่ดีที่สุด: ใช้กระบวนการสมัครแบบสองขั้นตอน กำหนดค่านี้ภายใต้ การตั้งค่า -> การสมัครและการสมัครรับข้อมูล.

สร้างและส่งแคมเปญ

  • ไปที่ การรณรงค์ -> แคมเปญใหม่.
  • กรอกรายละเอียดแคมเปญ (ชื่อ, หัวข้อ, จากอีเมล, รายการที่จะส่งถึง)
  • เลือกประเภทเนื้อหาของคุณ (ข้อความที่อุดมไปด้วย HTML, ข้อความธรรมดา, HTML แบบดิบ)
  • แต่งเนื้อหาอีเมลของคุณ คุณสามารถใช้ตัวแปรเทมเพลตได้ เช่น {{ .Subscriber.Email }} หรือ {{ .Subscriber.FirstName }}.
  • อย่าลืมส่งอีเมลทดสอบก่อนเสมอ! ใช้ตัวเลือก "ส่งการทดสอบ" เพื่อดูตัวอย่างอีเมลในกล่องจดหมายของคุณ
  • เมื่อพอใจแล้วให้คลิก เริ่มแคมเปญ เพื่อส่งทันทีหรือกำหนดเวลาไว้ส่งในภายหลัง

  • การจัดส่ง SMTPส่งอีเมลทดสอบเป็นประจำผ่านเพจการตั้งค่า SMTP ของ Listmonk และทดสอบแคมเปญเพื่อให้แน่ใจว่าอีเมลถูกส่งอย่างถูกต้อง
  • การจัดการการตีกลับ: ส่งแคมเปญทดสอบไปยังที่อยู่อีเมลที่ไม่ถูกต้องที่ทราบ (เช่น bounce-test@yourdomain.com หากคุณไม่มีของจริงอยู่ในมือ ผลลัพธ์อาจแตกต่างกันไป ตรวจสอบสถิติแคมเปญใน Listmonk หลังจากนั้นสักครู่ เพื่อดูว่ามีการลงทะเบียนการตีกลับหรือไม่
  • ส่วนหัวอีเมล:ใช้เครื่องมือเช่น ทดสอบเมล หรือตรวจสอบส่วนหัวอีเมลด้วยตนเองเพื่อยืนยันว่า SPF, DKIM และ DMARC ผ่านไปได้ โดยระบุการตั้งค่าที่ถูกต้องผ่านการส่งต่ออีเมล
  • ส่งต่อบันทึกอีเมล์ตรวจสอบบันทึกแดชบอร์ดการส่งต่ออีเมลของคุณหากคุณสงสัยว่ามีปัญหาการจัดส่งที่มาจากเซิร์ฟเวอร์ SMTP

  • การทำเทมเพลต:Listmonk ใช้เครื่องมือสร้างเทมเพลตของ Go ดูเอกสารประกอบสำหรับการปรับแต่งขั้นสูง: {{ .Subscriber.Attribs.your_custom_field }}.
  • API:Listmonk นำเสนอ REST API ที่ครอบคลุมสำหรับการจัดการรายการ ผู้สมัคร แคมเปญ เทมเพลต และอื่นๆ ค้นหาลิงก์เอกสาร API ในส่วนท้ายของอินสแตนซ์ Listmonk ของคุณ
  • ฟิลด์ที่กำหนดเอง: กำหนดฟิลด์สมาชิกที่กำหนดเองภายใต้ การตั้งค่า -> ฟิลด์สมาชิก เพื่อเก็บข้อมูลเพิ่มเติม
  • เว็บฮุคนอกจากการตีกลับ Listmonk ยังสามารถส่งเว็บฮุกสำหรับเหตุการณ์อื่นๆ ได้ (เช่น การสมัครสมาชิก) ช่วยให้สามารถบูรณาการกับระบบอื่นๆ ได้

ด้วยการผสานรวมพลังของ Listmonk ที่โฮสต์เองเข้ากับการส่งอีเมลแบบส่งต่อที่ปลอดภัยและเคารพความเป็นส่วนตัว คุณจะสร้างแพลตฟอร์มการตลาดทางอีเมลที่แข็งแกร่งและมีจริยธรรมได้ คุณจะยังคงเป็นเจ้าของข้อมูลของกลุ่มเป้าหมายของคุณโดยสมบูรณ์ในขณะที่ได้รับประโยชน์จากความสามารถในการส่งมอบสูงและคุณลักษณะด้านความปลอดภัยอัตโนมัติ

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

ส่งความสุข! 🚀