안전한 뉴스레터 전달을 위한 이메일 전달 기능이 있는 Listmonk

이 가이드는 개발자에게 설정에 대한 단계별 지침을 제공합니다. 리스트몽크강력한 오픈 소스 뉴스레터 및 메일링 목록 관리자를 사용합니다. 이메일 전달 SMTP 제공업체로 사용됩니다. 이러한 조합을 통해 안전하고 개인 정보 보호되며 안정적인 이메일 전송을 보장하는 동시에 캠페인을 효과적으로 관리할 수 있습니다.

  • 리스트몽크: 구독자 관리, 목록 구성, 캠페인 생성 및 성과 추적을 처리합니다.
  • 이메일 전달: SPF, DKIM, DMARC, TLS 암호화와 같은 내장 보안 기능을 사용하여 실제 이메일 전송을 처리하는 보안 SMTP 서버 역할을 합니다.

이 두 가지를 통합하면 Forward Email의 강력한 전송 시스템을 활용하는 동시에 데이터와 인프라에 대한 완벽한 제어권을 확보할 수 있습니다.

  • 오픈 소스: Listmonk와 Forward Email의 원칙은 모두 투명성과 통제력을 강조합니다. Listmonk는 사용자가 직접 호스팅하고 데이터를 소유합니다.
  • 개인정보 보호 중심: Forward Email은 개인정보 보호를 핵심으로 구축되었으며, 데이터 보관을 최소화하고 안전한 전송에 중점을 두고 있습니다.
  • 비용 효율적: Listmonk는 무료이고 Forward Email은 넉넉한 무료 혜택과 저렴한 유료 플랜을 제공하여 예산에 맞는 솔루션입니다.
  • 확장성: Listmonk는 성능이 뛰어나고 Forward Email의 인프라는 대규모로 안정적으로 전달되도록 설계되었습니다.
  • 개발자 친화적: Listmonk는 강력한 API를 제공하고 Forward Email은 간단한 SMTP 통합과 웹훅을 제공합니다.

시작하기 전에 다음 사항이 있는지 확인하세요.

  • 최신 Linux 배포판(Ubuntu 20.04 이상 권장)을 실행하는 가상 사설 서버(VPS), 최소 1개의 CPU와 1GB RAM(2GB 권장)이 필요합니다.
    • 서비스 제공자가 필요하신가요? 다음을 확인하세요. 추천 VPS 목록.
  • 본인이 제어하는 도메인 이름(DNS 접근 필요).
  • 활성 계정 이메일 전달.
  • 루트 또는 sudo VPS에 접속하세요.
  • Linux 명령줄 작업에 대한 기본적인 지식이 필요합니다.

이 단계에서는 Docker와 Docker Compose를 사용하여 VPS에 Listmonk를 설치하는 방법을 안내합니다.

1. 서버 업데이트

시스템의 패키지 목록과 설치된 패키지가 최신 상태인지 확인하세요.

sudo apt update && sudo apt upgrade -y

2. 종속성 설치

Docker, Docker Compose, UFW(Uncomplicated Firewall)를 설치합니다.

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 액세스 구성

HTTPS를 통해 Listmonk를 실행하는 것은 보안에 매우 중요합니다. 두 가지 주요 옵션이 있습니다.

도메인의 DNS가 Cloudflare에서 관리되는 경우, Cloudflare의 프록시 기능을 활용하여 간편한 HTTPS를 사용할 수 있습니다.

  1. 포인트 DNS: 생성 A Listmonk 하위 도메인에 대한 Cloudflare의 레코드(예: listmonk.yourdomain.com) VPS IP 주소를 가리킵니다. 프록시 상태 로 설정됩니다 프록시됨 (주황색 구름).
  2. Docker Compose 수정: 편집하다 docker-compose.yml 다운로드한 파일:
    sed -i 's/9000:9000/80:9000/' docker-compose.yml
    
    이를 통해 Listmonk는 포트 80을 통해 내부적으로 접근할 수 있으며, Cloudflare는 HTTPS로 프록시하고 보안을 적용할 수 있습니다.

옵션 B: 역방향 프록시 사용(Nginx, Caddy 등)

또는 VPS에 Nginx나 Caddy와 같은 역방향 프록시를 설정하여 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 애플리케이션과 데이터베이스 컨테이너를 시작합니다. 처음에는 1~2분 정도 걸릴 수 있습니다.

Listmonk에 접속하세요: 이제 구성한 도메인을 통해 Listmonk 웹 인터페이스에 액세스할 수 있어야 합니다(예: https://listmonk.yourdomain.com).

7. Listmonk에서 전달 이메일 SMTP 구성

다음으로, Forward Email 계정을 사용하여 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 Forward Email을 통한 보안 연결을 위해 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. 더 아래로 스크롤하세요 웹훅 서명 페이로드 확인 키 부분.
  6. 생성된 확인 키입니다. Listmonk에서 이 키가 필요합니다.
  7. 전달 이메일 도메인 설정에서 변경 사항을 저장합니다.

Listmonk 설정

  1. Listmonk 관리자 패널에서 다음으로 이동하세요. 설정 -> 바운스.
  2. 할 수 있게 하다 반송 처리 활성화.
  3. 할 수 있게 하다 바운스 웹훅 활성화.
  4. 아래로 스크롤하세요 웹훅 제공자 부분.
  5. 할 수 있게 하다 이메일 전달.
  6. 붙여넣기 웹훅 서명 페이로드 확인 키 전달 이메일 대시보드에서 복사한 내용 전달 이메일 키 필드.
  7. 딸깍 하는 소리 저장 페이지 하단에 있습니다.
  8. 반송 처리가 설정되었습니다! Forward Email이 Listmonk에서 보낸 이메일의 반송을 감지하면 웹훅을 통해 Listmonk 인스턴스에 알리고, Listmonk는 해당 구독자를 표시합니다.
  9. 아래 단계를 완료하세요. 테스트 모든 것이 제대로 작동하는지 확인하세요.

Listmonk의 핵심 기능에 대한 간략한 개요는 다음과 같습니다.

메일링 리스트 만들기

  • 이동 기울기 사이드바에서.
  • 딸깍 하는 소리 새 목록.
  • 세부 정보(이름, 유형: 공개/비공개, 설명, 태그)를 입력하세요. 저장.

구독자 추가

  • 로 이동합니다 구독자 부분.
  • 구독자를 추가할 수 있습니다.
    • 수동으로: 클릭 신규 가입자.
    • 수입: 클릭 구독자 가져오기 CSV 파일을 업로드합니다.
    • API: 프로그래밍 방식의 추가에는 Listmonk API를 사용하세요.
  • 목록을 만들거나 가져오는 동안 하나 이상의 목록에 구독자를 할당합니다.
  • 모범 사례: 이중 옵트인 프로세스를 사용하세요. 아래에서 구성하세요. 설정 -> 옵트인 및 구독.

캠페인 만들기 및 보내기

  • 이동 캠페인 -> 새로운 캠페인.
  • 캠페인 세부 정보(이름, 제목, 보낸 사람 이메일, 보낼 목록)를 입력합니다.
  • 콘텐츠 유형(서식 있는 텍스트/HTML, 일반 텍스트, 원시 HTML)을 선택하세요.
  • 이메일 내용을 작성하세요. 다음과 같은 템플릿 변수를 사용할 수 있습니다. {{ .Subscriber.Email }} 또는 {{ .Subscriber.FirstName }}.
  • 항상 먼저 테스트 이메일을 보내보세요! "테스트 보내기" 옵션을 사용하여 받은 편지함에서 이메일을 미리 보세요.
  • 만족하시면 클릭하세요 캠페인 시작 즉시 보내거나 나중에 보내도록 예약하세요.

  • SMTP 배달: Listmonk의 SMTP 설정 페이지를 통해 정기적으로 테스트 이메일을 보내고 캠페인을 테스트하여 이메일이 올바르게 전달되는지 확인하세요.
  • 바운스 처리: 알려진 유효하지 않은 이메일 주소(예: bounce-test@yourdomain.com (실제 통계가 없다면 결과는 다를 수 있습니다.) 잠시 후 Listmonk에서 캠페인 통계를 확인하여 반송이 등록되었는지 확인하세요.
  • 이메일 헤더: 다음과 같은 도구를 사용하세요 메일 테스터 또는 이메일 헤더를 수동으로 검사하여 SPF, DKIM, DMARC가 통과하는지 확인하고, 이메일 전달을 통해 올바르게 설정되었는지 확인하세요.
  • 이메일 로그 전달: SMTP 서버에서 배달 문제가 발생한 것으로 의심되는 경우 전달 이메일 대시보드 로그를 확인하세요.

  • 템플릿화: Listmonk는 Go의 템플릿 엔진을 사용합니다. 고급 개인화에 대한 자세한 내용은 해당 문서를 참조하세요. {{ .Subscriber.Attribs.your_custom_field }}.
  • API: Listmonk는 목록, 구독자, 캠페인, 템플릿 등을 관리하기 위한 포괄적인 REST API를 제공합니다. Listmonk 인스턴스 바닥글에서 API 설명서 링크를 확인하세요.
  • 사용자 정의 필드: 사용자 정의 구독자 필드 정의 설정 -> 구독자 필드 추가 데이터를 저장합니다.
  • 웹후크: 반송 외에도 Listmonk는 다른 이벤트(예: 구독)에 대한 웹훅을 보낼 수 있으므로 다른 시스템과 통합이 가능합니다.

Listmonk의 셀프 호스팅 기능과 Forward Email의 안전하고 개인 정보를 보호하는 전송 기능을 통합하여 강력하고 윤리적인 이메일 마케팅 플랫폼을 구축할 수 있습니다. 높은 전달률과 자동화된 보안 기능의 이점을 누리면서 잠재 고객 데이터에 대한 완전한 소유권을 확보할 수 있습니다.

이러한 설정은 독점적인 이메일 서비스에 비해 확장 가능하고 비용 효율적이며 개발자 친화적인 대안을 제공하며, 오픈 소스 소프트웨어와 사용자 개인 정보 보호의 정신에 완벽하게 부합합니다.

즐거운 발송 되세요! 🚀