\documentclass{howto} \title{GNU Mailman - ���ȡ���ޥ˥奢��} \author{Barry Warsaw} \authoraddress{\email{barry(at)python.org}} \date{\today} \release{2.1} % software release, not documentation \setreleaseinfo{} % empty for final release \setshortversion{2.1} % major.minor only for software \begin{document} \maketitle % This makes the Abstract go on a separate page in the HTML version; % if a copyright notice is used, it should go immediately after this. % \ifhtml \chapter*{��\label{front}} \fi \begin{abstract} \noindent ����ʸ��� GNU Mailman �� POSIX �����ƥ� (��: \UNIX{}, MacOSX, GNU/Linux) �˥��ȡ��뤹����ˡ�����������ΤǤ�. ����Ū�ʥ��ȡ����� �����Ǥʤ�, ���ʤ������Ѥ��륦���֤ȥ�륵���Ф����礹�뤿��� �����ɥ饤���ޤ�Ǥ��ޤ�\footnote{ �����������������������ԡʵ��ϡ����ġˤδĶ��ˤ����Ƴ�ǧ�Ǥ�����ʬ �˸¤��Ƥ��ޤ�. }. \noindent GNU Mailman �Υ����֥����Ȥ� \url{http://www.list.org} �Ǥ�. \end{abstract} % The ugly "%begin{latexonly}" pseudo-environment supresses the table % of contents for HTML generation. % %begin{latexonly} \tableofcontents %end{latexonly} \section{���ȡ����ɬ����} GNU Mailman �� \UNIX{} �� MacOSX, GNU/Linux �Ȥ��ä� POSIX �˴𤯥����ƥ� �ΤۤȤ�ɤDz�ư���ޤ�. ���ߤΤȤ��� Windows �Ǥ�ư���ޤ���. ���ʤ��� ���������Ǥ����륵���Ф�ɬ�פȤ�, CGI/1.1 API �������������� �����Ф�ɬ�פǤ�. �����֥����Фˤ� \ulink{Apache}{http://httpd.apache.org} ��, �Ԥä���Ǥ�. ��륵���Фˤ� �㤨��, \ulink{Postfix}{http://www.postfix.org}, \ulink{Exim}{http://www.exim.org}, \ulink{Sendmail}{http://www.sendmail.org}, \ulink{qmail}{http://cr.yp.to/qmail.html} �ʤɤϤɤ��Ȥ��ޤ�. Mailman �������饤�ȡ��뤹��ˤ�, �������ƥ�����Τ���� �Ѥ����Ƥ��� ��å�\footnote{����: wrapper ... ������å�(����̾)��Ʊ�� �����פȤ�����̣�ʤΤ�, ���������Ƥߤޤ���} �ץ��������ۤ���Ȥ���, ANSI C ����ѥ��顼�� ɬ�פǤ�. \ulink{GNU C ����ѥ��� gcc}{http://gcc.gnu.org} �� 2.8.1 �ʹߤ� �С������Ǥ��ޤ������ޤ�. �����ƥ�ˤ� \ulink{Python}{http://www.python.org} ���ץ�� �ɤ����˥��ȡ��뤵��Ƥ��ʤ���Фʤ�ޤ���. Mailman 2.1 �ˤ� Python 2.1 �ޤ��Ϥ�����⿷������Τ�ɬ�פǤ�. Python 2.3 �ʾ��侩���ޤ�. \section{�����ƥॻ�åȥ��å�} Mailman ���եȥ������Υ��ȡ�������ˡ�����Υ桼���ȥ��롼�פ� �ɲ���Ͽ���뤳�Ȥǥ����ƥ�ν�����ɬ�פ�����ޤ�. ���Τ���, ������Υ��ƥåפ�¹Ԥ���ˤ� root �ˤʤ�ɬ�פ�����ޤ�. \subsection{���롼�פȥ桼�����ɲ�} Mailman ��, �ե�������ͭ��, �ץ����������餻�뤿���, ¾�ǻ��Ѥ���Ƥ��ʤ� �桼���ȥ��롼�פ�̾����ɬ�פȤ��ޤ�. Mailman �δ���Ū�ʥ������ƥ��� ���롼��ͭ���ε���(�ѡ��ߥå����)�˴𤤤Ƥ��ޤ�. ���ä�, ���Υ��ƥåפ� ������Ȥ��Ƥ������Ȥ����פǤ�\footnote{���ȡ��뤬��λ���Ƥ��� �ѡ��ߥå���������å����ƽ������뤳�Ȥ��Ǥ��ޤ�.}. ŵ��Ū�ˤ�, \code{mailman} �Ȥ���̾���Υ桼���ȥ��롼�פ�������뤳�Ȥˤʤ�ޤ�. \code{mailman} �桼���� \code{mailman} ���롼�פΥ��С��Ǥʤ���� �ʤ�ޤ���. Mailman �� \code{mailman} �桼���ȥ��롼�פβ���, set-group-id (setgid) �ӥåȤ�Ω�Ƥƥ��ȡ��뤵��ޤ�. �⤷, ����̾�������˻Ȥ��Ƥ����ʤ�, �̤Υ桼���ȥ��롼��̾�����֤��Ȥ� �Ǥ��ޤ���, \program{configure} �����餻��Ȥ��˳Ф��Ƥ����ʤ��Ȥ����ޤ���. �⤷, �̤Υ桼��̾��������ʤ�, ����� \program{configure} �� \longprogramopt{with-username} ���ץ����ǻ��ꤷ�ޤ�. �ޤ�, �̤� ���롼��̾����������ˤ�, \program{configure} �� \longprogramopt{with-username} ���ץ����ǻ��ꤷ�Ƥ�������. Linux �����ƥ�Ǥ�, ���Υ��ޥ�ɤǤ����Υ�������Ȥ�������뤳�Ȥ� �Ǥ��ޤ�. �����ѤΥ����ƥ�Υޥ˥奢��Ǿܺ٤��ǧ���Ƥ�������: \begin{verbatim} % groupadd mailman % useradd -c''GNU Mailman'' -s /no/shell -d /no/home -g mailman mailman \end{verbatim} \subsection{���ȡ���ǥ��쥯�ȥ�κ���\label{create-install-dir}} �̾�, Mailman ��ñ��Υǥ��쥯�ȥ�˥��ȡ��뤵��, �����ˤ� Mailman �����������ɤ�, �¹Ի��Υǡ���(�ꥹ�Ȥ���¸���)��ξ��������ޤ�. ��Ū�ʥץ������ե�������Ѳ�����ǡ����ե������ʬΥ����, �̤Υǥ��쥯�ȥ� ������뤳�Ȥ��ǽ�Ǥ�. �����ǤϤ��Τ��Ȥ˴ؤ��륪�ץ������������ޤ�. Mailman �Υǥե���ȤΥ��ȡ���ǥ��쥯�ȥ�� \file{/usr/local/mailman}\footnote{����� Mailman 2.1 �Υǥե���ȤǤ�. �����ΥС������Ǥ�, /home/mailman �����ƥ��ȡ��뤷�Ƥ��ޤ���.} ���Υ��ȡ���ǥ��쥯�ȥ�(\var{\$prefix} �ǻ��Ȥ��ޤ�) ���ѹ�����ˤ� configure �� \longprogramopt{prefix} ���ץ�����Ȥ��ޤ�. �����ΥС�����鹹������ˤ�, ���ȡ���ǥ��쥯�ȥ���ѹ��� ��Τ�̵���¤�, \longprogramopt{prefix} �����ꤹ��ɬ�פ�����ޤ�. \begin{notice}[warning] Mailman �� \code{nosuid} ���ץ����ǥޥ���Ȥ��줿�ե����륷���ƥ�� ���ȡ��뤹�뤳�ȤϤǤ��ޤ���. ���줬����� Mailman �Υ��ȡ���� ���Ԥ��ޤ�. �Ȥ����Τ�, �������ƥ������ͳ�� setgid �ץ����������Ѥ� ����Ȥ��Ƥ��뤫��Ǥ�. �⤷, ���줬���ƤϤޤ�褦�Ǥ�����, ñ���, setgid �ץ�����������Ƥ������ Maiman �ȡ��뤷�Ƥ�������. \end{notice} ���ȡ���Υǥ��쥯�ȥ꤬ \code{mailman} ���롼�פ����ꤵ��� ���뤳�Ȥ��ǧ���Ƥ������� (���뤤�� \longprogramopt{with-groupname} �ǻ��� ���褦�Ȥ��Ƥ��륰�롼��). ������, setgid �ӥåȤ����åȤ��� �Ƥ��뤳�Ȥ��ǧ���Ƥ�������\footnote{�⤷, BSD �����ƥ��Ȥ��ʤ� \ref{bsd-issues} ���ɤ�Ǥ�������} �ޤ�, ���Υǥ��쥯�ȥ꤬���Ƥ� �桼�����ɤ��ȼ¹�(��ư)��ǽ�Ǥ��뤳�Ȥ��ݾڤ������Ȼפ� �Ǥ��礦. �ʲ��Υ����륳�ޥ�ɤǤ����Τ��Ȥ�����Ǥ��ޤ�: \begin{verbatim} % cd $prefix % chgrp mailman . % chmod a+rx,g+ws . \end{verbatim} �����, Mailman ���եȥ������� configure �����ȡ��뤹�� �������Ǥ��ޤ���. \section{Mailman �ι��ۤȥ��ȡ���\label{building}} \subsection{\program{configure} ��¹�} Mailman �ȡ��뤹������ \program{configure} ��¹Ԥ���, �����ƥ� ��ɬ�פˤʤ뤤�������ʥ��ȡ��륪�ץ��������ꤷ�ʤ���Фʤ�ޤ���. \begin{notice}[note] ���ˤ��롤\longprogramopt{with-mail-gid} �� \longprogramopt{with-cgi-gid} �Υ��ץ������ä�����. ¿ʬ���줬ɬ�פˤʤ�ޤ�. \end{notice} ������˽Ƥ������¹Ԥ���֤�, ���ʤ��� root �� �ʤ�٤��ǤϤ��� \strong{�ޤ���}. ��ʬ���ȤΥ�������̾��, ¾�Υ��եȤ� ���ȡ��뤹��Ȥ��˻Ȥ���������Ȥ�ȤäƤ�������. �ޤ�, \code{mailman} �桼���ˤʤ�ɬ�פϤ���ޤ���, �������Ƥ���ޤ���. â��, ���μ��Ǻ������� \var{\$prefix} �ǥ��쥯�ȥ�ν��ߵ��Ĥ� ���뤿��ˤ�, ���Υ�������Ȥ� \code{mailman} ���롼�פ˽�°���Ƥ��� ɬ�פ�����ޤ�. �������åȤΥ��ȡ���ǥ��쥯�ȥ�˽��߸��¤����뤳�Ȥ�, ������ setgid �ե����������Ǥ��뤳�Ȥ��ǧ���Ƥ�������. (NFS ��¾�Υޥ���������� setgid ��ػߤ��Ƥ����礬����ޤ�) �⤷, ¾�� GNU ���եȤȡ��뤷�����Ȥ�����ʤ�, \program{configure} ������ץȤˤϤ��ʤ��ߤǤ��礦. Mailman �� tarball ���� �ǥ��쥯�ȥ�� \program{cd} ����, \program{configure} ��������դ����˼¹Ԥ��� ��������: \begin{verbatim} % cd mailman-<version> % ./configure % make install \end{verbatim} �ʲ��Υ��ץ����� Mailman �Υ��ȡ�������ޥ����Ǥ��ޤ�. \begin{description} \item[\longprogramopt{prefix}=\var{dir}] ɸ��Ū�� GNU configure �Υ��ץ����� Mailman ������ �ȡ��뤵��뤳�Ȥˤʤ�١����Υǥ��쥯�ȥ���ѹ����ޤ��� �ǥե���ȤǤ� \var{\$prefix} �� \file{/usr/local/mailman} �Ǥ������� �ǥ��쥯�ȥ�Ϥ��λ�����¸�ߤ��Ƥ��ʤ���Фʤ餺, \ref{create-install-dir} �����������褦�˥��åȥ��åפ���Ƥ��ʤ��� �Фʤ�ޤ��� \item[\longprogramopt{exec-prefix}=\var{dir}] ɸ��Ū�� GNU configure �Υ��ץ����ǥ������ƥ������ ��¸�����Х��ʥ�Υ��ȡ���ǥ��쥯�ȥ�����Ǥ��ޤ��� \item[\longprogramopt{with-var-prefix}=\var{dir}] ��ǽ�ʥǡ����� \var{\$prefix} �� \var{\$exec-prefix} ������� \var{dir} �β�����¸���ޤ�. ���Τ褦�ʥǡ�������Ȥ��Ƥ�, �ꥹ�Ȥ���¸��ˤ�ꥹ������ǡ����١���������ޤ�. \item[\longprogramopt{with-python}=\file{/path/to/python}] ��åץץ������ǻ��Ѥ��� Python ���ץ���ѹ� ���ƻ��ꤹ�뤳�Ȥ��Ǥ��ޤ����ǥե���Ȥϥ������ \var{\$PATH} ����Ǻǽ�˸��Ĥ��ä���Τ�Ȥ��ޤ�. \item[\longprogramopt{with-username}=\var{username-or-uid}] \code{mailman} �Ǥʤ��桼��̾��Ȥ����˻��ꤹ��. ���Υ��ץ������ͤˤ������Υ桼��ID �ޤ��ϥ桼��̾��Ȥ����Ȥ��Ǥ��ޤ�. \var{\$prefix} �ǥ��쥯�ȥ꤬���Υ桼���ν�ͭ�Ǥ��뤳�Ȥ��ǧ���Ƥ�������. \item[\longprogramopt{with-groupname}=\var{groupname-or-gid}] \code{mailman} �Ǥʤ����롼��̾��Ȥ����˻��ꤹ��. ���Υ��ץ������ͤˤ������Υ��롼��ID �ޤ��ϥ��롼��̾��Ȥ����Ȥ��Ǥ��ޤ�. \var{\$prefix} �ǥ��쥯�ȥ꤬���Υ��롼�פν�ͭ�Ǥ��뤳�Ȥ��ǧ���Ƥ�������. \item[\longprogramopt{with-mail-gid}=\var{group-or-groups}] ����å� ��𤷤ƥ�����ץȤ�¹Ԥ���ݤΥ��롼�פ� ���ꤷ�ޤ���\var{group-or-groups} �ϡ����Ĥޤ���ʣ�������� �Υ��롼��ID �Ǥ⡤���롼�פ�̾���Ǥ��äƤ�ĤǤ����ꥹ �Ȥκǽ���ͤǼºݤ�¸�� ���륰�롼�פ��ͤ����Ѥ���ޤ��� �ǥե���ȤǤϡ������ \code{mailman} \code{other} \code{mail} \code{daemon} �Υꥹ�ȤˤʤäƤ��ޤ�. \begin{notice}[note] ����Ϲ��٤˥����ƥ��¸�Ǥ��ꡤ�������ͤ��ΤäƤ���ɬ �פ�����ޤ����Ȥ����Τϡ����롼�� ID �� ����å� �ץ� �����˥���ѥ��뤵��ƥ������ƥ�����뤫��Ǥ��� \program{Sendmail} ��ȤäƤ��륷���ƥ�Ǥ�, \file{sendmail.cf} �� \var{DefaultUser} ��Ȥä� \program{sendmail} �ץ������� gid �� ���� ����Ƥ��ޤ���(�⤷�������ȥ����Ȥ���Ƥ����顤����� ��ǥե���Ȥ��Ƥ��뤫�⤷��ޤ���) \end{notice} ���Υ����å����������ͤ��Τ뤿���, ���Ѥ��Ƥ����륵���Ф� ����������ե����������å����Ƥ�������. \item[\longprogramopt{with-cgi-gid}=\var{group-or-groups}] CGI ��å� ��𤷤ƥ�����ץȤ�¹Ԥ���ݤΥ��롼�פ� ���ꤷ�ޤ�. \var{group-or-groups} ��, 1�Ĥޤ���ʣ�������� �Υ��롼��ID �Ǥ⡤���롼�פ�̾���Ǥ��äƤ�ĤǤ����ꥹ �Ȥκǽ���ͤǼºݤ�¸�� ���륰�롼�פ��ͤ����Ѥ���ޤ��� �ǥե���ȤǤϡ������ \code{www} \code{www-data} \code{nobody} �� �ꥹ�� �ˤʤäƤ��ޤ��� \begin{notice}[note] �����ͤ� Web �����Ф�����˰�¸���ޤ����������ͤ��Τ� �Ƥ���ɬ�פ�����ޤ��� �Ȥ����Τϡ����롼��ID��CGI ��å� �ץ������˥���ѥ��뤵��ƥ������ƥ�����뤫��� �������줬��äƤ���� Mailman CGI ������ץȤ� ư���� ���� \end{notice} �⤷ Apache ��ȤäƤ���С�\file{httpd.conf} �˽�Ƥ��� \var{Group} ���ץ���� ���ͤ�����å����Ƥ��������� \item[\longprogramopt{with-cgi-ext}=\var{extension}] cgi �ץ������γ�ĥ�Ҥ���ꤷ�ޤ�. \file{\var{\$prefix}/cgi-bin} �� �֤��줿 CGI ��å� �Ϥ��γ�ĥ�Ҥ�����ޤ���(�����֥����� �ˤ�äƤ� ��ĥ�Ҥ�ɬ�פǤ�) \var{extension} �ˤ϶��ڤ�� . (dot) ������Ƥ������ȡ� \item[\longprogramopt{with-mailhost}=\var{hostname}] ��뤬�ФƹԤ����Υۥ���̾(FQDN)����ꤷ�ޤ�. ���ȡ��� ����λ�����, �����ͤ� \file{\var{\$prefix}/Mailman/mm_cfg.py} �Ǿ�� ���뤳�Ȥ��Ǥ��ޤ�. \item[\longprogramopt{with-urlhost}=\var{hostname}] ������ URL �Υۥ���̾ (FQDN) ����ꤷ�ޤ�. ���ȡ��뤬 ��λ�����, �����ͤ� \file{\var{\$prefix}/Mailman/mm_cfg.py} �Ǿ�� ���뤳�Ȥ��Ǥ��ޤ�. \item[\longprogramopt{with-gcc}=no] gcc �����Ĥ��äƤ�Ȥ��ޤ���\program{cc} �� \var{\$PATH} ��̵���Ȥ� ���ޤ��� \end{description} \subsection{Make �ȥ��ȡ���} \program{configure} ��¹Ԥ�����, \program{make} �����餻, ���� \program{make install} �Ȥ��뤳�Ȥ�, Mailman ���ۤ����ȡ��뤹�� ���Ȥ��Ǥ��ޤ�. \section{���ȡ���Υ����å�} \program{make install} ��¹Ԥ�����, �������ѡ��ߥå����ȥ��롼�� ��ͭ�������ꤵ��Ƥ��뤳�Ȥ� \program{check_perms} ������ץȤ� �Τ���Ƥ�������. �ޤ����ȡ���ǥ��쥯�ȥ�(\var{\$prefix})�˰�ư���ޤ�. ������, \program{bin/check_perms} �ץ�������¹Ԥ��ޤ�. �������ǥ��쥯�ȥ�� \program{bin/check_perms} ��¹Ԥ��褦�Ȥ��ʤ��Ǥ� ������. ���ȡ���ǥ��쥯�ȥ�ǤΤ¹Բ�ǽ�Ǥ�. ���줬�������𤷤ʤ����, ���ʤ��Υ��ȡ�������������ꤵ ��Ƥ�����ǽ�����⤤ <������> �Ǥ�. �⤷, ����������𤵤줿��, ��ǽ������뤫, �⤦���٥��ȡ������ʤ�����, \program{check_perms} ��Ȥä�(¿ʬ, ���ִ�ñ)�������뤳�Ȥ�����ޤ�. \begin{itemize} \item ���ȡ����Ԥä��桼�� (\var{\$prefix} �Υե�����ν�ͭ������� �桼��) �ˤʤ뤫, root �ˤʤ�ޤ�. \item \program{bin/check_perms -f} ��¹Ԥ��ޤ�. \item ���顼����𤬤ʤ��ʤ�ޤ�, ��μ����֤�! \end{itemize} \section{�����֥����Ф�����} ����ǤȤ���Mailman ���եȥ������Υ��ȡ��뤬��λ���ޤ����� ���������ºݤ����Ƥޤ�ư�����ˤϡ�Mailman �� �����֥����Ф� ��륷���ƥ�� ξ������³���ʤ��Ȥ����ޤ��� �⤷�����ȥ����֥����Ф��̤Υޥ����ư�����ơ�Mailman �� NFS ��ͳ�� ��ͭ�������ȹͤ��Ƥ����顤���Σ��ĤΥޥ���λ��פ�Ʊ�� ���Ƥ��뤳�Ȥ� �Τ���Ƥ������������μ�δĶ��Ǥϡ� \file{Mailman/LockFile.py} ��������줿 \var{CLOCK_SLOP} �Ȥ��������Ȥäơ� ���פΤ������������ե�������å����� �ˤ��뤳�Ȥ��Ǥ��ޤ��� ������Ǥ� Mailman �Υ����֥��ե��������֥����Ф���³���뤿��� ɬ�פʻ������������ޤ�. �����Ǥμ��� Apache �����֥����Ф˼㴳�Фä� ���ޤ��Τ�, �ܺ٤ˤĤ��ƤϤ����ѤΥ����֥����Ф�������Ȥ��Ƥ�������. �����֥����Ф������ \file{\var{\$prefix}/cgi-bin} �� CGI ������ץȤ� �¹Ե��Ĥ�Ϳ���Ƥ�������. �ä���Ԥϰʲ��Τ褦�ʤ�Τˤʤ� �Ϥ��Ǥ�. (�������, \var{\$prefix} �ΤȤ����ϼºݤ����Хѥ��� ���Ƥ�������.) \begin{verbatim} Exec /mailman/* $prefix/cgi-bin/* \end{verbatim} % $ - emacs turd ����: \begin{verbatim} ScriptAlias /mailman/ $prefix/cgi-bin/ \end{verbatim} % $ - emacs turd \begin{notice}[warning] CGI������ץȤ�¹Ԥ��� �桼��ID�� \code{mailman} ���롼�פ����ä� \strong{���ʤ�}���Ȥ�褯��ǧ���Ƥ����������Ǥʤ��ȡ����������¸��� ��ï�ˤǤ⸫���Ƥ��ޤ��ޤ�. \end{notice} Mailman, Python, GNU �Υ�����Web�����ФΥ���������ǽ�ʤȤ����� ���ԡ����Ƥ����������㤨�� Apache�ξ�硤�����ե����������� �����Τ� \file{icons} �ǥ��쥯�ȥ꤬�Ѱդ���Ƥ���Ϥ��Ǥ�����: \begin{verbatim} % cp $prefix/icons/*.{jpg,png} /path/to/apache/icons \end{verbatim} \file{\var{\$prefix}/Mailman/mm_cfg.py} �˥����Υ١����ǥ��쥯�ȥ��� �Ԥ��ɲä��Ƥ����������㤨��: \begin{verbatim} IMAGE_LOGOS = '/images/' \end{verbatim} \var{IMAGE_LOGOS} �Υǥե�����ͤ� \file{/icons/} �Ǥ�. \file{Defaults.py.in} �˽줿�����Ȥ��ɤ�Ǥ�������. Pipermail �θ������ꥹ����¸��ˤȤǤ���褦�� Web �����Ф� ���ꤷ�Ƥ�������. �㤨�� Apache �ξ��: \begin{verbatim} Alias /pipermail/ $varprefix/archives/public/ \end{verbatim} % $ - emacs turd ������, \var{\$varprefix} ���̾�� \var{\$prefix} ��Ʊ����, \longprogramopt{with-var-prefix} ���ץ������դ��� \program{configure} �������ˤϤ����ͤȤʤ�ޤ�. �ޤ�, ���Υǥ��쥯�ȥ�ǥ���ܥ�å���ɤ뤳�Ȥ��Ǥ���褦�� �����֥����Ф����ꤷ�Ƥ����������Ǥʤ��ȡ�Pipermail �ν�ˤ˥��� �����Ǥ��ޤ���. Apache �Υ桼���� \var{FollowSymLinks} ���ץ����� Ĵ�٤Ƥ�������. �ޤ�, �⤷������¸��ˤ��ݲ��������ΤǤ����, Pipermail �ǥ��쥯�ȥ�Υǥե����ʸ������λؼ��դˤ��������褤���� ����ޤ���. �Ǥʤ���, ¿�������¸��ˤ����������뤳�Ȥ��Ǥ��� ���Ǥ��礦. Apache ��ɸ��Υ��ȡ���ˤĤ��Ƥ��������: \begin{verbatim} <Directory "/usr/local/mailman/archives/public/"> AddDefaultCharset Off </Directory> \end{verbatim} ������, �����֥����Ф�Ƶ�ư���Ƥ�������. \section{��륵���Ф�����\label{mail-server}} ������Ǥ� Mailman �Υ�륤�ե��������륵���Ф� ��³����Τ�ɬ�פʻ������������ޤ�. �����Ǥμ��ϥ�륵���Фˤ�ä� �ۤʤ�ޤ���; �⤷���ʤ��Υ�륵���Ф����ξ���˸�������ʤ� ����, �����ˤ���ʸ����̲����뤳�Ȥ��Ƥ�������. ������, ʸ��ι����� Mailman ��ȯ�Ԥ˥ץ쥼��Ȥ��뤳�Ȥ�ͤ��Ƥ�������. \subsection{Postfix ��륵���Ф�Ȥ����} Mailman ��ɸ��� Postfix ���ȡ���Ȥ��ޤ��礦�褦�ˤʤäƤ��ޤ�. Postfix 2.1.5 (��ޤ�) �ޤǤγƼ�С������ǻ�ѤߤǤ�. �ǥե���ȤǤ�, Postfix �� \code{-owner} �� \code{-request} �Υ��ɥ쥹�� �ü찷�����ޤ�. ���Τ褦�ʥ��� Mailman ���Ϥ��Ƥ�餦�����, ���Τ褦�� \file{main.cf} ���ɲä��Ƥ��Υ��ץ����դˤ��ޤ�: \begin{verbatim} owner_request_special = no \end{verbatim} Mailman �Υ��ץ����Ǥ��� VERP �����ݡ��Ȥ��뤿��ˤ�, \code{luser_relay} ��̵��(���줬������)�ˤ����ޤޤ�, \code{recipient_delimiter} �� ���ꤷ�� ��ĥ���ɥ쥹\footnote{��������ʸ�� extended address semantics �ʤΤ�, `��ĥ���줿���ɥ쥹�ΰ�̣��'. �ºݤˤ�, extended address �Ȥ����Ƥ���ʸ����¿���褦�ʤΤ�, `��̣��' ���ά����.} ��ͭ���ˤ��ޤ�. \file{main.cf} �� \code{luser_relay} ���ͤ�ɤ�⥳���ȥ����Ȥ�, �ǥե���ȤΤޤޤˤ��ޤ�. �ޤ�, ���Τ褦�� \file{main.cf} �ե������ �ɲä��ޤ�. \begin{verbatim} recipient_delimiter = + \end{verbatim} ���ڤ국��Ȥ��� \samp{+} ��Ȥ��� \file{Defaults.py} �ˤ��� \var{VERP_FORMAT} �� \var{VERP_REGEXP} �Υǥե�����ͤȤ��ޤ��礤�ޤ�. ¸�ߤ��ʤ��������륢�ɥ쥹�˥����������褦�Ȥ����, Postfix �� 450 �Υ��顼�����ɤ��֤����⤷��ޤ���. ����ϰ��Ū�ʥ��顼��ɽ�� �����ɤʤΤ�, Mailman �ϥǥե���Ȥ� \var{DELIVERY_RETRY_PERIOD} -- 5 ���֥����������褦�Ȥ�³���ޤ�. ���Τ褦�� \file{main.cf} �� ���ꤹ�뤳�Ȥ�, ¸�ߤ��ʤ���������桼���ˤĤ��ƹ���Ū�ʥ��顼������ ���֤����뤳�Ȥ��Ǥ��ޤ�. \begin{verbatim} unknown_local_recipient_reject_code = 550 \end{verbatim} �Ǹ��, �⤷ Postfix ��������β��ۥɥᥤ���ȤäƤ���ʤ�, ���β��ۥɥᥤ�ݡ��Ȥ�����ɤ�Ǥ�������. \subsubsection{Postfix �� Mailman ������} Postfix �� Mailman �����礹���, �������ꥹ�Ȥ����������, �ꥹ�Ȥ��������Ȥ���, Postfix �Υ����ꥢ���ǡ����١�������ưŪ�� ���������褦�ˤʤ�ޤ�. �����¸����뤿��μ��ϰʲ��ΤȤ���Ǥ�. �ʲ��������Ǥ�, Mailman ���ǥե���Ȥΰ���, �Ĥޤ� \file{/usr/local/mailman} �˥��ȡ��뤵��Ƥ����ΤȲ��ꤷ�ޤ�. �⤷, �����Ǥʤ����, \program{configure} ���Ѥ��� \longprogramopt{prefix} �� \longprogramopt{with-var-prefix} �Υ��ץ����˽��ä��ɤ��ؤ��Ƥ�������. \begin{notice}[note] �⤷, ���ۥɥᥤ���ȤäƤ���, ���ۥɥᥤ��������ͥ�褵�������� �������ˤ�, \ref{postfix-virtual} �������ɤ�Ǥ�������! \end{notice} \begin{itemize} \item \file{\var{\$prefix}/Mailman/mm_cfg.py} �ե�����κǸ�˼��Τ褦�� �ɲä��Ƥ�������: \begin{verbatim} MTA = 'Postfix' \end{verbatim} �ѿ� MTA �� \file{Mailman/MTA} �ǥ��쥯�ȥ�ˤ���⥸�塼��� ̾������ꤷ�ޤ�. �����ˤ�, �ꥹ�Ȥ���������������Ȥ��� �¹Ԥ����, ��륵���и�ͭ�δؿ������äƤ��ޤ�. \item \file{Defaults.py} �ե������, \var{POSTFIX_ALIAS_CMD} �� \var{POSTFIX_MAP_CMD} ���ޥ���ѿ����ͤ��ǧ���Ƥ�������. ������, ���줾�� \program{postalias} �� \program{postmap} �ץ������ ��ؤ��Ƥ��ʤ���Фʤ�ޤ���. �⤷�ѹ���ɬ�פξ��� \file{mm_cfg.py} ����ǹԤ��褦�ˤ��Ƥ�������. \item \program{bin/genaliases} ������ץȤ�¹Ԥ��� \file{aliases} �ե�������������Ƥ�������. \begin{verbatim} % cd /usr/local/mailman % bin/genaliases \end{verbatim} \file{data/aliases} �� \file{data/aliases.db} �ν�ͭ�Ԥ� \code{mailman} ��, ���롼��ͭ�Ԥ� \code{mailman} �Ǥ��뤳�Ȥ� ��ǧ���Ƥ�������. ������ configure ���ޥ�ɤ����ꤷ���桼�� ���롼�פǤ�. �ޤ�, ξ���Υե�����ϥ��롼���ߵ��Ĥ�ɬ�� �Ǥ�: \begin{verbatim} % su % chown mailman:mailman data/aliases* % chmod g+w data/aliases* \end{verbatim} \item Postfix �� \file{main.cf} �ե������ \var{alias_maps} �ѿ��� ���Υѥ���ޤ�褦�˽����Ƥ�������: \begin{verbatim} /usr/local/mailman/data/aliases \end{verbatim} �Ǹ�� \code{.db} ���դ��Ƥ��ʤ����Ȥˤ����դ��Ƥ�������. \var{alias_database} �ˤ��������ƤϤ����ޤ���. �ʤ��ʤ�, Postfix �� \program{newaliases} ���ޥ�ɤ� Mailman �� \file{aliases.db} �ե����������Ƥ��ޤ�����Ǥ�. ������, �������륢�ɥ쥹��õ������ �Ȥ��ˤ� \file{aliases.db} �Ƥ�餤�ޤ�. ���Υ���ȥ�ˤĤ��� \code{hash:} ��������Υǡ����١������ꤿ�� �Ȼפ��Ǥ��礦. ���줬������Ǥ�: \begin{verbatim} alias_maps = hash:/etc/postfix/aliases, hash:/usr/local/mailman/data/aliases \end{verbatim} \item Mailman �� configure ����Ȥ���, \longprogramopt{with-mail-gid=mailman} �����å�����Ѥ��Ƥ�������; ����� \code{mailman} �桼�����ɲä��� ��� Mailman �� configure ���Ƥ���Хǥե���Ȥˤʤ�ޤ�. \file{aliases.db} �ե�����ν�ͭ�Ԥ� \code{mailman} �ʤΤ�, Postfix �� Mailman �� ��åץץ������� \code{mailman} �� uid �� gid �� �¹Ԥ��ޤ�. \end{itemize} ����Ǵ�λ! ���꤬�ҤȤ�: �ꥹ�Ȥ�����������������, \file{aliases.db} �Ϲ�������ޤ���, \program{postfix reload} ��ưŪ�˼¹Ԥ���櫓�Ǥ� ����ޤ���. �����¹Ԥ���ˤ� root �ˤʤ�ʤ���Фʤ�ޤ���, root �� suid ����������ץȤϰ����Ǥʤ�����Ǥ�. Postfix �� \file{aliases.db} �ե�������ѹ��ȥơ��֥�ι����˵����դ��Τ� 1ʬ�ۤɤ���������Ǥ�. \subsubsection{���ۥɥᥤ��\label{postfix-virtual}} Postfix 2.0 �� ``���ۥ����ꥢ�� �ɥᥤ��\footnote{������virtual alias domains. }'' �ݡ��Ȥ��ޤ�. �����, �����ΥС������� Postfix �Ǥ� ``Postfix ��������β��ۥɥᥤ��'' �ȸƤФ�Ƥ�����ΤǤ�. Mailman ��ư��벾�ۥ����ꥢ���ɥᥤ�����ˤ�, Postfix �� Mailman ��ξ���������ɬ�פ�����ޤ�. Mailman ��, (����Ǥ�) \file{/usr/local/mailman/data/virtual-mailman} �Ȥ���̾���Υե�����ˤ��٤Ƥβ��ۥ����ꥢ���Υޥåפ���ߤޤ�. �ޤ�, Postfix ���ºݤ˻Ȥ� \program{virtual-mailman.db} �ե������������뤿��� \program{postmap} ��Ȥ��ޤ�. �ޤ�, Postfix �β��ۥ����ꥢ�� �ɥᥤ��� Postfix ��ʸ��������ɤ���˺��ޤ� (Postfix �� \code{virtual(5)} �ޥ˥奢��ڡ����Ȥ��Ƥ�������). �ޥ˥奢��ڡ����������ˤ��� \code{virtual-alias.domain anything} �ιԤ�, ��ʬ������ʤ���Ф����ʤ����Ȥ����դ��Ƥ�������. Mailman �� \file{virtual-mailman} �ˤ��ιԤ�����Ƥ���ޤ���. Mailman �����礹������, ���β��ۥ����ꥢ�� �ɥᥤ��������ư���褦�ˤ��Ƥ������Ȥ�, �ȤƤ�����Ǥ�. ����, Postfix �� \var{virtual_alias_maps} �ѿ���, virtual-mailman �ե�����ΰ��֤Υѥ�̾���ɲä��ޤ�. ��: \begin{verbatim} virtual_alias_maps = <�̾�β��ۥ����ꥢ���Υե�����>, hash:/usr/local/mailman/data/virtual-mailman \end{verbatim} �����Ǥ�, Mailman �ϴ���ξ��˥��ȡ��뤷�Ƥ���Ȳ��ꤷ�Ƥ��ޤ�. \var{virtual_alias_maps} �ѿ��Τʤ��Ť��С������� Postfix ��ȤäƤ���Τʤ�, ������ \var{virtual_maps} �ѿ���Ȥ��ޤ�. ����, \file{mm_cfg.py} �ե������, \var{POSTFIX_STYLE_VIRTUAL_DOMAINS} ��, Mailman ���������벾�ۥɥᥤ��Υꥹ�Ȥ����ꤹ��Ȥ褤�Ǥ��礦. �����, Postfix �Τۤ��ǥ��ݡ��Ȥ��벾�ۥɥᥤ�٤ƤȤϸ¤�ޤ���! ���Υꥹ�Ȥ����Ǥ�, ���ꥹ�� ���֥������Ȥ� \var{host_name} °���Ⱦȹ礵��ޤ�. �������פǤʤ���Ф����ޤ���. ���ޤ�. Postfix �ϲ��ۥɥᥤ�� \code{dom1.ain}, \code{dom2.ain}, \code{dom3.ain}, ���褦���ꤷ�Ƥ����ΤȤ�, �����, \file{main.cf} �ե�����˼������꤬���Ƥ����ΤȤ��ޤ�: \begin{verbatim} myhostname = mail.dom1.ain mydomain = dom1.ain mydestination = $myhostname, localhost.$mydomain virtual_alias_maps = hash:/some/path/to/virtual-dom1, hash:/some/path/to/virtual-dom2, hash:/some/path/to/virtual-dom2 \end{verbatim} ���Ȥ��� \file{virtual-dom1} �ե������, �Ĥ��ιԤ�����Ȥ��ޤ�: \begin{verbatim} dom1.ain IGNORE @dom1.ain @mail.dom1.ain \end{verbatim} ����� Postfix ��, \code{dom1.ain} ���ƤΤ�ΤϤʤ�Ǥ�, \code{mail.dom1.com} ��Ʊ̾�Υ��ܥå��� (�����������) ����������褦 �ؼ����Ƥ��뤳�Ȥˤʤ�ޤ�. ���ξ��, \var{POSTFIX_STYLE_VIRTUAL_DOMAINS} �ˤ� \code{dom1.ain} ��ޤ�ޤ���. �ʤ��ʤ� �������ʤ����, Mailman �� dom1.ain �ɥᥤ��Υ��ꥹ�Ȥι��ܤ� \begin{verbatim} mylist@dom1.ain mylist mylist-request@dom1.ain mylist-request # ����... \end{verbatim} �Τ褦�˽��फ��Ǥ�. ������ꤷ�����ܤ�, ������Ū�ʹ��ܤ�����Τ�, \code{dom1.ain} ���ꥹ�Ȥؤ������ϻߤ���Ƥ��ޤ��ޤ�. ���äݤ�, \code{dom2.ain} �� \code{dom3.ain} �� \file{mm_cfg.py} �˴ޤ�ޤ�: \begin{verbatim} POSTFIX_STYLE_VIRTUAL_DOMAINS = ['dom2.ain', 'dom3.ain'] \end{verbatim} ��������, ������ĤΥɥᥤ��Τ����줫��°������ꥹ�Ȥ� Mailman ����ä���, \file{/usr/local/mailman/data/virtual-mailman} �ˤ����������ܤ�����ޤ�. ��� \file{data/aliases*} �ե������Ʊ����, \file{data/virtual-mailman} �� \file{data/virtual-mailman.db} ��ξ���Ȥ�, \code{mailman} �Υ桼��, ���롼�פ� ��ͭ����Ƥ���褦�ˤ����ۤ��������Ǥ��礦. \subsubsection{¾����ˡ} Fil \email{fil@rezo.net} ��, virtual �ޥåפ�����ɽ����Ȥä�¾����ˡ��Ҳ𤷤Ƥ��ޤ�. �ʲ�������������ޤ�: \begin{itemize} \item (�ե��) \url{http://listes.rezo.net/comment.php} \item (�Ѹ�) \url{http://listes.rezo.net/how.php} \end{itemize} �ꥹ�Ȥ˥�����������Ȥ��Υ��ɥ쥹�Υɥᥤ��� ;ʬ�ʥۥ��������Ĥ��Τ����ˤʤ�ʤ����, ������ɤ� (�����Ƥ�ꥷ��ץ��) ���ذƤǤ�. �Ĥޤ�, \code{mylist@dom.ain} �Τ����� \code{mylist@lists.dom.ain} ��Ȥ�ʤ��Ȥ����ʤ��ΤǤ�褱���, �Ȥ������ȤǤ�. \subsection{Exim ��륵���Ф�Ȥ����} % ����: Exim ���Ѹ��, �ޤ������Τʤ���Τ�¿��. �����Ǥϼ��Τ褦�������Ȥ�: % % ���� ���ܸ��� % ======================= ============== % SMTP callback (callout) SMTP �ƽФ����� % director �����쥯�� % domain list �ɥᥤ��ꥹ�� % main section ���� % recipient verification �����Ը��� % router �롼�� % section �� % transport �ȥ�ݡ��� \begin{notice}[note] �����, Nigel Metheringham �� ``HOWTO - Exim �� Mailman ��Ȥ�''\footnote{����: ``HOWTO - Using Exim and Mailman together''.} ����Τ�ޤ���. ����� Mailman 2.0.x �� Exim 3 ���б����Ƥ��ޤ���. ����� Mailman 2.1 �� Exim 4 ���б�����褦�˲������ޤ���. ����ʸ��ϼ��ξ��ˤ���ޤ�: \url{http://www.exim.org/howto/mailman.html}. \end{notice} Mailman �Υ��ȡ���ˤĤ������������ս��ɸ��Ū�ʥ��ץ����ʳ��ˤ�, Mailman �������ɬ�פ���ޤ���. Exim ������� Mailman ���Ф���Ʃ��Ū�Ǥ�. %??? Mailman �Υ桼���ȥ��롼�פ������, �ʲ��˽Ҥ٤�����Τ�ΤȰ��פ��Ƥ��ʤ���Ф����ޤ���. \subsubsection{Exim ������} Exim ������Ǥ�, Mailman ¦�Ǻ��������ꥹ�Ȥϼ�ưŪ�� Exim ¦��ͭ���ˤʤ�ޤ�. �����˥����ꥢ�����������ɬ�פϤ���ޤ���. ��������������������ˡ�η�����, ʣ���ΰۤʤ���ɥᥤ��Υꥹ�Ȥ��б����������ƥ�Ǥ�, ����ư��ʤ����ȤǤ�. Mailman ��, ���ۥɥᥤ������Τ�, �ҤȤĤ� Mailman �Υ��ȥ졼�����ǰۤʤ벾�ۥɥᥤ��Ʊ��̾���Υꥹ�Ȥ��̡��˻��Ĥ��Ȥˤ�, �ޤ��б����Ƥ��ޤ���. ���Τ����Ѥ��Ǥ��礦 (�ʤ�, ��ǽҤ٤�褦��, ���ۥɥᥤ����äȤ��ޤ�������ˡ�⤢��ޤ�). �ʲ����������������, ȴ��Ǥ�. Exim ���Ȥ���褦������ˤʤäƤ���, �ꥹ�Ȥ�°����ɥᥤ��ؤΥ�������դ���褦�ˤʤäƤ����, �Ȥ��ޤ�. ���Υɥᥤ�� Exim ������ǰ���¾�Υɥᥤ���ʬΥ����Ƥ���Ȥ���, ���Τ褦�ˤ���ɬ�פ�����ޤ�: \begin{itemize} \item �ꥹ�ȤΥɥᥤ�� ``my.list.domain'' �� \var{local_domains} ���ɲä��� \item ``domains=my.list.domain'' ���ץ�����, �ꥹ�ȤؤΥ����쥯�� (�롼��) ���ɲä���\footnote{����: ������������������쥯�� (�롼��) ����������Ȥ��ɲä��ޤ�.} \item (ɬ�פʤ�) ¾�Υ����쥯�� (�롼��) ���餽�Υɥᥤ���������� \end{itemize} \begin{notice}[note] ����ʸ��Ǥ�������, Exim 3 �� Exim 4 �Τɤ���Ǥ�ư���褦�ˤʤäƤ��ޤ�. Exim 3 �Ǥ�, \var{local_domains} �����꤬�ʤ���Ф����ޤ��� --- Exim 4 �Ǥ�, �����Ƥ��� \var{local_domains} �ɥᥤ��ꥹ�ȤΤ褦�ʤ�Τ�����ޤ�. �ʤ��Τʤ�, �ɤ���ɤ�Ĵ������Ф��ޤ��������ϼ�ʬ�Ǥ狼�äƤ��뤳�ȤȻפ��ޤ�. �ޤ�, Exim 4 �Ǥ� ``�����쥯��'' �γ�ǰ���ʤ��ʤäƤ��ޤ��ޤ��� -- �롼����������ޤ���. �Ǥ����� Exim 4 ��ȤäƤ���Τʤ�, ����ʸ��� ``�����쥯��'' �ȸ��ä��Ȥ��� ``�롼��'' ���ɤߤ����Ƥ�������. \end{notice} Exim 3 �� Exim 4 �Τ������ȤäƤ��Ƥ�, Exim ����ե������ ����\footnote{����: main section. Exim ������ե������, �ǽ�� ``begin ...'' �Ԥ������, ����Ū������Ҥ�����ʬ.}�˼㴳�Υޥ������ɲä���ɬ�פ�����ޤ�. �ޤ�, �����˥ȥ�ݡ��Ȥ��������ɬ�פ�����ޤ�. Exim 3 �Ǥ�, �����˥����쥯�����ɲä���ɬ�פ�����ޤ� --- Exim 4 �Ǥ�, �����˥롼�����ɲä���Ʊ�����Ȥ��ޤ�. �ʤ�, ��������������Ǥ�, Mailman 2.0 �� 2.1 �Υ��ȥ졼������¸�����뤳�Ȥ�Ǥ��ޤ�. ���������ξ���, \code{mailman} �Τ����� \code{mm21} ��Ȥ��Ȥ褤���⤷��ޤ��� -- �㤨��, \var{MM21_HOME}, \var{mm21_transport} �ʤɤǤ�. \subsubsection{����Ū������} �ޤ�, Exim ����ե�����κǽ�Ǥ����Ĥ��ޥ������ɲä���ɬ�פ�����ޤ�. ����ˤ�ä�, �ʲ��Ǻ�����������쥯�� (�롼��) �ȥȥ�ݡ��Ȥ��������䤹���ʤ�ޤ�. ����, Mailman ��ɤ����ꤷ���ȡ��뤷�����ˤ�ä�, �ѹ�����ɬ�פ�����ޤ�. \begin{verbatim} # ���ȡ��뤷�� Mailman �Υۡ���ǥ��쥯�ȥ� -- �Ĥޤ� Mailman �Υץ�ե����� # �ǥ��쥯�ȥ� MAILMAN_HOME=/usr/local/mailman MAILMAN_WRAP=MAILMAN_HOME/mail/mailman # Mailman �Υ桼���ȥ��롼��. Mailman �� configure ������ץȤ�Ϳ���� # --with-mail-gid �����å��Ȱ��פ��ʤ���Ф����ʤ�. MAILMAN_USER=mailman MAILMAN_GROUP=mailman \end{verbatim} \subsubsection{Exim 3\label{exim3-transport} �Υȥ�ݡ���} ���Τ�Τ�, Exim ����ե������ transports �� -- �Ĥޤ�, �ǽ��2�֤�� ``end'' �Ԥδ֤Τɤ��� -- ������ޤ�: \begin{verbatim} mailman_transport: driver = pipe command = MAILMAN_WRAP \ '${if def:local_part_suffix \ {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \ {post}}' \ $local_part current_directory = MAILMAN_HOME home_directory = MAILMAN_HOME user = MAILMAN_USER group = MAILMAN_GROUP \end{verbatim} \subsubsection{Exim 3 �Υ����쥯��} Exim 3 ��ȤäƤ���Τʤ�, ����ե�����˰ʲ��Υ����쥯�����ɲä���ɬ�פ�����ޤ� (�����쥯����, 2�Ĥ��3�Ĥ�� ``end'' �Ԥδ֤ˤ��ޤ�). �ޤ�, ���������ˤʤ뤳�Ȥ�˺��ʤ��Ǥ������� -- �㤨��, ���Υ����쥯�����ꥢ���ե�����Υ����쥯�����������֤���, Mailman �Υꥹ�Ȥ��ƥ२���ꥢ�����ͥ�褵���뤳�Ȥ��Ǥ��ޤ�. �դ�����ޤ�. \begin{verbatim} # �ꥹ�� 'foo' (��ƥ��ɥ쥹) �˴ؤ��륢�ɥ쥹���٤Ƥ�. # MAILMAN_HOME ���� lists/$local_part/config.pck ��õ����, # ��ưŪ�˥ꥹ�Ȥ�¸�ߤ��Τ���. mailman_director: driver = smartuser require_files = MAILMAN_HOME/lists/$local_part/config.pck suffix_optional suffix = -bounces : -bounces+* : \ -confirm+* : -join : -leave : \ -owner : -request : -admin transport = mailman_transport \end{verbatim} \subsubsection{Exim 4 �Υ롼��} Exim 4 �Ǥ�, �����쥯���Τ褦�ʤ�ΤϤ���ޤ��� -- ������, �������롼�����ɲä���ɬ�פ�����ޤ�. �ʤ� Exim 4 �Ǥ�, ����ե��������ɸ��Ū�ʽ���ϥ롼�����ȥ�ݡ��Ȥ����ˤ���褦���ѹ����줿����, �ޤ��롼���ˤĤ��ƽҤ٤ޤ�. �ʲ��Υ롼����, ����ե������ ``begin routers'' �ιԤθ�Τɤ���������ޤ�. �롼���ν��������ˤʤ뤳�Ȥ�˺��ʤ��Ǥ�������. \begin{verbatim} mailman_router: driver = accept require_files = MAILMAN_HOME/lists/$local_part/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : \ -confirm+* : -join : -leave : \ -owner : -request : -admin transport = mailman_transport \end{verbatim} % $ - emacs turds \subsubsection{Exim 4 �Υȥ�ݡ���} Exim 4 �ǤΥȥ�ݡ��Ȥ� Exim 3 �Τ�Τ�Ʊ���Ǥ� (\ref{exim3-transport} �Ƥ�������) --- ��˼������ȥ�ݡ��Ȥ�, Exim ����ե������ ``begin transports'' �Ԥθ�Τɤ����˥��ԡ����ޤ�. \subsubsection{����¾��������} Exim ��, ��ʬ���̤ν������Ǥ���褦�����ꤷ�Ƥ����ʤ��Ȥ����ޤ��� --- �㤨��, \var{max_recipients} ��䤿��Ⱦ������ͤˤ��ƤϤ����ޤ��� --- �ޤ�, ��ʬ�ʥ������ƥ����٤����ꤷ�ʤ���Ф����ޤ��� --- �ä�, 127.0.0.1 �������Ѥϵ��Ĥ�, �ۤ�����ϤۤȤ�ɵ��Ĥ��ʤ��褦�˵���Ĥ��Ƥ�������\footnote{����: Mailman ��, MTA ���̤��ƥ�������ݤ�, HELO (EHLO) ���ޥ�ɤΰ����Ȥ���, ���ۥ��ȤΥץ饤�ޥ� FQDN ��Ȥ��ޤ�. ���ѥ��ӽ��Τ����, HELO (EHLO) �ΰ����˼��ۥ���̾���륯�饤����Ȥ������������ݤ���褦������Ƥ������, localhost (127.0.0.1) ��������������ݤ���ʤ��褦�˵���Ĥ��Ƥ�������.}. ���������Τ褦�ʤ���äȤ���������ȤäƤߤ������, ��äƤߤޤ��礦 --- ����������Ѥ��Ƥߤ�, ���ޤ��������Τ���ޤ�. % ??? �����ٱ�ηٹ��å�������, �Ф��ʤ��褦�ˤ��뤫, �ꥹ�Ȱʳ��Υ��ǤΤ߽Ф��褦�����ꤷ�ʤ���Ф����ޤ���. �ɤ����ǥۥ��Ȥ�����뤿�Ӥ����̤Υ���������ΤϷ��Ǥ��礦����. \subsubsection{������} \begin{itemize} \item Mailman ��, ɬ�פ˱����ƤǤ������¿���� \code{MAIL FROM}/\code{RCPT TO} ���������Ȥ��ޤ�. ��̤Ȥ���, ������³�� 10 ��, 100 ��, ���뤤�Ϥ���ʾ�Υ�å������������뤳�Ȥ⤢��, Exim �� \var{smtp_accept_queue_per_connection} �δ�����ͤ�Ķ���Ƥ��ޤ����⤷��ޤ���. ����Ϻ��ä����ȤǤ�. �ʤ��ʤ�, �����ʤ�� Exim �� queue �⡼�ɤ��ڤ��ؤ��, �ꥹ�ȤΥ�å����������������������٤�뤳�Ȥˤʤ뤫��Ǥ�. �����ľ���ˤ�, Mailman �� \var{SMTP_MAX_SESSIONS_PER_CONNECTION} �� (\file{\var{\$prefix}/Mailman/mm_cfg.py} ��) Exim �� \var{smtp_accept_queue_per_connection} ��꾮�����ͤ����ꤷ�ޤ�. \item Exim �ϥꥹ�ȤΥ�å��������ٱ�ٹ��å����������äƤϤ����ޤ���. ��, Mailman �� Exim ���ٱ�ٹ��å�������̵�뤷�ʤ���Ф����ޤ���. %% ??? Mailman 2.1 ���������顼������ VERP ���б��������, �������顼������Ū��Ψ�������˸��夷�ޤ�. \item �ꥹ�Ȥ�¸�ߤ��뤫�ɤ�����, �ꥹ�Ȥ� \file{config.pck} �ե����뤬¸�ߤ��뤫�ɤ����Ƿ��Ƥ��ޤ�. ���äƥꥹ�Ȥ������Ƥ��ޤä��Ȥ���, ���Υե�����˵���Ĥ��ޤ��礦. %% ??? \item �ꥹ�Ȥ˥������ä��Ȥ���, Exim �� Mailman �ǥ桼��ID�˴ؤ��륨�顼��������Τʤ�, \var{MAILMAN_USER} �� \var{MAILMAN_GROUP} �� Mailman ���ȤΤ�ΤȰ��פ��뤫 (�Ĥޤ�, \program{configure} ������ץȤǻȤäƤ����Τ�) ��Ĵ�٤ޤ�. �ޤ�, �����ꥢ���ե������, �ꥹ�ȤΥ��ɥ쥹�������ꥢ���Ȥ�����Ͽ����Ƥ��ʤ�����Τ���ޤ��礦. \end{itemize} \subsubsection{�����Ը���} Exim �μ����Ը���\footnote{����: recipient verification.}�ϤȤƤ����Ω���ޤ� -- SMTP�λ�����, ������ǽ�ʥ��ɥ쥹�� Exim �����ݤ���褦�ˤʤ�ޤ�. ������, ���줬�����Ф���Ω�ĤΤ�, ���������褿��뤬��������Υɥᥤ��Τɤ줫�˸����äƤ���Ȥ��Ǥ�. Mailman �Υꥹ�ȤΥȥ�ҥå���, �������Ф���Ф�, �����Ф��¤��Τ�ʤ������Τ��ޤ��ޤʥɥᥤ��ؤȸ������ޤ�. ���Τ���, ��å������Ϥ�������μ����� -- Mailman �δ���������Ȥ�, \var{SMTP_MAX_RCPTS} ���äƤ��ʤ��Ȥ���, ���� 500 �ս� -- �ظ��������Ȥˤʤ�ޤ�. Mailman �Υꥹ�ȤΥȥ�ҥå��Ǽ����Ը��ڤ�Τ�, �ȥ�֥�Τ�ȤǤ�. �Ȥ�櫓, Mailman ����ꥹ�Ȥ���Ƥ��ФƤ����Ȥ���, Exim �����Ƥμ����ԥ��ɥ쥹�ڤ��褦�Ȥ��ޤ�. �ҤȤĤҤȤĤΥ��ɥ쥹�ˤĤ��Ƥ�, DNS �����ˤϤ鷺���ʻ��֤����פ��ʤ����⤷��ޤ���, ���ΤȤ��Ƥ��������ٱ��������������ޤ�. �������ä�, Mailman �Υȥ�ҥå����Ф��Ƥϼ����Ը��ڤ�̵���ˤ��ʤ���Ф����ޤ���. Exim 3 �Ǥ�, ����˰ʲ��Τ�Τ�����ޤ�: \begin{verbatim} receiver_verify_hosts = !127.0.0.1 \end{verbatim} Exim 4 �Ǥ�, �������ˤĤ��ƤϤ����餯 (\code{RCPT TO} ACL ���) ����� ACL ʸ�ǤϹ�θ����Ƥ��뤳�ȤǤ��礦: % ??? \begin{verbatim} accept domains = +local_domains endpass message = unknown user verify = recipient \end{verbatim} �����, ��ʬ�Υɥᥤ��Υ��ɥ쥹���Ф��Ƥ��������Ը��ڤ�褦�ˤʤ�ޤ� (����ϸ�̩�ˤ�, 127.0.0.1 �ʳ��Υۥ��Ȥ�������å������������Ф��Ƽ����Ը��ڤ뤳�ȤȤϰ㤤�ޤ���, Mailman �ˤϤ褯�����ޤ�). \subsubsection{SMTP �ƽФ�����} Exim �� SMTP �ƽФ�����\footnote{����: SMTP callback.}�λ��ͤ�, �Ǥ����������ԥ��ɥ쥹�Ф�����ˡ�Ȥ��Ƥ�, �̾�������Ը��ڤˤ���٤ƤϤ뤫�˶��ϤǤ�. �Ȥ��������ä����Ȥ�, �Х���å������Υإå��ˤǤ����ʥ��ɥ쥹����������륵���ФϤ�������ޤ���, �ޤ� (�Х���å������ˤ϶��Υ�����������������Ԥ�Ȥ����ȤˤʤäƤ���ˤ�ؤ�餺) �Ǥ����ʥ�����������������Ԥ�ȤäƥХ���å����������륵���Ф�, ���ʤ��餺����ΤǤ�. Mailman ��, �Х���ȯ�����Ƥ��륢�ɥ쥹�����������ߤ�������Ͽ�����ä�����Ǥ���褦��, Mailman �Υꥹ�Ȥ��Ϥ��Х���å�������, ���Ȥ��������ä��Х���å��������켫�ΤϥХ����Բ�ǽ�ʤ�ΤǤ��äƤ�, �������褦�ˤ����ۤ��������Ǥ��礦. ���Τ���, �Х���å��������Ф��Ƥ�, SMTP �ƽФ����ڤ�̵���ˤ���Ȥ褤���⤷��ޤ���. Exim 4 �Ǥ����¸�����ˤ�, \code{RCPT TO} ACL �ǰʲ��Τ褦�ʤ�Τ�Ȥ��ޤ�: \begin{verbatim} # �ƽФ����ڤʤɤθ��������Ԥ����Ȥ��Ƥ�, �ꥹ�ȤؤΥХ���å������ϼ����դ��� warn message = X-WhitelistedRCPT-nohdrfromcallback: Yes condition = \ ${if and {{match{$local_part}{(.*)-bounces\+.*}} \ {exists {MAILMAN_HOME/lists/$1/config.pck}}} \ {yes}{no}} {yes}{no}} accept condition = \ ${if and {{match{$local_part}{(.*)-bounces\+.*}} \ {exists {MAILMAN_HOME/lists/$1/config.pck}}} \ {yes}{no}} {yes}{no}} # ������, SMTP �ƽФ����ڤ������ԥ��ɥ쥹��Ĵ�٤�. deny !verify = sender/callout=90s \end{verbatim} �إå��Υ��ɥ쥹�ˤ� SMTP �ƽФ����ڤ������, ���Τ褦�ʤ�Τ� \code{DATA} ACL �������Ȥ褤�Ǥ��礦. \begin{verbatim} deny !condition = $header_X-WhitelistedRCPT-nohdrfromcallback: !verify = header_sender/callout=90s \end{verbatim} % $ - emacs turd \subsubsection{Exim �� Mailman �� VERP ��Ȥ�} VERP �Ǥ�, ��ĤΥ���, �ꥹ�Ȥι��ɼԤ��Ȥ��̡��������� (������ϩ) ������ޤ� -- VERP ��Ȥ���褦�ˤ��뤿��Υ��ץ����ˤĤ��Ƥ� \file{\var{\$prefix}/Mailman/Defaults.py} �ξ�����ɤ�Ǥ�������. �ޤȤ���, Exim �� VERP ��ͭ���ˤ���Τ�ɬ�פʤ��Ȥ�, \file{\var{\$prefix}/Mailman/mm_cfg.py} �˼��ιԤ��ɲä��뤳�ȤǤ�: \begin{verbatim} VERP_PASSWORD_REMINDERS = Yes VERP_PERSONALIZED_DELIVERIES = Yes VERP_DELIVERY_INTERVAL = Yes VERP_CONFIRMATIONS = Yes \end{verbatim} (����������������쥯�� (�롼��) ��, VERP �ΥХ���å�����������Ƚ����Ǥ���褦�ˤʤäƤ��ޤ�. ) \subsubsection{���ۥɥᥤ��} ���ۥɥᥤ�����ˡ�ΤҤȤĤȤ���, ���ۥɥᥤ�Ȥ��̡��� Mailman �ȡ��뤹��Ȥ�����Τ�����ޤ�. �������Ǥ�, �ҤȤĤη����ǰۤʤ벾�ۥɥᥤ��Ʊ��̾���Υꥹ�Ȥ��̡��˻��Ƥ�褦�ˤ���ˤ�, ������ˡ��������ޤ���\footnote{����: �ۤʤ벾�ۥɥᥤ���Ʊ��̾���Υꥹ�Ȥ��̡��˻Ȥ��ʤ��Ƥ⤫�ޤ�ʤ����, �������������פǤ�.}. ���ξ��, �ޥ��� \var{MAILMAN_HOME} �� \var{MAILMAN_WRAP} �ϻȤ��ޤ��� -- ������Ƥ��ޤäƤ��ޤ��ޤ���. �����쥯�� (�롼��) �Τ褦���ѹ����ޤ�: \begin{verbatim} require_files = /virtual/${domain}/mailman/lists/${lc:$local_part}/config.pck \end{verbatim} % $ - emacs turd ������, �ȥ�ݡ��ȤΤ褦���ѹ����ޤ�: \begin{verbatim} command = /virtual/${domain}/mailman/mail/mailman \ ${if def:local_part_suffix \ {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} {post}} \ $local_part current_directory = /virtual/${domain}/mailman home_directory = /virtual/${domain}/mailman \end{verbatim} % $ - emacs turd \subsubsection{�ꥹ�Ȥθ���} �����Ǥ�, Exim �Υ��ɥ쥹�ƥ��ȥ��åȤ�Ȥä�, �����ƥ��ư����ͻҤ�Ĵ�٤���ˡ���������ޤ�. % ??? ����Υꥹ�Ȥ� \email{quixote-users@mems-exchange.org} �Ȥ�, ���ΰ�Ϣ�Υ��ޥ�ɤ� \code{mems-exchange.org} ��륵���ФǼ¹Ԥ��ޤ� ("\% " �� Unix �Υ����� �ץ���ץȤ�ɽ���ޤ�): \begin{verbatim} % exim -bt quixote-users quixote-users@mems-exchange.org router = mailman_main_router, transport = mailman_transport % exim -bt quixote-users-request quixote-users-request@mems-exchange.org router = mailman_router, transport = mailman_transport % exim -bt quixote-users-bounces quixote-users-bounces@mems-exchange.org router = mailman_router, transport = mailman_transport % exim -bt quixote-users-bounces+luser=example.com quixote-users-bounces+luser=example.com@mems-exchange.org router = mailman_router, transport = mailman_transport \end{verbatim} \program{exim -bt} �ν��Ϥ������˼������褦�ʤ�ΤˤʤäƤ����, �����ޤǤϽ�Ĵ�ȸ����ޤ�: % that's a start ??? ���ʤ��Ȥ�, Exim ��Ŭ�ڤʥ�å�������Ŭ�ڤ� Mailman �Υ��ޥ�ɤ��Ϥ��Ƥ��뤳�Ȥϳ�ǧ�Ǥ��ޤ���. ������, ���ȡ��뤷�Ƥ��� Exim/Mailman ��, ������������ư��Ƥ���Ȥ����ݾڤϤ���ޤ���! \subsubsection{����ʸ�������} ���ˤʤ�ʸ��� Nigel Metheringham \email{postmaster@exim.org} ���ޤ���. Marc Merlin \email{marc_soft@merlins.org} �� Mailman 2.1 �� Exim 4 �Ѥ˲������ޤ���. Greg Ward \email{gward@python.net} ����ľ��/�ƹ���/���β�/��ά�����ޤ���. \subsection{Sendmail ��륵���Ф�Ȥ����} \begin{notice}[warning] Sendmail ��륵���Ф�Ȥ��Ȥ�, \file{mm_cfg.py} ����� \var{DELIVERY_MODULE} �����ѿ��Ȥ��� \code{'Sendmail'} �����줿���Ȼפ����⤷��ޤ���, �������Ƥ�\strong{�����ޤ���}. \file{Sendmail.py} �Υ⥸�塼��̾�� �ְ�ä��դ����Ƥ��ޤ�. �ǥե���Ȥ� \file{SMTPDirect.py} �ǻȤ� SMTP �������Ф���, ���ޥ�ɥ饤��� ��å��������Ϥ�������ɽ���Ƥ��ޤ�. \file{Sendmail.py} �ե�����ˤϴ��ΤΥ������ƥ��ۡ��뤬���� ��ǰŪ��ǽ����������뤿�������Ƥ��ޤ�\footnote{�º�, Mailman �� �Ƕ�ΥС������Ǥ�, ���Υ⥸�塼���虜��ư���ʤ����Ƥ���ޤ�. �⤷�����ͭ���ˤ������ΤǤ����, �ʤˤ������뤫�褯���Ƥ��ʤ���� �����ޤ���.}. �⤷ \file{SMTPDirect.py} �����Ѥ����꤬����ʤ� \file{Sendmail.py} �� �Ȥ��ΤǤʤ�, �����ľ�����ȤǤ�. �Ǥʤ��ȥ������ƥ����Ѥˤ��餹 ���Ȥˤʤ꤫�ͤޤ���. \end{notice} \subsubsection{Sendmail �� ``smrsh'' �Ȥ�Ŭ��} �������С������� Sendmail �� Sendmail �����ץ������Ȥ��� �Ȥ����Ȥ����¤��뤿��� ``smrsh'' �Ȥ������¼¹ԥ桼�ƥ���ƥ��� �դ��Ƥ��ޤ�. ����Ū�� Mailman �Υ�åץץ�����ब smrsh �ǻȤ��� �褦�ˤ��Ƥ����ʤ��� Mailman ��ư��ޤ���. �⤷��뤬 Mailman �� ��åץץ��������Ϥ���, ``operating system error'' ������ �����˵�Ͽ����Ƥ����, ����������ͤ������äƤ��뤳�Ȥˤʤ�ޤ�. ������褹��Τˤ褤��ˡ��: \begin{itemize} \item Sendmail �� smrsh ��åץץ�������ɤ��Ǽ¹Ԥ��Ƥ��뤫��õ��: \begin{verbatim} % grep smrsh /etc/mail/sendmail.cf \end{verbatim} \item �¹Ե��Ĥ�����ץ������� smrsh ���ɤ��˥���ܥ�å� ����Ƥ��뤫��õ��. ���Υ��ޥ�ɤκǽ�Τۤ��Ǥɤ����� �ǥ��쥯�ȥ�(�㤨�� \file{/var/adm/sm.bin} �ߤ�����)�Υѥ� ���ФƤ���Ǥ��礦: \begin{verbatim} % strings $path_to_smrsh | less \end{verbatim} \item \file{/var/adm/sm.bin} ���뤤�ϼ�ʬ�Υ����ƥ�Ǹ��Ĥ��� �ǥ��쥯�ȥ� (\file{/etc/smrsh} �Ȥ� \file{/var/smrsh} �Ȥ� \file{/usr/local/smrsh} �Ȥ�...) �ذܤä�: \begin{verbatim} % cd /var/adm/sm.bin \end{verbatim} \item Mailman �Υ�åץץ������ؤΥ���ܥ�å����������ޤ�: \begin{verbatim} % ln -s /usr/local/mailman/mail/mailman mailman \end{verbatim} \end{itemize} \subsubsection{Sendmail �� Mailman ������} David Champion �� Sendmail �� Mailman ����̩�ܤ����礹��, �Ĥޤ� �ꥹ�Ȥ��������줿�Ȥ��˥����ꥢ���ơ��֥�����Խ����ʤ��Ƥ�, Sendmail ����ưŪ��ǧ�����������ꥹ�Ȥ���������褦�ˤ��뤿��� �쥷�Ԥ��£���Ƥ���ޤ���. Mailman �Υ���������ʪ \file{contrib} �ǥ��쥯�ȥ�˼���4�Ĥ� �ե����뤬����ޤ�: \begin{itemize} \item \file{mm-handler.readme} - ���åȥ��åפ�����ˡ������ \item \file{mm-handler} - ������������������ (MDA) \item \file{mailman.mc} - ����ե�������� \item \file{virtusertable} - RFC 2142 ���ɥ쥹���㳰�ˤ����� \end{itemize} \subsubsection{��ǽ�ˤĤ���} Sendmail ����ǽ����Ȥ��װ��Ȥ��Ƴμ¤ʤΤ�, �����ԤΥۥ��Ȥ� DNS ��Ʊ���˸��ڤ���褦�����ꤵ��Ƥ�����Ǥ�. Mailman ���饵���Ф� ��뤬���������Ȥ��ˤ�������������ǽ������ޤ�. Mailman �� \code{localhost} (�Ĥޤ�, 127.0.0.1) ���� Sendmail �� SMTP �ݡ��Ȥ���³���ޤ��Τ�, ��������ۥ��Ȥ������³�ˤĤ��Ƥ� DNS �Ǥ�Ʊ�����ڤ�\strong{���ʤ�}�褦�� Sendmail �����ꤷ�Ƥ�������. \subsection{qmail ��륵���Ф�Ȥ����\label{qmail-issues}} �����Ǥ�, qmail �����������������Ȥ�Ȥ��桼�����֤Ĥ��ä�������Ĥ��Ȥꤢ���ޤ�. Mailman ���濴Ū�ʥ��ƥʤ� qmail ��ȤäƤ���ԤϤ��ޤ���Τ�, �ʲ��ξ���Ϥ��٤�, Mailman �Υ桼�� ���ߥ�˥ƥ������£���줿��ΤǤ�. �Ȥ�櫓, Martin Preishuber �� Christian Tismer, ������ Balazs Nagy (�ʲ� BN) �� Norbert Bollow (�ʲ� NB) ���������äƤ��ޤ�. \begin{itemize} \item \longprogramopt{with-mail-gid} \program{configure} ���ץ�����Ȥä�, mail-gid �Υ桼����, \code{qmail}, \code{mailman}, \code{nofiles} �Τ����줫�ˤ���ɬ�פ����ꤽ���Ǥ�. \emph{BN:} �ɤ�����֤���, ����Ǽ�����ˤ��礤�˰�¸���ޤ�. ���Ȥ���, ñ��� \file{\~{}alias/.qmail-*} �ե������ȤäƤ���Τʤ�, \program{`id -g alias`} ��Ȥ��ޤ�\footnote{����: �桼�� \code{alias} �� GID ��Ȥ�, �Ȥ�����̣�Ǥ�.}. ������ \file{/var/qmail/users} ��ȤäƤ���Τʤ�, �����ǻ��ꤷ����� gid ��Ȥ����Ȥˤʤ�ޤ�. ���ۥɥᥤ��Υ��ɥ쥹��ľ�� \code{mailman} �桼���˸������褦�ˤ��Ƥ��� (���Ȥ���, ���ꥹ�����ѤΥɥᥤ��� ``virtualdomains'' ��ȤäƤ���) �Τʤ�, \longprogramopt{with-mail-gid}=\var{mailman�桼���Υ��롼�פ�GID} ��Ȥ�ʤ���Фʤ�ʤ��Ǥ��礦. �����, �ꥹ�ȤΥ����ꥢ���� \file{\~{}alias} ������뤳�ȤȤ�ξΩ���ޤ���. �������������ꥢ����, \code{mailman-�ꥹ��̾*} ��ž�������ΤˤʤäƤ��ޤ��ޤ�. \item �����ƥ�˥桼�� \code{mailman} �������, �����ꥢ�� \code{mailman-owner} �� \file{\~{}mailman} ����Ǥ���ư��ޤ�. \file{\~{}mailman} �ǥ��쥯�ȥ����� \program{touch .qmail-owner} �����, ���Υ����ꥢ��������Ǥ��ޤ�. \emph{NB:} ������, �䤬����ɤ��������Ȼפ��Τ�, \program{chown root \~{}mailman} �뤳�Ȥ�, ��������� qmail �� \code{mailman} ��, ���������Ǥ���桼���Ȥߤʤ��ʤ��ʤ�ޤ� (``man 8 qmail-getpw'' �Ƥ�������)\footnote{����: \code{mailman} �桼���Υۡ���ǥ��쥯�ȥ꤬¸�ߤ��ʤ���� (�֥��롼�פȥ桼�����ɲáפ���μ��ΤȤ���ˤ���Ȥ����ʤ�ޤ�) ��, qmail �� \code{mailman} ��, ���������Ǥ���桼���Ȥߤʤ��ޤ���.}. \item ��Ϣ��������Ȥ���, ���ꥹ�ȤΤɤ줫��Ʊ��̾���Υ桼���������, \samp{-} ������ꥹ��̾�����꤬������, �Ȥ�����Τ�����ޤ�. ���Υ桼���Υۡ���ǥ��쥯�ȥ�� \file{.qmail} ������쥯�����ե�������֤��Ƥ�, Mailman �Υ�åѤ������� GID �ǸƤӽФ��ʤ�����, ư��ޤ���. ������, \file{/var/qmail/users/assign} �ե�����˼��Τ褦�ʹԤ�����뤳�ȤǤ�: \begin{verbatim} +zope-:alias:112:11:/var/qmail/alias:-:zope-: . \end{verbatim} �����, �ꥹ��̾�� \code{zope-users} �ʤɤǤ�����Ǥ�. \emph{NB:} ������, �ꥹ�Ȥ��ۥɥᥤ��ǰ������Ȥˤ���, \file{/var/qmail/control/virtualdomains} �ե������Ȥä� ���β��ۥɥᥤ��� \code{mailman} �桼���Ǵ��������뤳�Ȥ�Ǥ��ޤ�. \item \emph{BN:}��������å������� \code{mailman} �ʳ��Υ桼������������Ȥ���, ���Υ桼���� \file{\~{}mailman} �˥��������Ǥ���褦�ˤʤäƤ��뤳�Ȥ�ɬ�ܤǤ�. \file{\~{}mailman} �˥��롼���߸��¤����ä�, setgid �ӥåȤ����åȤ��Ƥ��뤳�Ȥ�Τ���ޤ�. ������, ��������桼���� \code{mailman} ���롼�פ�����ޤ���, �ۤ��Υ桼���� \file{\~{}mailman} �˥��������Ǥ��ʤ����Ƥ�褤�Ǥ��礦. WWW �����ӥ��ˤĤ��Ƥ�Ʊ���褦�ˤǤ��ޤ�. �Ȥˤ���, ���٤ƤΥ������ۥ�륵���Ф�Ĥ���Τ������Τ�꤫���Ǥ�. \emph{NB:} ���Ȥ���, ���ۥ�륵�����Ѥ� ��ʬ�� IP ���ɥ쥹��ؤ� DNS "A" �쥳���ɤ��ɲä������, \file{/var/qmail/control/virtualdomains} �ե������ \code{lists.kva.hu:mailman} �Ȥ����Ԥ�, \file{/var/qmail/control/rcpthosts} �ե������ \code{lists.kva.hu} �Ȥ����Ԥ�, ���줾���ɲä��ޤ�. ``virtualdomains'' ���ѹ�������, qmail-send �� HUP �����ʥ������Τ�˺��ʤ��褦�ˤ��Ƥ�������. �����, lists.kva.hu ���Τ��٤ƤΥ��� mail.kva.hu �� mailman �桼�����Ϥ��褦�ˤʤ�ޤ�. ���줫��, �����ꥢ����������ޤ�: \begin{verbatim} .qmail => mailman@...�ؤΥ�� .qmail-owner => mailman-owner �ؤΥ�� \end{verbatim} %% [����] ���ۥ�륵���Фˤ������, mailman*@... �� mailman-mailman*@.. %% �����������Τ�, �嵭�Υ����ꥢ�������פǤ�? �ꥹ�ȤΥ����ꥢ���ˤĤ��Ƥ�, ���Τ褦�˼�ư�Ǻ������뤳�Ȥ�Ǥ��ޤ�: \begin{verbatim} .qmail-list => 'list' �ꥹ�Ȥؤ���� .qmail-list-admin => 'list' �δ����Ԥؤ���� .qmail-list-request => 'list' �ؤ��� �ʤ� \end{verbatim} ���뤤��, (��Τ褦��, lists.kva.hu ���ۤǻȤäƤ���Ȥ���) �ꥹ�ȥ����ꥢ���μ�ư�İ��뤳�Ȥ�Ǥ��ޤ�. Mailman �Υ���������ʪ�ˤ��� \file{contrib/qmail-to-mailman.py} �Ƥ�������\footnote{����: qmail-to-mailman.py ��, ���ۥ�륵���ФǤʤ����ɥ쥹�ˤ�Ȥ���Ǥ��礦.}. \file{\~{}mailman/.qmail-default} ���ѹ�����, ���Τ�Τ�ޤ�ޤ�: \begin{verbatim} |preline /path/to/python /path/to/qmail-to-mailman.py \end{verbatim} �����, �������ꥹ�Ȥ�ưŪ�ˤߤĤ��Ƥ����褦�ˤʤ�ޤ�. \item localhost �������졼�Ǥ���褦�˵���Ĥ��ʤ���Ф����ޤ���. qmail �� inetd �� tcpenv ���̤��Ƶ�ư���Ƥ���Τʤ�, \file{/etc/hosts.allow} �ˤĤ��Τ褦�ʹԤ�ɬ�פǤ�: \begin{verbatim} tcp-env: 127. 10.205.200. : setenv RELAYCLIENT \end{verbatim} ������ 10.205.200. ��, ��ʬ�� IP ���ɥ쥹�֥��å��Ǥ�. tcpserver ��ȤäƤ���Τʤ�, \file{/etc/tcp.smtp} �ե������ ���Τ褦�ʤ�Τ�ɬ�פǤ�: \begin{verbatim} 10.205.200.:allow,RELAYCLIENT="" 127.:allow,RELAYCLIENT="" \end{verbatim} \item \emph{BN:} \file{/var/qmail/control/concurrencyremote} ���ͤ�, �QŪ���ϰϤ����䤻��, ��å����������Ф����®��ư���褦�ˤʤ�ޤ�. ������, �����ƥब���Ф���� %% (many if not most cannot) ??? ����ʬ���äƤ��ʤ��¤�, �����ͤ� 120 ����礭�����ƤϤʤ�ޤ���. \item qmail �ȥ�졼������ˤĤ��ƤΤ���ʤ�����, qmail ��ʸ��ˤ���ޤ�. \end{itemize} \emph{BN:} �Ǹ��, �ꥹ�ȤΥ����ꥢ�����������륹����ץȤ�Ƥ����ޤ� (�ʤ�餫����ͳ��, \file{contrib/qmail-to-mailman.py} ��ȤäƼ�ưŪ�˥����ꥢ�����Ф����Ȥ��Ǥ��ʤ��ä���, �����������ʤ��Ȥ��˻Ȥ��ޤ�): Mailman 2.0 ����Τ���Υ�����ץ�: \begin{verbatim} #!/bin/sh if [ $# = 1 ]; then i=$1 echo �����ȥǥ��쥯�ȥ�� $i �ؤΥ���äƤ��ޤ�... echo "|preline /home/mailman/mail/mailman post $i" > .qmail-$i echo "|preline /home/mailman/mail/mailman mailowner $i" > .qmail-$i-admin echo "|preline /home/mailman/mail/mailman mailowner $i" > .qmail-$i-owner echo "|preline /home/mailman/mail/mailman mailowner $i" > .qmail-owner-$i echo "|preline /home/mailman/mail/mailman mailcmd $i" > .qmail-$i-request fi \end{verbatim} % $ - emacs turd \begin{notice}[note] �ʲ��Υ�����ץȤ�, �����˥��ȡ��뤷�� Mailman 2.1 �Τ���Τ�ΤǤ�. Mailman 2.0 ���饢�åץ��졼�ɤ���桼������, �ǥ��쥯�ȥ�� \file{/usr/local/mailman} ���� \file{/home/mailman} ���Ѥ������뤫�⤷��ޤ���. �����Ϥä�����ꤹ��ˤ�, % ??? ����ѥ���ΤȤ��� \program{configure} �� \longprogramopt{prefix} ���ץ������Ϥ��ޤ�. \end{notice} \begin{verbatim} #!/bin/sh if [ $# = 1 ]; then i=$1 echo �����ȥǥ��쥯�ȥ�� $i �ؤΥ���äƤ��ޤ�... echo "|preline /usr/local/mailman/mail/mailman post $i" > .qmail-$i echo "|preline /usr/local/mailman/mail/mailman admin $i" > .qmail-$i-admin echo "|preline /usr/local/mailman/mail/mailman bounces $i" > .qmail-$i-bounces # ���ιԤ� VERP �� # echo "|preline /usr/local/mailman/mail/mailman bounces $i" > .qmail-$i-bounces-default echo "|preline /usr/local/mailman/mail/mailman confirm $i" > .qmail-$i-confirm echo "|preline /usr/local/mailman/mail/mailman join $i" > .qmail-$i-join echo "|preline /usr/local/mailman/mail/mailman leave $i" > .qmail-$i-leave echo "|preline /usr/local/mailman/mail/mailman owner $i" > .qmail-$i-owner echo "|preline /usr/local/mailman/mail/mailman request $i" > .qmail-$i-request echo "|preline /usr/local/mailman/mail/mailman subscribe $i" > .qmail-$i-subscribe echo "|preline /usr/local/mailman/mail/mailman unsubscribe $i" > .qmail-$i-unsubscribe fi \end{verbatim} % $ - emacs turd \subsubsection{VERP �ˤĤ��Ƥξ���} �嵭�� 2.1 �ѥ����ꥢ������������ץȤǤ�, VERP �ѤιԤ������ȥ����� ���Ƥ���Τ˵��Ť������ȤǤ��礦. VERP �˴ؿ�������Τʤ�, 2�Ĥ����� �褬����ޤ�. ��Ĥ�� Mailman �� VERP �����ʤ碌���ΤǤ�. �����ͭ���ˤ���ˤ�, ��Υ�����ץȤǥ����Ȥ�, \file{mm_cfg.py} �ե�����˼��ιԤ�ä��ޤ�: \begin{verbatim} VERP_FORMAT = '%(bounces)s-+%(mailbox)s=%(host)s' VERP_REGEXP = r'^(?P<bounces>.*?)-\+(?P<mailbox>[^=]+)=(?P<host>[^@]+)@.*$' \end{verbatim} % $ - emacs turd �̤������Ȥ���, SourceForge �ˤ���ѥå���Ȥ��ޤ�. ���ξ��ˤ���ޤ�: \url{http://sourceforge.net/tracker/?func=detail\&atid=300103\&aid=645513\&group_id=103} ���Υѥå��ϸ������Ǥ�, �ƥ��Ȥ���ʬ�Ȥϸ����ʤ��Τ�, ��ȯ�Ԥ� qmail �ˤĤ��Ƥ褯ʬ���äƤ�������Ǥ��礦. ʹ���Ȥ����ˤ���, ���Υѥå��� qmail �Ȥ��Ĵ�¤��륢�ץ�������, ��Ψ���礭������������ȤΤ��ȤǤ�. \subsubsection{���ۥ�� ������} \ref{qmail-issues} ��ǤⲾ�ۥ�륵���ФˤĤ��ƤϿ���ޤ�����, �ƥ�����Υѥå����ʲ��ξ��ˤ���ޤ�: \url{http://sf.net/tracker/index.php?func=detail\&aid=621257\&group_id=103\&atid=300103} ǰ�Τ���. ���Υѥå���, qmail �Υ��ȡ���ˤĤ��Ƥ褯ʬ���äƤ�������Ǥ�. \subsubsection{���ʤ����} ��å������եå����ѹ��ˤĤ��Ƥξ���˴ؿ�������褦�ʤ�, Norbert Bollow �� Mailman �� qmail �ˤĤ��ƽ���Τ�����ޤ�. ���ξ��ˤ���ޤ�: \url{http://mailman.cis.to/qmail-verh/}\footnote{����: ���������Ǥϥ��������Ǥ��ޤ���Ǥ���.} \section{�����ȤΥǥե���Ȥ�����\label{customizing}} Mailman �ˤ������Υ��������Τ����ꥪ�ץ������ޤ��Τ�, ������������, ɬ�פ˱������ѹ����Ƥ�������. ���ץ����Τ����Ĥ��� Mailman �����ʤ��δĶ��Ǥɤ�ư��뤫�����椷, ���뤤�Ͽ����˺��������ꥹ�ȤΥǥե���Ȥ����Ӥޤ�\footnote{ ����Ū��, �������ѹ������ꥹ�ȤΥǥե���Ȥϴ��˺����ѤߤΥꥹ�Ȥˤ� Ŭ�Ѥ���ޤ���. �ꥹ�Ȥ��������줿����ѹ���ä���ˤ�, �����֥��ե����� ��Ȥ��� \program{bin/withlist} �� \program{bin/config_list} �Τ褦�� ���ޥ�ɹԥ�����ץȤ�Ȥ��ޤ�.}. �ޤ������ƥ���塼�˥Υѥ���������Υ��ץ������ޤ�. \file{\var{\$prefix}/Mailman/Defaults.py} �ե�����˥��������Τ� �ǥե���Ȥ����������äƤ��ޤ�. ������, \strong{����} ���Υե������ �ѹ����ƤϤ����ޤ���. ��������, Ʊ���ǥ��쥯�ȥ�ˤ���, \file{mm_cfg.py} �ե�������ѹ����Ƥ�������. \file{Defaults.py} �� ���äƤ���ΤȰ㤦��Τ��� \file{mm_cfg.py} �˽ä���Ф褤�����Ǥ�. ���� Mailman ��С�����åפ������, \file{mm_cfg.py} ���������� ���ȤϤ���ޤ���. \file{Defaults.py} �ե�����ˤϥ����Ȥ������Ƥ���ޤ�. ������ ���ץ��������������뤳�ȤϤ��ޤ���. \file{Defaults.py} �� \file{mm_cfg.py} �Ϥɤ���� \ulink{Python}{http://www.python.org} �ե�����ʤΤ� Python ��ʸˡ����褦�ˤ��ʤ��Ȥ����ޤ���. �Ǥʤ��� Mailman ��ư���ޤ���. \begin{notice}[note] \var{HOME_DIR} �� \var{MAILMAN_DIR} �ѿ����Ѥ��Ƥ� \strong{�����ޤ���}. ������ \program{configure} ������ץȤǼ�ưŪ�����ꤵ��ޤ�. �⤷�Ѥ���� Mailman �Υ��ȡ��뤬����ޤ�. \end{notice} \file{mm_cfg.py} ���ѹ��� \ref{building} ��� Mailman �� ���ȡ��뤷���Ȥ��Υ桼���Ǥ����ʤ�ɬ�פ�����ޤ�. \section{���������ΤΥ��ꥹ�Ȥ���} Mailman �ȥ�륵���Ф����������������, ���� ``����������'' �� ���ꥹ�Ȥ���ɬ�פ�����ޤ�. ����ϥѥ������˺���Τ�ȯ���� �Ȥ��Ƹ�����ΤǤ���, Mailman �����������Ѥ���Τ�ɬ�פʤ�ΤǤ�. �̾�, ����� \code{mailman} �Ȥ���̾���Υꥹ�ȤǤ���, �ѹ�����ɬ�פ� �������, \file{mm_cfg.py} ����� \var{MAILMAN_SITE_LIST} �ѿ��� �ѹ����Ƥ�������. ���Υץ���ץȤ�³�����ޥ�ɤǤ��Υ����ȥꥹ�Ȥ� �������뤳�Ȥ��Ǥ��ޤ�. \begin{verbatim} % bin/newlist mailman \end{verbatim} ������, �����ȥꥹ�Ȥ�����ޤ�. ����ν����ˤʤ�褦��, �����ȥꥹ�Ȥ������ʤҤʷ��� \file{data/sitelist.cfg} �˺�ä� ����ޤ�. ���ΤҤʷ������ꥪ�ץ����ˤĤ��Ƹ��Ƥ����Ƥ�������. \file{sitelist.cfg} �ե������̾�����ФƤ��ʤ����ץ����ˤĤ��Ƥ� �ѹ�����ʤ����Ȥ����դ��Ƥ�������. ���ΤҤʷ���Ŭ�Ѥ���ˤϼ��Τ褦�ˤ��ޤ�: \begin{verbatim} % bin/config_list -i data/sitelist.cfg mailman \end{verbatim} \file{sitelist.cfg} �Υ��ץ�����Ŭ�Ѥθ��, �ꥹ�Ȥδ����ڡ����� ����Ƥ������Ȥ�˺��ʤ��Ǥ�������. ��������. �����ȥꥹ�Ȥˤϼ�ʬ���Ȥ���Ͽ���Ƥ����Ƥ�������. \section{Cron ������} ¿���� Mailman �λŻ������Ū�ʥ������塼���ȯ�����ޤ�. ���Τ���, ������������������ץ�������¹Ԥ���褦 \program{cron} �����ꤷ�ʤ���� �ʤ�ޤ���\footnote{�����ΥС�����鹹������Ȥ��ˤ�, ������ crontab ������ʤ��Ȥ����ʤ����⤷��ޤ���. ������, ʣ���� Mailman �� ���ȡ��뤷�Ƥ�����ˤ����դ�ɬ�פǤ�. crontab ���ѹ������ ¾��ʿ�Ԥ��� Mailman ��������⤷��ޤ���.}. �⤷, ���ʤ��� crontab �� \programopt{-u} ���ץ����ݡ��Ȥ��� ������, root �ˤʤäƼ��Υ��ƥåפ�¹Ԥ��Ƥ�������. ���Υ��ޥ�ɤ�¹Ԥ��� \file{\var{\$prefix}/cron/crontab.in} �� crontab �Υ���ȥ������ޤ�. \begin{verbatim} % cd $prefix/cron % crontab -u mailman crontab.in \end{verbatim} �⤷, \longprogramopt{with-username} ���ץ�����ȤäƤ�����, \programopt{-u} �ΰ����ˤ� \code{mailman} ������ˤ��Υ桼��̾��Ȥ��ޤ�. �⤷, crontab �� \programopt{-u} ���ץ����ݡ��Ȥ��Ƥ��ʤ����, ���Τ褦�ˤ��Ƥ�������: \begin{verbatim} % cd $prefix/cron % su - mailman % crontab crontab.in \end{verbatim} \section{Mailman �� qrunner ��ư����} Mailman �����ƤΥ�������� ``qrunner'' �ȸƤФ��ץ�������Ȥ��ޤ�. \var{\$prefix} �˰�ư����, ���Υ��ޥ�ɤ�¹Ԥ��뤳�Ȥ� qrunner �� ��ư����ɬ�פ�����ޤ�: \begin{verbatim} % bin/mailmanctl start \end{verbatim} �����ƥ���֡��Ȥ��뤿�Ӥ� Mailman ��ư�����ۤ����褤�Ǥ��礦. �ºݤˤɤ����뤫�ϻ��Ѥ��륪�ڥ졼�ƥ������ƥ�˰�¸���ޤ�. OS �� \program{chkconfig} ���ޥ�ɤݡ��Ȥ��Ƥ���� (�㤨�� Red Hat �� Mandrake �� Linux) ���Τ褦�ˤ��Ƥ������� (Mailman �� ���ȡ���ǥ��쥯�ȥ꤫��, root �ˤʤä�): \begin{verbatim} % cp scripts/mailman /etc/init.d/mailman % chkconfig --add mailman \end{verbatim} \file{/etc/init.d} �ϥ����ƥ�ˤ�äƤ� \file{/etc/rc.d/init.d} ���� ����ޤ���. Gentoo Linux �Ǥϼ��Τ褦�ˤ��ޤ�: \begin{verbatim} % cp scripts/mailman /etc/init.d/mailman % rc-update add mailman default \end{verbatim} Debian �ǤϤ�������Ȥ褤�Ǥ��礦: \begin{verbatim} % update-rc.d mailman defaults \end{verbatim} \program{chkconfig} �ݡ��Ȥ��ʤ� \UNIX{} �Ǥϼ��ΰ�Ϣ�Υ��ޥ�� ���Ƥߤ�Ȥ褤���⤷��ޤ���: \begin{verbatim} % cp scripts/mailman /etc/init.d/mailman % cp misc/mailman /etc/init.d % cd /etc/rc.d/rc0.d % ln -s ../init.d/mailman K12mailman % cd ../rc1.d % ln -s ../init.d/mailman K12mailman % cd ../rc2.d % ln -s ../init.d/mailman S98mailman % cd ../rc3.d % ln -s ../init.d/mailman S98mailman % cd ../rc4.d % ln -s ../init.d/mailman S98mailman % cd ../rc5.d % ln -s ../init.d/mailman S98mailman % cd ../rc6.d % ln -s ../init.d/mailman K12mailman \end{verbatim} \section{�ۥ���̾�����������å�����} \file{Defaults.py} ����� \var{DEFAULT_EMAIL_HOST} �� \var{DEFAULT_URL_HOST} ������å����Ƥ�������. �ѹ���ɬ�פʾ��� \file{Defaults.py} �� \strong{�ʤ�} \file{mm_cfg.py} �˽ޤ�. �ޤ�, �ɤ��餫���ͤ��ѹ������Ȥ��ˤ�, \file{mm_cfg.py} ���ѹ��θ��, ���Τ褦���ɲä��Ƥ�������. \begin{verbatim} add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) \end{verbatim} �⤷���˺��������ꥹ�Ȥ����ä���, \program{bin/fix_url.py} ��Ȥä� �ɥᥤ��̾���ѹ����Ƥ�������. \section{�����ȥѥ���ɤκ���} \program{bin/mmsitepass} ������ץȤ���Ѥ����, ���ޥ�ɥ饤�� ���ĤΥ��������ΤΥѥ���ɤ�����Ǥ��ޤ�. ����ܤ�, ``�����ȥѥ����'' �ǥ����ƥ��ǥѥ���ɤ�ɬ�פ� ���Ϥɤ��Ǥ�Ȥ����Ȥ��Ǥ��ޤ�. �����ȥѥ���ɤϤɤΥꥹ�Ȥ� �����ڡ����ؤ����뤳�Ȥ��Ǥ��ޤ���, �ɤΥ桼���Ȥ��Ƥ��������Ǥ��ޤ�. Unix �����ƥ�Ǥ� \code{root} ��ͤ��Ƥ�������. ���Υѥ���ɤ� �����ͤ�������Ǥ�������. �����ܤΥѥ���ɤϥ��������Τ� ``�ꥹ�Ⱥ���'' �ѥ���ɤǤ�. �����Ȥ���, �����ȥѥ���ɤ����Ƥ��ø���Ϳ������, �������ꥹ�Ȥ� ������������θ��¤�������뤳�Ȥ��Ǥ��ޤ�. �������, �����ȥѥ���ɤǤ⿷�������ꥹ�Ȥ�����Ǥ��ޤ���, �ꥹ�Ⱥ����ѥ���ɤ����̤��������˸��ꤹ���ΤǤ�. �����ȥѥ���ɤ�����ˤϼ��Υ��ޥ�ɤ�Ȥ��ޤ�: \begin{verbatim} % $prefix/bin/mmsitepass <���ʤ��Υ����ȥѥ����> \end{verbatim} �ꥹ�Ⱥ����ѥ���ɤ�����ϼ��Υ��ޥ�ɤ�ȤäƤ�������: \begin{verbatim} % $prefix/bin/mmsitepass -c <�ꥹ�Ⱥ����ѥ����> \end{verbatim} �ꥹ�Ⱥ����ѥ���ɤ����ꤷ�ʤ��Ƥ�빽�Ǥ���, �����ȥѥ���ɤ� ɬ�פˤʤ�Ϥ��Ǥ�. \section{���ƥꥹ�Ȥ��������} Mailman ��Ȥ��������äƥꥹ�Ȥ�������������ꤷ����Ȥ��ä��ܤ������� �ˤĤ��Ƥ�, Mailman �ꥹ�ȴ����ޥ˥奢��Ȥ��Ƥ�������. �����Ǥ�, �����֥��ե�������Ȥäƺǽ�Υ��ꥹ�Ȥ���� ���뤿��δ�ñ�ʥ����ɤ��������ޤ�: \begin{itemize} \item �ޤ� URL \code{http://my.dom.ain/mailman/create} ���Ƥ�������. \item ���̤˽ФƤ���ؼ��˽��äƥե�����˵�������, ``�ꥹ�Ⱥ����Ԥ� �ѥ����'' �ΤȤ����� \ref{customizing} ��Ǻ������� �ѥ���ɤ�����Ƥ�������. ��ʬ�Υ�륢�ɥ쥹�� ``�ꥹ�ȴ����ԥ��ɥ쥹�ν������'' �ΤȤ���������, ``�֥ꥹ�Ⱥ�����λ�פ���Ǵ����Ԥ��Τ餻�ޤ���'' �� ``�Ϥ�'' �� ����Ǥ�������. \item ``�ꥹ�Ȥ��������'' �ܥ����å����Ƥ�������. \item Mailman ���餢�ʤ����˿��������ꥹ�Ȥ��������줿���Ȥ� �����Τ餻�ޤ��Τǥ����å����Ƥ�������. \item ��ǧ�Υ����֥ڡ����� Mailman �������������˽줿��� ���ɤä�, �ꥹ�Ȥδ����ڡ����عԤäƲ�����. ����������, URL �� \code{http://my.dom.ain/mailman/admin/mylist} �ߤ����ˤʤäƤ� �Ϥ��Ǥ�. \item �ꥹ�ȤΥѥ���ɤ������, ``��������...'' ��å����ޤ�. \item ``�������'' ��å���, ³���� ``�ޤȤ��������Ͽ'' �عԤä� ��������. \item �礭���ƥ��������ϥ��ꥢ�˼�ʬ�Υ�륢�ɥ쥹������, ``�ѹ�����������'' ��å����Ƥ�������. \item ��ʬ�Υ�륽�եȤ�, \code{mylist@my.dom.ain} ���Ƥ˥��� �Ф��Ƥ�������. 1,2ʬ�Τ�����, Mailman ��ͳ�Ǽ�ʬ�Υ�뤬�֤ä� ���Ǥ��礦. \end{itemize} ����ǤȤ�! ���ʤ��κǽ�Υ��ꥹ�Ȥ�����ȥƥ��Ȥ���λ���ޤ���. �������꤬�����ä���, \ref{troubleshooting} ��Ƥ�������. \section{�ȥ�֥���к�\label{troubleshooting}} �⤷, Mailman �μ¹Ԥ����꤬ȯ��������, �ޤ��ʲ��Ρְ���Ū�� ����פ��������å����ޤ��礦���⤷�����꤬�����˴� �ޤ�Ƥ��ʤ���С�\ulink{����饤��إ��}{http://www.list.org/help.html} �Ƥ�������. ��������, \ulink{FAQ}{http://www.list.org/faq.html} �� \ulink{���饯�ƥ��֤� FAQ ����������}{http://www.python.org/cgi-bin/faqw-mm.py} �عԤ����Ȥ��Ǥ��ޤ�. ���줫�顤�����ƥ�� syslog ��, Mailman �� \file{\var{\$prefix}/logs/error} �ե�����˥��顼�����äƤ��ʤ���������å� ���ޤ��礦�� ����Ǥ����꤬�����, \email{mailman-users@python.org} ���ꥹ�� \footnote{������Ƥ���ˤϤ����ꥹ�Ȥ�����ʤ��Ȥ����ޤ���, �ꥹ�Ȥ���¸��ˤϰ��̸�������Ƥ��ޤ�.} �˼����Ƥ�������. \url{http://mail.python.org/mailman/listinfo/mailman-users} �˾ܤ��� ���⤬����ޤ�. ���ڥ졼�ƥ������ƥ��, ���Ѥ��Ƥ��� Python �ΥС������, ���ȡ������ Mailman �ΥС������ʤɤˤĤ��Ƥξ���� ˺�줺������Ƥ�������. �ʲ���, ����Ū�ʼ���Ȳ����Υꥹ�ȤǤ�: Here is a list of some common questions and answers: \begin{itemize} \item \strong{����:} Mailman �� �����֥ڡ��������� 404 File not found ���顼�� �ʤ�ޤ�. \strong{���ˡ:} �����֥����Ф������ Mailman �� CGI ���ޥ�ɤ������� ������褦������Ǥ��Ƥ��ޤ���. �ʲ����ǧ: \begin{enumerate} \item �����֥����Ф� \file{\var{\$prefix}/cgi-bin} ������������ (�ѡ��ߥå����) �����ꤹ��. \item �����֥����Ф��������Ƶ�ư����. \end{enumerate} �����֥����Ф��������褯�ɤ�Ǥɤ�������褤��Ĵ�٤Ƥ�������. \item \strong{����:} Mailman �Υ����֥ڡ��������� "Internal Server Error" �ˤʤ�ޤ�. \strong{���ˡ:} �ְ�ä��桼���ޤ��ϥ��롼�פ�Ȥä� CGI �� �¹Ԥ��褦�Ȥ��Ƥ����ǽ��������ޤ�. �����֥����ФΥ���������å����� ��������. �㤨�аʲ��Τ褦�ʹԤ����ä���, \begin{verbatim} Attempt to exec script with invalid gid 51, expected 99 \end{verbatim} Mailman ��ƥ��ȡ��뤷�ʤ���Фʤ�ޤ���. \label{building} ��˽�Ƥ����褦��, ������ CGI ���롼�� ID ����ꤷ�� ��������. \item \strong{����:} ����ꥹ�Ȥ����ä���, �ꥹ�Ȥ����Ĥ���ʤ��Ȥ��� ����������ޤ���. \strong{���ˡ:} ¿ʬ, �����ƥ�Υ����ꥢ���ǡ����١�����ɬ�פ� �����ꥢ������Ͽ���Ƥ��ʤ��ä��ΤǤ��礦. ���뤤��, Mailman �� ��륵���Ф��Ȥ߹�碌���������Ԥ��Ƥ��ʤ��Τ��⤷��ޤ���. �����ꥢ���ǡ����١��������Ƥ��ʤ���, ���ʤ��Υ����ƥ�Ǥ� \program{newaliases} ������Ū�˼¹Ԥ���ɬ�פ�����Τ�����ޤ���. ���ʤ��������ѤΥ����ФˤĤ���\ref{mail-server}��� ��ǧ���Ƥ�������. \item \strong{����:} �ꥹ�Ȥ˥������ä���, ``unknown mailer error'' �����äƤ��ޤ���. \strong{���ˡ:} ����åפǴְ�ä��桼���ޤ��ϥ��롼��ID ��ȤäƤ����ǽ��������ޤ�. ��륵���ФΥ���������å����� ��������. ���Τ褦�ʹԤ����ä���, \begin{verbatim} Attempt to exec script with invalid gid 51, expected 99 \end{verbatim} Mailman ��ƥ��ȡ��뤷�ʤ���Фʤ�ޤ���. \label{building} ��˽�Ƥ����褦��, ��������륰�롼�� ID ����ꤷ�� ��������. \item \strong{����:} ��� Postfix ���륵���Ф˻ȤäƤ��ޤ�. ������, ����åץץ������� GID ����äƤ������ʿ������˻Ĥ��ޤ�. \strong{���ˡ:} \file{\var{\$prefix}/data/aliases.db} �ե������ ��ͭ�Ԥ� \code{mailman} (���� \program{configure} ���ޥ�ɤǻȤä�̾��) �Ǥ��뤳�Ȥ��ǧ���Ƥ�������. �⤷ \code{mailman} �ʳ��Υ桼���� ��ͭ����Ƥ������, Postfix ���������桼���ǥ��ץ������� �¹Ԥ��ޤ���. \item \strong{����:} ��� Sendmail ���륵���Ф˻ȤäƤ��ޤ�. ������, ����ꥹ�Ȥ������ ``sh: mailman not available for sendmail programs'' �Ȥ�����뤬�֤äƤ��ޤ�. \strong{���ˡ:} ���ʤ��Υ����ƥ�Ǥ� Sendmail restricted shell (smrsh) ���Ȥ��Ƥ��ޤ�. ����åץץ������ (\file{\var{\$prefix}/mail/mailman}) ���� smrsh �Ǽ¹Ԥ����Ĥ���� ����ǥ��쥯�ȥ�˥���ܥ�å����ĥ��ɬ�פ�����ޤ�. ����Ū�ˤ��Υǥ��쥯�ȥ�� \file{/var/admin/sm.bin}, \file{/usr/admin/sm.bin}, \file{/etc/smrsh} �ʤɤ����ꤵ��Ƥ��ޤ�. Debian Linux �Ǥϥ����ƥ�� \file{/usr/lib/sm.bin} ��������ޤ� ��������ϴְ�äƤ��ޤ�. \file{/usr/admin/sm.bin} �� ��äƤ� ���إ���������ɬ�פ�����ޤ�. ����\program{newaliases} ���Ǥ��Ф��ɤΥ����ꥢ�����åפؤ� �����ʥ��ؤ�ɬ�פ�����ޤ��� \item \strong{����:} \program{configure} ��ƤӽФ��Ȥ��˻��餫���� ���ޤ��ޤ���. �ݽ��ƺƥ��ȡ��뤹��ˤϤɤ������餤���Ǥ���? \strong{���ˡ:} \begin{verbatim} % make clean % ./configure --with-the-right-options % make install \end{verbatim} \end{itemize} \section{�ץ�åȥե�����䥪�ڥ졼�ƥ��� �����ƥऴ�Ȥ���} ���̤�, Mailman �� POSIX ���Υ����ƥ� (Solaris, BSD �Τ��ޤ��ޤ��Ѽ�, Linux �ϥ����ƥ�, MacOSX, ����¾�� \UNIX{} �����ƥ�ʤ�) �Ǥʤ�ư��ޤ�. Windows �Ǥ�ư��ޤ���. �����Ƥ��ξ��, Mailman �����ݡ��Ȥ���Ƥ���ץ�åȥե������ư���褦�ˤ���ˤ�, ����ʸ���������������Ū�ʼ������ǽ�ʬ�Ǥ�. ������, �����Υ��ڥ졼�ƥ��� �����ƥ�Ǥ�, ���Τۤ���, ���ȡ��������κݤ˿侩������礬����ޤ�. \subsection{GNU/Linux �ˤĤ���} Linux ��, Mailman ��¹Ԥ���ץ�åȥե�����Ȥ��Ƥ�, ��äȤ���ڤ��Ƥ����ΤΤ褦�Ǥ�. Mailman �� Linux �Ǽ¹ԤǤ���褦�ˤ��뤿��Υҥ�Ȥ��Ĥ��ޤ�: \begin{itemize} \item �ϡ��ɥ�κ����ǥ��顼�������ä���, ���̤ʥ����奢 �����ͥ� (securelinux/openwall/grsecurity) ��ȤäƤ���Ȥ���, Mailman �Υ���������ʪ�Υե����� \file{contrib/README.check_perms_grsecurity} �Ƥ�������. Linux Mandrake ���奢 �⡼�ɤǻȤäƤ���Τʤ�, �������ˤ��ĤǤ��礦. \item Mandrake �� 9.0 �����꤫�� gcc �μ¹Ը��¤��ѹ����Ƥ��ޤ�. \code{mailman} �桼���ˤʤäƥӥ�ɤ���Τʤ�, \code{mailman} �� \code{cctools} ���롼�פˤ��°���Ƥ���褦�ˤ��ޤ�. \item Python �� Linux �ǥ����ȥ�ӥ塼�����Υѥå��������� (�㤨�� Redhat �ϤΥ����ƥ�ʤ� .rpm, Debian �ʤ� .deb) �ǥ��ȡ��뤷���Τʤ�, Python ``��ȯ��'' �ѥå������⥤�ȡ��뤷�ʤ���Ф����ޤ���. �������ʤ��ȴ��Ԥ����Ȥ���η�̤ˤʤ�ޤ���. �㤨��, Debian �� Python 2.2 ��ȤäƤ���Τʤ�, \code{python2.2-dev} �ѥå������ȡ��뤹��ɬ�פ�����ޤ�. Redhat �Ǥ�, ���֤� \code{python2-devel} �ѥå�������ɬ�פǤ��礦. Python �������饤�ȡ��뤷���Τʤ�, ���ޤ������Ϥ��Ǥ�. �����Ϥ褯�狼��ޤ���, ���ȡ���κ���ˤĤ��Τ褦�ʥ��顼��������Τʤ�, �������꤬�����Ƥ����Ƚ�Ǥ��Ƥ褤�Ǥ��礦: \begin{verbatim} Traceback (most recent call last): File "bin/update", line 44, in ? import paths ImportError: No module named paths make: *** [update] Error 1 \end{verbatim} ���줬������Τʤ�, Python �γ�ȯ�ѥѥå������ȡ��뤷�Ƥ��� �⤦���� \program{configure} �� \program{make install} ���äƤߤޤ��礦. ���뤤��, �ǿ��С������� Python (\url{http://www.python.org} ������Ǥ���) �������饤�ȡ��뤷�ޤ�. ���������, �嵭�ʳ��� Linux �ǥ����ȥ�ӥ塼�����Ǥ� ��ä��դ���ɽ��뤫�⤷��ޤ���, ���̤� \code{ImportError} �Ȥ���ɽ��ޤ�. \end{itemize} \subsection{BSD �ˤĤ���\label{bsd-issues}} Vivek Khera �ˤ���, ������ BSD �����ƥ�Ǥ�, ��֤Υ������ƥ� �������� setuid �ե�������ѹ���Ĵ�٤ޤ�. setgid �ǥ��쥯�ȥ��, �ѹ������ȥ�������̤˸���ޤ�. �ޤ�, BSD �����ƥ�Ǥ�, �ǥ��쥯�ȥ����˥ե���������, �ǥ��쥯�ȥ�Υ��롼��ͭ����ưŪ�˷Ѿ�����Τ�, setgid �ӥåȤϤʤ��Ƥ⤤���ΤǤ�. ¾�� \UNIX{} �����ƥ�Ǥ�, �ǥ��쥯�ȥ�� setgid �ӥåȤ�����ˤʤäƤ��ʤ��� �����Ϥʤ�ޤ���. �ǥ��쥯�ȥ�� setgid �ӥåȤ�ˤ����˥��ȡ��뤹��ˤ�, \program{configure} ��¹Ԥ������Ȥ�, \program{make} �� \var{DIRSETGID} �ѿ����Ϥ��Ф����Ǥ�: \begin{verbatim} % make DIRSETGID=: install \end{verbatim} �����, ���ȡ��뤵���ǥ��쥯�ȥ���Ф��� \program{chmod g+s} ���ޥ�ɤ�̵���ˤʤ�ޤ�. \subsection{MacOSX �ˤĤ���} Mailman �� MacOSX �Ǽ¹Ԥ��Ƥ���ͤ��������ޤ�. �����Ǥ�, Mailman �� MacOSX �Ǽ¹ԤǤ���褦�ˤ��뤿��˽�� ����ؤΥݥ���Ƥ����ޤ�. \begin{itemize} \item Jaguar (MacOSX 10.2) �ˤ� Python 2.2 ���Ĥ��Ƥ��ޤ�. ��, ����� Python �Τ��ޤ�Ƕ�ΰ���С������ǤϤʤ�, Mailman 2.1 ��¹Ԥ���ΤˤϽ�ʬ�ǤϤ���ޤ���. \item David B. O'Donnell ��, Web �����Ȥ�, ��ʬ�� MacOSX ��� Mailman 2.0.13 �� Postfix ��������������Ƥ��ޤ�. \url{http://www.afp548.com/Articles/mail/python-mailman.html} \item Kathleen Webb ��, Jaguar �� Sendmail ��Ȥä� Mailman ��¹ԤǤ���褦�� �����и�����Ƥ��Ƥ���ޤ���. \url{http://mail.python.org/pipermail/mailman-users/2002-October/022944.html} \item Panther ������ (MacOSX 10.3) �ˤ� Mailman �����äƤ��ޤ�; ���ڥ졼�ƥ��� �����ƥ�ˤϽ����ˤʤ�ʸ�ޤޤ�Ƥ��ޤ���, Apple ��, Mailman �� MacOSX Server 10.3 ��ư�����ݤˤ֤Ĥ��ꤽ���� ����ˤĤ��Ƥε���ʸ���Ф��Ƥ��ޤ�: \url{http://docs.info.apple.com/article.html?artnum=107889} \end{itemize} Terry Allen ��, �֥��饤����ȡ��Ǥ� OSX �������Ǥ� OSX �Ǥ� Mailman �μ¹ԤˤĤ���, �ʲ��Τ褦�ʾܺ٤����������Ƥ���ޤ��� \hbox{\hfil ---\hss ---\hfil} Mac OSX �� 10.3 �ʹߤǤ�, Mailman �ϤϤ��ᤫ�饤�ȡ��뤷�Ƥ���ޤ�. Mac OSX �Τ���������ǤǤ� [����: MTA �Ȥ��� Postfix �ǤϤʤ�] Sendmail �����äƤ���Τ�, ���������桼����, ���Υޥ˥奢��� Sendmail �ǤΥ��ȡ�������, ���Ĥ�Ĥ���Ǥ�������. ���Υޥ˥奢������Τۤ����������Ƥ������Ū�ʥ��ȡ������, ����dz��⤷�Ƥ������Ŭ�����ɤߴ����ʤ���, �»ܤ��ޤ�. Mac OSX 10.3 �Ρ֥��饤����ȡ��Ǥˤ�, ����Ǥϥե뵡ǽ�Ǥ� Postfix �����äƤ��ޤ���. Postfix �ʤɤ� MTA ��ư���������������Ϥ���ʸ����ϰϤ�Ķ���ޤ�����, \url{http://www.postfix.org} ��, Postfix ���¹ԤǤ���褦�ˤ��뤳�Ĥ�Ĥ���Ǥ�������. Postfix �ȡ��뤷��ư���褦�����ꤹ���ñ����ˡ�Ȥ��Ƥ�, Postfix Enabler ��¹Ԥ���Ȥ�����Τ�����ޤ�. Mac OSX �� Postfix �����ꤹ�뤿��Υ�����ɥ�����Υġ���Ǥ�. \url{http://www.roadstead.com/weblog/Tutorials/PostfixEnabler.html} �ˤ���ޤ�. �ޤ�, Mac OSX �֥��饤����ȡ��ǤǤ� 10.1 �ʹߤʤ�, Apache �����֥����Ф�ư���褦�ˤʤäƤ��ޤ�. �֥����ƥ��������פ�Ȥäơֶ�ͭ�ץ��֤����ͭ���ˤ��ޤ�. Webmin �Ȥ����ġ����, Mac OSX �� Apache �����ꤹ��Τ���Ω���ޤ�. \url{http://www.webmin.com} �Ǽ������ޤ�. Webmin �Ǥ�, �����ƥ�Τۤ��ε�ǽ�ˤĤ��Ƥ������Ǥ��ޤ�. Postfix ������, crontab �ؤΥ���֤��ɲ�, �桼���䥰�롼�פ��ɲ�, �ʤɤ��Ǥ��ޤ�. �ޤ�, �������ȥ��åץ���֤䥷��åȥ�����֤��ɲä�Ǥ��ޤ�. OSX ��ɸ��Ū�ʥ��ȥ졼�����Ǥ� Mailman �������Ȥ���, Python �����ȡ��뤵��Ƥ��뤳��, �Ȥ�����Τ�����ޤ���, Python �ϴ���Ǥϥ��ȡ��뤵��Ƥ��ޤ���. ������, ��ȯ�ġ��� �ѥå������ȡ��뤹�뤳�Ȥ��ᤷ�ޤ�. ���Υѥå�������, �����ƥ�ȤȤ������Ƥ��뤫�⤷��ޤ���. �ޤ�, Apple Developer Connection ������ % Apple developer site ??? \url{http://connect.apple.com} �������������ɤ��뤳�Ȥ�Ǥ��ޤ�. ��ȯ�ġ��� �ѥå�������, Mailman �ȡ��뤹��Τˤɤ����Ƥ�ɬ�פȤ����櫓�ǤϤʤ��ΤǤ���, ���Ĥ�¾�Υġ��뤬ɬ�פˤʤä��Ȥ��ˤ���Ω�������ʤ�ΤǤϤ���ޤ�. ��ȯ�ġ���� XCode Tools �Ȥ⤤���ޤ�. Python �ΥС�������, �����, 2.2 �Ǥʤ���Фʤ�ޤ���. ������, 2.3 ���ᤷ�ޤ�. Webmin �ʤɤ� GUI ���ե������ǤϤʤ�, OSX �Υ��ޥ�ɥ饤���Ȥäƥ桼���䥰�롼�פ��ɲä��������, �����ߥʥ� ���ץꥱ��������, �ʲ��˼������ޥ�ɤ����Ϥ��ޤ� (\samp{\#} �ǤϤ��ޤ륳���ȹԤ�, ñ�ʤ������ʤΤ�, ���Ϥ��ޤ���): \begin{verbatim} sudo tcsh niutil -create / /users/mailman niutil -createprop / /users/mailman name mailman # xxx ��, �����ƥ��Ƕ����Ƥ���桼�� ID �ֹ�Ǥ��뤳�Ȥ����� niutil -createprop / /users/mailman uid xxx niutil -createprop / /users/mailman home /usr/local/mailman mkdir -p /usr/local/mailman niutil -createprop / /users/mailman shell /bin/tcsh passwd mailman # �����Ǥ�, ���դΤ���ϥå����ɤ�����, �����奢�ʥѥ���ɤ�Ϳ���뤳�� niutil -create / /groups/mailman niutil -createprop / /groups/mailman name mailman # xxx ��, �����ƥ��Ƕ����Ƥ��륰�롼�� ID �ֹ�Ǥ��뤳�Ȥ����� niutil -createprop / /groups/mailman gid xxx niutil -createprop / /groups/mailman passwd '*' niutil -createprop / /groups/mailman users 'mailman' chown mailman:mailman /usr/local/mailman cd /usr/local/mailman chmod a+rx,g+ws . exit su mailman \end{verbatim} OSX �� Apache �� Mailman ���Ȥ���褦�����ꤹ�����, [����: ���Υޥ˥奢����������Ƥ���Τ�] �ۤȤ��Ʊ���Ǥ�. Mac OSX ���饤������Ǥ�ɸ��Ū������ե������ \file{/etc/httpd/httpd.conf} (���줬ɸ��ξ��) ������˳�Ǽ����Ƥ��ޤ�. \ulink{AFP548.com}{http://www.afp548.com} �Υ����Ȥˤ�, �������ȥ��åץ����ƥ�μ�ư�����ġ��뤬����, �����Ȥ��ȼ�֤��ʤ��ޤ�. \url{http://www.afp548.com/Software/MailmanStartup.tar.gz} �Ǹ��Ĥ���ޤ�. ���ȡ��뤹��ˤ�, ���Υե������ \file{/Library/StartupItems} �ǥ��쥯�ȥ�˥��ԡ����ޤ�. �����ߥʥ�� root �������ѥ桼���ˤʤä�, ���Τ�Τ����Ϥ��ޤ�: \begin{verbatim} gunzip MailmanStartup.tar.gz tar xvf MailmanStartup.tar \end{verbatim} ����ǥ������ȥ��åץ����ƥब���������Τ�, �Ƶ�ư����� Mailman �����Ϥ���ޤ�. \end{document}