• Suscríbete al Feed Espacio Linux
  • Suscríbete al Feed por Email
  • Sigue a Espacio Linux en Identi.ca
  • Espacio Linux también en Facebook
  • Sigue a Espacio Linux en Twitter
  • Sigue a Espacio Linux en Google +
          Iniciar sesión | Registrarse

Instalando y configurando majordomo-1.94.5 (Mailing list manager)

Introducción

Majordomo es un programa que automatiza la gestión de listas de correo en Internet . Los comandos son enviados a Majordomo vía correo electrónico. Una vez levantada una lista virtualmente todas las operaciones pueden ser realizadas remotamente, no requiriendo la intervención del postmaster del sitio de la lista.

  • Nota: Majordomo funciona en plataformas Unix, y requiere Perl 4.036 o Perl 5.002 o superior y un compilador de C. Se recomienda actualizar Perl a la versión 5.002 o posterior dado que las futuras versiones de Majordomo no funcionan con Perl 4.

    1.-Download

    Baja Majordomo majordomo-1.94.5.tar.gz en los siguientes
    sitios

  • ftp://ftp.greatcircle.com
  • http://www.greatcircle.com# cp majordomo-1.94.5.tar.gz /usr/local/src/

    # cd /usr/local/src

    # tar -zxvf majordomo-1.94.5.tar.gz

    2.-Crear el user y group

  • Hacer un grupo majordomo.Edita /etc/group

    majordomo:x:3001:

  • Crea el usuario majordomo# useradd majordomo -g majordomo -d /usr/local/majordomo# cat /etc/passwd | grep majordomo

    majordomo:x:507:3001::/usr/local/majordomo:/bin/bash

    3.-Makefile

    Editar /usr/local/src/majordomo-1.94.5/Makefile

  • /usr/local/src/majordomo-1.94.5/Makefile
    ...
    
    #-------------  Configure these items ----------------#
    
    #
    
    # Put the location of your Perl binary here:
    
    PERL = /usr/bin/perl
    
    # What do you call your C compiler?
    
    CC = cc
    
    # Where do you want Majordomo to be installed?  This CANNOT be the
    
    # current directory (where you unpacked the distribution)
    
    W_HOME = /usr/local/majordomo
    
    # Where do you want man pages to be installed?
    
    MAN = /usr/local/man
    
    # You need to have or create a user and group which majordomo
    
    #will run as.
    
    # Enter the numeric UID and GID (not their names!) here:
    
    W_USER = 507
    
    W_GROUP = 3001
    
    # These set the permissions for all installed files and executables
    
    #(except  the wrapper), respectively.  Some sites may wish to make
    
    #these more
    
    # lenient, or more restrictive.
    
    FILE_MODE = 644
    
    EXEC_MODE = 755
    
    HOME_MODE = 751
    
    # If your system is POSIX (e.g. Sun Solaris, SGI Irix 5 and 6,
    
    #Dec Ultrix MIPS, BSDI or other 4.4-based BSD, Linux)
    
    #use the following four lines.  Do not
    
    # change these values!
    
    WRAPPER_OWNER = root
    
    WRAPPER_GROUP = $(W_GROUP)
    
    WRAPPER_MODE = 4755
    
    POSIX = -DPOSIX_UID=$(W_USER) -DPOSIX_GID=$(W_GROUP)
    
    # Otherwise, if your system is NOT POSIX (e.g. SunOS 4.x, SGI Irix 4,
    
    # HP DomainOS) then comment out the above four lines and uncomment
    
    # the following four lines.
    
    # WRAPPER_OWNER = $(W_USER)
    
    # WRAPPER_GROUP = $(W_GROUP)
    
    # WRAPPER_MODE = 6755
    
    # POSIX =
    
    # Define this if the majordomo programs should *also* be run in the same
    
    # group as your MTA, usually sendmail.  This is rarely needed, but some
    
    # MTAs require certain group memberships before allowing the
    
    #message sender
    
    # to be set arbitrarily.
    
    # MAIL_GID = 	numeric_gid_of_MTA
    
    # This is the environment that (along with LOGNAME and USER
    
    #inherited from the
    
    # parent process, and without the leading "W_" in the variable names)
    
    #gets
    
    # passed to processes run by "wrapper"
    
    W_SHELL = /bin/sh
    
    W_PATH = /bin:/usr/bin:/usr/ucb
    
    W_MAJORDOMO_CF = $(W_HOME)/majordomo.cf
    
    # A directory for temp files..
    
    TMPDIR = /tmp
    
    #--------YOU SHOULDN'T HAVE TO CHANGE ANYTHING BELOW THIS LINE.-------
    
    ...

    4.-Make

  • Copiar majordomo.cf
    # cp /usr/local/src/majordomo-1.94.5/
    sample.cf /usr/local/majordomo/majordomo.cf
  • Edita majordomo.cf
    ...
    
    $whereami = "hostname.tudominio";
    
    ...
    
    $sendmail_command = "/usr/sbin/sendmail";
    
    ...
  • Make
    # make install
    
    ...
    
    To finish the installation, 'su' to root and type:
    
                make install-wrapper
    
    If not installing the wrapper, type
    
                cd /usr/local/majordomo; ./wrapper config-test
    
    (no 'su' necessary) to verify the installation.
    
    # make install-wrapper
    
    ./install.sh -o root -g 45
    
            -m 4755 wrapper /usr/local/majordomo/wrapper
    
    To verify that all the permissions and etc are correct,
    
    run the command
    
                 cd /usr/local/majordomo; ./wrapper config-test
    
    # cd /usr/local/majordomo; ./wrapper config-test
    
    ...
    
    I see you haven't registered this version of Majordomo.
    
    By registering, you will be notified of patches and further releases
    
    of Majordomo.  Shall I send email to
    
    majordomo-registration@greatcircle.com
    
    to register this version?  (I'll cc Majordomo-Owner@localdomain)
    
    [yes]
  • Edita /etc/bashrc (en Suse /etc/bash.bashrc)
    # Majordomo
    
    export PATH=$PATH:/usr/local/majordomo/bin

    5.-Configurando los alias

    Edita

  • /etc/aliases
    # Majordomo
    
    majordomo: "|/usr/local/majordomo/wrapper majordomo"
    
    owner-majordomo: tu@tudominio
    
    majordomo-owner: owner-majordomo
  • Nota : después de editar tus alias, se debe tipear newalises
    .

    6.-Configurar sendmail

  • /etc/sendmail.cfaproximadamente línea 542
    #####################
    
    #   Trusted users   #
    
    #####################
    
    # this is equivalent to setting class "t"
    
    #Ft-o /etc/mail/trusted-users %[^#]
    
    Troot
    
    Tdaemon
    
    Tuucp
    
    Tmajordomo
    
    Tmdom wwwrun root uucp daemon mail
    
    ...

    7.-Haciendo una nueva lista de correos

    Hacer una lista de correos con el siguiente nombre linuxfreak

  • /etc/aliases
    # Linuxfreak
    
    linuxfreak: "|/usr/local/majordomo/wrapper resend -l linuxfreak
    linuxfreak-outgoing"
    
    linuxfreak-outgoing::include:/usr/local/majordomo/lists/linuxfreak
    
    owner-linuxfreak: mtc@ns1.myhost.cl
    
    linuxfreak-request: owner-linuxfreak
    
    linuxfreak-approval: owner-linuxfreak

    ejecuta

    #newaliases

    8.-Envia un comando al servidor de listas

    $ echo 'help' | mail majordomo

    Si todo marcha bien, deberías ver un mensaje de majordomo
    y no de Mailer-Daemon

    en mi caso el mail lo deberías ver en:

    #less /var/spool/mail/majordomo
    
    o
    
    #less /var/spool/mail/mtc

    9.-Crear un archivo en lists

    Crear un archivo vacio con el nombre linuxfreak en el subdirectorio
    de listas de Majordomo(el nombre de la lista debe tener sus caracteres
    en minusculas, ya que es asi como lo busca majordomo). Este archivo
    almacenará las claves de correo de las personas que pertenecerán
    a la lista.

    #vi /usr/local/majordomo/lists/linuxfreak
    
    #chmod 644 linuxfreak
    
    $touch /usr/local/majordomo/lists/linuxfreak

    10.-Envia un mensaje a la dirección majordomo@tudominio

    Para saber cual es tu dominio debes hacer #hostname -d
    y para saber el nombre de tu máquina #hostname

    Debes enviar el mensaje a la dirección majordomo@myhost.cl(en
    mi caso) con los siguientes comandos de majordomo en el body

    #mail majordomo
    
    Subject:
    
    config linuxfreak linuxfreak.admin
    
    end
    
    .
    
    EOT

    Esto significa, config(comando)

    por defecto majordomo asigna como clave del administrador de la
    lista a
    .admin

    Se creará un archivo de configuración por defecto
    para la lista y nos será enviado por correo. Este archivo
    es linusfreak.config y lo encuentras en /usr/local/majordomo/lists.
    Edita linuxfreak.config, en la línea 38 encuentras admin_passwd
    = linuxfreak.admin
    la cual puedes modificar y en la línea
    220 puedes modificar por ejemplo: moderate = yes
    si quieres que tu lista sea moderada y tambien moderator
    =
    -approval@tudominio
    . No habría
    ningun problema en que la dirección del moderador fuera
    cualquier otra. En una lista moderada cualquier mensaje enviado
    a ella para su difusión es enviado antes al moderador que
    ve si aprueba o no dicho mensaje con lo siguiente:

    Approved:

    y luego lo reenvia a la lista.

    Modifica las opciones que consideres oportunas(como las passwords)
    y envialo de nuevo al servidor para que cambie la configuración
    por defecto. Entonces el cuerpo tendría:

    newconfig linuxfreak linuxfreak.admin

    Si todo sale bien, recibiras un mensaje confirmando el cambio.
    Todos los mesajes que envias pueden retornar algun error de Mailer-Daemon@tudominio
    para ello debes estar siempre mirando el archivo de donde enviaste
    el correo. Por ejemplo yo los envio de root:

    #mail majordomo. Entonces, debo ver el archivo root que
    esta en #less /var/spool/mail/root

    La versión actual de Majordomo no soporta cambios incrementales
    de la configuración, por lo que tendrás que repetir
    los pasos config y newconfig cada vez que quieras
    modificar algo.

    11.-Crear el archivo linuxfreak.info

    Ahora procedemos a crear el archivo linuxfreak.info
    para ello debemos enviar un correo a Majordomo y escribimos
    en el body lo siguiente:

    #mail majordomo
    
    Subject:
    
    info linuxfreak
    
    EOF
    
    info linuxfreak
    
    end
    
    .

    Importante!. Si no se crea el archivo linuxfreak.info(#whereis
    linuxfreak.info
    ) lo puedes hacer de otra forma.

    Primero debes crear el archivo linuxfreak.info y debes
    escribir en él la información acerca de tu lista.

    #vi linuxfreak.info

    Luego para ver si todo resultó bien envía un correo
    a Majordomo pidiendole la información de tu lista linuxfreak.

    #mail majordomo
    
    Subject:
    
    info linuxfreak
    
    .

    Y majordomo te responderá en /var/spool/mail/root
    (en mi caso)

    12.-Creación del archivo de mensajes de la lista linuxfreak

    Majordomo permite guardar los mensajes que llegan a la lista
    en archivos. Estos son recuperables posteriormente por los usuarios
    mediante los comandos index (para ver los archivos
    disponibles) y get (para obtener una copia del
    archivo vía correo electrónico). Dependiendo del
    volumen de los correos de la lista podemos decidir generar un
    archivo histórico por día, mes o año. El
    programa que permite el archivo de mensajes se llama archive2.pl
    y esta en /usr/local/majordomo/. Este programa contiene
    aproximadamente en la línea 20 las opciones con las que
    puede ser invocado. Por ejemplo, que queremos convertir la lista
    linuxfreak en una lista con histórico, para ello debemos
    hacer lo siguiente:

    Creamos un directorio para almacenar los archivos(la localización
    esta en majordomo.cf en las variables $filedir
    y $filedir_sufix)

    #mkdir /usr/local/majordomo/lists/linuxfreak.archive

    Ahora modificamos los alias en /etc/aliases

    1
     #Linuxfreak

    linuxfreak: “|/usr/local/majordomo/wrapper resend -l linuxfreak
    linuxfreak-outgoing”

    linuxfreak-outgoing” linuxfreak-outgoing: :include:/usr/local/majordomo/lists/linuxfreak,
    “/usr/local/majordomo/wrapper archive2.pl -a -m -f /usr/local/majordomo/lists/linuxfreak.archive/archive”

    owner-linuxfreak: mtc@myhost.com

    … lo demás igual

    Lo que se hizo fue indicar que se envie una copia de cada mensaje
    al programa archive2.pl para que sea guardado. El parámetro
    -m indica que se debe crear un archivo diferente para
    los mensajes de cada mes(-d día, -m mes, -y año).
    El directorio y nombre de esos archivos viene dado por el parámetro
    -f .

    archive2.pl genera el nombre completo de los archivos añadiendo
    el sufijo correspondiente al año, mes o día (aa,
    aamm o aammdd) al valor del parámetro -f. En el
    ejemplo, -f es /usr/local/majordomo/lists/linuxfreak.archive/archive
    y el archivo es mensual (-m), entonces obtenemos el siguiente
    nombre en: /usr/local/majordomo/lists/linuxfreak.archive/archive.aamm.

    II.-Otras consideraciones

    Crear otros archivos para la lista linuxfreak

    Crear un archivo que contenga las passwords

    El archivo tendrá las passwords de la lista el cual
    es utilizado por los dueños de las listas para poder
    hacer las aprobaciones a peticiones como subscribe, unsubscribe,
    etc.

    #vi /usr/local/majordomo/lists/linuxfreak.passwd

    Crear un archivo para lista cerrada

    #vi /usr/local/majordomo/lists/linuxfreak.closed

    III.-Comandos

    Para facilitar la administración de una lista, el propietario
    debe manejar cierto número de comandos para las diferentes
    acciones a realizar y son los siguientes:

    approve

    Este comando se utiliza para que el dueño de la lista pueda
    aprobar las solicitudes de inscripción o cancelación
    a una lista cerrada, o de una cuenta diferente a la que envió
    la petición. Es necesario incluir el PASSWORD de la lista
    en
    .

    approve
     {subscribe|unsubscribe}
     []

    Por ejemplo si el dueño en una lista cerrada le llegará
    este tipo de mensaje:

    Date: Sun, 5 Jan 2003 20:20:48 -0400

    From: Majordomo@ns1.myhost.com

    To: mtc@ns1.myhost.com

    Subject: APPROVE linuxfreak

    Un usuario X llamado Kukl requiere que usted apruebe lo siguiente:

    subscribe linuxfreak kukl@ns1.myhost.com

    Si el dueño de la lista lo aprueba, enviará un mensaje
    a

    majordomo@tudominio

    con el siguiente comando en el cuerpo del mensaje:

    approve PASSWORD subscribe linuxfreak kukl@ns1.myhost.com

    Donde PASSWORD es el password correspondiente a la lista de
    correo. Si se desaprueba no se realisa ninguna acción.

    Approved

    Cómo aprobar mensajes en una lista moderada

    El dueño de una lista moderada deberá realizar el
    siguiente proceso de aprobación de mensajes:

    El dueño recibirá dos correos, el primero tendrá
    en el Subject la palabra BOUNCE, la cual nos indica que el correo
    que sigue después de este es el que tiene que aprobar.

    Para aprobar el mensaje se tiene que realizar un Forward de
    dicho mensaje a la dirección de la lista.

    Posteriormente en el Subject se debe eliminar lo referente
    al Forward: (fwd); y del cuerpo del mensaje se elimina la línea
    siguiente,

    ———- Forwarded message ———-

    Una vez eliminado lo anterior se debe poner lo siguiente en
    la parte superior del mensaje, (en la primera línea):

      
      
      1
      Approved:
      password de la lista

    Ya que se realizaron todos los pasos anteriores se envía
    el correo para que le llegue a todos los miembros de la lista,
    si está inscrita su cuenta en la lista también
    le llegará el mensaje, de esta forma puede comprobar
    que el mensaje le fue enviado a todas las personas de la lista.

    passwd

    Para cambiar el PASSWORD de la lista.

    passwd

    Donde lista es el nombre de la lista a la que se desea
    cambiar el password.

    newinfo

    Este comando es útil para reemplazar el archivo de información
    de la lista, esta es la que los usuarios obtienen cuando hacen
    una solicitud por correo a Majordomo, con el comando “info
    “.
    La manera de hacer esto es mandar un correo a Majordomo, este
    comando y en el body lo siguiente:

    newinfo

    config

    Muestra el archivo de configuración de la lista . El password
    debe ser el PASSWORD de la lista el cual está en el archivo

    .passwd.

    config

    newconfig

    Valida e instala un nuevo archivo de configuración de la
    lista . Si en el nuevo el archivo de configuración existe
    un error entonces este no será aceptado y se mandará
    un mensaje al dueño de la lista que incluye las líneas
    donde se presentó el error.

    newconfig

    writeconfig

    Escribe un nuevo archivo de configuración de la lista en
    la forma estándar. Este comando obliga a hacer una reescritura
    del archivo de configuración con todos los comentarios
    y valores por default.

    writeconfig

    © 2003 Centro de Soluciones Linux, se permite la libre distribución y modificación de este documento por cualquier medio y formato mientras esta leyenda permanezca intacta junto con el documento y la distribución y modificación se hagan de de acuerdo con los términos de la Licencia Pública General GNU publicada por la Free Software Fundation; sea la versión 2 de la licencia o (a su elección) cualquier otra posterior. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de estos

    Autor: Domingo Varela
    http://www.linuxsc.net/


  • Temas:
    Documentación, Redes y Servidores


    Etiquetas:
    , ,

    Feed Espacio LinuxSi este artículo ha sido de tu interés, considera hacer un comentario o suscribirte al feed para que te enteres de nuevos artículos a través de tu lector de noticias o email.

    Acerca del autor

    Un comentario para “Instalando y configurando majordomo-1.94.5 (Mailing list manager)”

    1. gracias! 😀

    Publica un comentario

    Puedes usar estas etiquetas XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <em> <strong>