Mailman

Mailman은 전자 우편 회의와 전자 소식 목록을 관리하기 위한 오픈소스 프로그램 입니다. 많은 오픈소스 메일링 리스트는 (모든 우분투 메일링 리스트를 포함한) 메일링 리스트 소프트웨어로 Mailman을 사용 합니다. 이것은 강력하고 설치와 유지보수가 쉽습니다.

설치

Mailman은 관리자와 사용자를 위한 웹 인터페이스를 제공 합니다. 그러므로, 그것은 mod_perl 지원을 하는 아파치를 필요로 합니다. Mailman은 이메일을 보내고 받기 위한 외부 메일 서버를 사용 합니다. 다음의 메일 서버와 완벽하게 동작 합니다:

  • Postfix

  • Exim

  • Sendmail

  • Qmail

우리는 어떻게 mailman, 아파치 웹 서버와 Exim 메일 서버를 설치하는지를 봅니다. 만약 여러분이 mailman을 다른 메일 서버와 함께 설치하기를 원한다면, 참조 영역을 참고 하십시오.

아파치2

To install apache2 you refer to HTTPD Installation section for details.

Exim4

Exim4를 설치하려면 터미널에서 다음을 입력하세요:

sudo apt-get install exim4
sudo apt-get install exim4-base
sudo apt-get install exim4-config

exim4가 설치되고 나면, 설정 파일이 /etc/exim4 디렉토리에 저장됩니다. 우분투에서는 기본적으로 exim4 설정 파일이 여러 개로 나누어져 있습니다. 이 기능을 변경하려면 /etc/exim4/update-exim4.conf 파일에 있는 다음 변수를 수정하세요:

  • dc_use_split_config='true'

Mailman

Mailman 을 설치하기 위하여, 터미널 프롬프트에서 다음 명령을 실행 합니다:

sudo apt-get install mailman 

이것은 설치 파일을 /var/lib/mailman 디렉토리 내로 복사하고, /usr/lib/cgi-bin/mailman 디렉토리 내에 CGI 스크립트를 설치 합니다. list 리눅스 사용자를 만들고, list 리눅스 그룹도 만듭니다. mailman 프로세스는 이 사용자에 의하여 소유 됩니다.

설정

이 영역에서는 여러분이 mailman, apache2, 그리고 exim4를 성공적으로 설치하였다고 가정 합니다. 이제 여러분은 단지 그것들을 설정할 필요가 있습니다.

아파치2

아파치2가 설치되면, /etc/apache2/apache2.conf 파일에 다음의 줄들을 추가할 수 있습니다:

Alias /images/mailman/ "/usr/share/images/mailman/"
Alias /pipermail/ "/var/lib/mailman/archives/public/"

Mailman은 CGI 스크립트를 사용하기 위하여 아파치2를 이용 합니다. 메일맨 스크립트는 /usr/lib/cgi-bin/mailman 디렉토리에 설치 됩니다. 그러므로 그 메일맨 url은 http://hostname/cgi-bin/mailman/ 이 됩니다. 만약 변경하기를 원한다면, /etc/apache2/apache2.conf 파일에서 바꿀 수 있습니다.

Exim4

Exim4를 설치한 후, 터미널 프롬프트에서 다음 명령을 사용하여 Exim 서버를 시작할 수 있습니다:

sudo apt-get /etc/init.d/exim4 start

exim4와 함께 mailman이 동작하게 만들려면, exim4를 설정하는 것이 필요 합니다. 앞에 언급된 것과 같이, 기본 설정으로, exim4는 다른 종류의 복수 설정 파일들을 사용 합니다. 자세한 것은 Exim 웹 사이트를 참조 하십시오. mailman을 실행하기 위하여, 다음 설정 종류에 대한 새로운 설정 파일을 추가하여야 합니다:

  • Main

  • Transport

  • Router

Exim은 모든 이 작은 설정 파일들을 정렬하여 주 설정 파일을 만듭니다. 그러므로, 이 설정 파일의 순서는 매우 중요 합니다.

Main

Main 종류에 속하는 모든 설정 파일들은 /etc/exim4/conf.d/main/ 디렉토리 내에 저장 됩니다. 04_exim4-config_mailman 이란 이름의 새 파일에 다음의 내용을 추가할 수 있습니다:

# start
# Home dir for your Mailman installation -- aka Mailman's prefix
# directory.
# On Ubuntu this should be "/var/lib/mailman"
# This is normally the same as ~mailman
MM_HOME=/var/lib/mailman
#
# User and group for Mailman, should match your --with-mail-gid
# switch to Mailman's configure script. Value is normally "mailman"
MM_UID=list
MM_GID=list
#
# Domains that your lists are in - colon separated list
# you may wish to add these into local_domains as well
domainlist mm_domains=hostname.com
#
# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
#
# These values are derived from the ones above and should not need
# editing unless you have munged your mailman installation
#
# The path of the Mailman mail wrapper script
MM_WRAP=MM_HOME/mail/mailman
#
# The path of the list config file (used as a required file when
# verifying list addresses)
MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck
# end

Transport

Transport 종류에 속하는 모든 설정 파일들은 /etc/exim4/conf.d/transport/ 디렉토리 내에 저장 됩니다. 40_exim4-config_mailman 이란 이름의 새 파일에 다음의 내용을 추가할 수 있습니다:

  mailman_transport:
   driver = pipe
   command = MM_WRAP \
               '${if def:local_part_suffix \
                     {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
                     {post}}' \
               $local_part
    current_directory = MM_HOME
    home_directory = MM_HOME
    user = MM_UID
    group = MM_GID

Router

Router 종류에 속하는 모든 설정 파일들은 /etc/exim4/conf.d/router/ 디렉토리 내에 저장 됩니다. 101_exim4-config_mailman 이란 이름의 새 파일에 다음의 내용을 추가할 수 있습니다:

  mailman_router:
   driver = accept
   require_files = MM_HOME/lists/$local_part/config.pck
   local_part_suffix_optional
   local_part_suffix = -bounces : -bounces+* : \
                       -confirm+* : -join : -leave : \
                       -owner : -request : -admin
   transport = mailman_transport
[주의]

Main과 Transport 설정 파일들의 순서는 어느 순서가 되도 무방 합니다. 그러나, Router 설정 파일의 순서는 반드시 똑같아야 합니다. 이 특정 파일은 200_exim4-config_primary 파일 이전에 반드시 나타나야 합니다. 이 두 설정 파일은 같은 종류의 정보를 가지고 있습니다. 첫 번째 파일이 우선권을 가집니다. 더 자세한 것은, 참조 영역을 참고 하십시오.

Mailman

mailman을 설치한 후, 다음 명령을 사용하여 그것을 실행할 수 있습니다:

sudo /etc/init.d/mailman start

mailman을 설치한 후, 기본 설정 메일링 리스트를 만들어야 합니다. 메일링 리스트를 만들기 위하여 다음 명령을 실행 합니다:

sudo /usr/sbin/newlist mailman
  Enter the email address of the person running the list: bhuvan at ubuntu.com
  Initial mailman password:
  To finish creating your mailing list, you must edit your /etc/aliases (or
  equivalent) file by adding the following lines, and possibly running the
  `newaliases' program:

  ## mailman mailing list
  mailman: "|/var/lib/mailman/mail/mailman post mailman"
  mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
  mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
  mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
  mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
  mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
  mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
  mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
  mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
  mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"

  Hit enter to notify mailman owner...

  # 

우리는 exim이 mailman에서 오는 모든 이메일을 인식하도록 설정 하였습니다. 그러므로, /etc/aliases 파일 내에 어떠한 새로운 항목을 만드는 것은 필수적이지 않습니다. 만약 여러분이 그 설정 파일에 어떠한 변경을 하였다면, 다음 영역을 계속하기 전에 그 서비스들을 재 시작하는 것을 확신 하십시오.

관리

우리는 여러분이 기본 설치된 상태에 있다고 가정하겠습니다. mailman cgi 스크립트는 여전히 /usr/lib/cgi-bin/mailman/ 디렉토리에 존재합니다. mailman은 웹 기반의 관리 기능을 제공합니다. 이 페이지에 접근하기 위해서는 웹 브라우저에서 다음 url을 입력합니다:

http://hostname/cgi-bin/mailman/admin

기본 메일링 리스트인 mailman이 화면에 나타날 것입니다. 메일링 리스트의 이름을 클릭하면 여러분의 인증을 위해 암호를 물어볼 것입니다. 올바른 암호를 입력하면 이 메일링 리스트의 관리를 위한 설정을 변경할 수 있습니다. 새로운 메일링 리스트를 생성하기 위해서는 명령행 유틸리티를 이용할 수 있습니다(/usr/sbin/newlist). 아니면 웹 인터페이스를 통해서도 새로운 메일링 리스트를 생성할 수 있습니다.

사용자

Mailman은 사용자에게 웹 기반의 인터페이스를 제공 합니다. 이 페이지를 접근하려면, 다음 url을 여러분의 브라우저에서 사용 합니다:

http://hostname/cgi-bin/mailman/listinfo

기본 설정된 메일링 리스트, mailman 가 이 화면에 나타납니다. 그 메일링 리스트 이름을 클릭하면, 가입 양식을 보입니다. 여러분의 이메일 주소, 이름(선택사항) 그리고 암호를 가입하기 위하여 입력 합니다. 여러분에게 이메일 초대가 보내집니다. 가입하기 위하여 그 이메일의 절차를 따릅니다.

참조

GNU Mailman - 설치 매뉴얼

하우투 - Exim 4와 Mailman 2.1을 함께 사용하기