GNU/Linux >> Tutoriales Linux >  >> Panels >> Panels

Limpieza Automática De Papelera Y/o Carpetas De Basura Con ISPConfig (Con Roundcube + Tmpreaper (Tmpwatch))

Limpieza Automatica De Papelera Y/o Carpetas De Basura Con ISPConfig (Con Roundcube + Tmpreaper (Tmpwatch ))

Resumen:

Este breve mini-instructivo lo ayudará a configurar la limpieza automática de la Papelera y las carpetas de correo no deseado. La mayoría de los clientes de correo (web) (pueden) crearlos automáticamente. Mucha gente no limpia los directorios de correo, lo que hace que las carpetas de basura y basura crezcan enormemente en tamaño y con ISPConfig (todavía no) capaz de establecer buenos límites de tamaño de directorio de correo, la alternativa es limpiar estas carpetas después de varios días.

Requisitos previos:

Este tutorial asume que actualmente está utilizando la siguiente configuración o una similar:

  • Linux Debian Etch (v4.0)
  • ISPConfig (v2.2.24 o posterior)
  • Hacer
  • Nano o vi
  • Roundcubemail (instalación del paquete v0.1.1)
  • Al menos 1 dominio con 1 buzón en ejecución
  • Correo no deseado configurado para moverse a una carpeta en lugar de eliminarse (si no está configurado, consulte los enlaces)
  • Si esta configuración no coincide con la suya, es posible que deba ajustar el procedimiento para que se ajuste a su configuración.

    Enlaces:

    Tutorial para mover el correo no deseado a una carpeta en lugar de eliminarlo:https://www.howtoforge.com/forums/showthread.php?t=15704
    Instalación del paquete Roundcubemail v0.1.1:http://ispconfig.bb-hosting .org/downloads/roundcube/roundcubemail-0.1.1.pkg 

    1 - Configurar roundcubemail para crear automáticamente carpetas de basura y basura

    Si ya lo ha hecho por Roundcubemail u otros métodos, puede omitir este capítulo. Asegúrese de que existan .Papelera y .Junk.

    Para configurar Roundcubemail para que cree automáticamente carpetas de correo, debemos modificar la configuración de Roundcubemail:

    nano /home/admispconfig/ispconfig/web/roundcubemail/config/main.inc.php

    Localice "$rcmail_config['create_default_folders']" y asegúrese de que esté establecido en TRUE y asegúrese de que la configuración sea similar a:

    [...]
    // store draft message is this mailbox
    // leave blank if draft messages should not be stored
    $rcmail_config['drafts_mbox'] = 'Drafts';
    // store spam messages in this mailbox
    $rcmail_config['junk_mbox'] = 'Junk';
    // store sent message is this mailbox
    // leave blank if sent messages should not be stored
    $rcmail_config['sent_mbox'] = 'Sent';
    // move messages to this folder when deleting them
    // leave blank if they should be deleted directly
    $rcmail_config['trash_mbox'] = 'Trash';
    // display these folders separately in the mailbox list.
    // these folders will also be displayed with localized names
    $rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
    // automatically create the above listed default folders on login
    $rcmail_config['create_default_folders'] = TRUE;
    // protect the default folders from renames, deletes, and subscription changes
    $rcmail_config['protect_default_folders'] = TRUE;
    [...]

    Ahora, cuando un usuario inicie sesión, se crearán las carpetas de correo.

    NOTA:Esto requiere que el usuario haya iniciado sesión, de lo contrario, las carpetas de basura y basura simplemente no existen y, por supuesto, no se limpiarán.

    2 - Instalar tmpreaper

    El paquete tmpwatch solía estar en el administrador de paquetes Aptitude; sin embargo, por razones desconocidas, se reemplazó. Para otras variantes de Linux, consulte tmpwatch.

    Para ello ingresamos el siguiente comando:

    apt-get install tempreaper

    IMPORTANTE:si puede usar tmpreaper, salte al capítulo 3. Si tiene que usar tmpwatch, ¡no olvide modificar el archivo cron!

    Si no puede usar tmpreaper, puede descargar e instalar tmpwatch de la siguiente manera:

    cd /usr/src
    wget http://linux.bononline.nl/linux/tmpwatch/src/tmpwatch-2.9.0.tar.gz
    tar xvzf tmpwatch-2.9.0.tar.gz
    cd tmpwatch-2.9.0
    make
    make install

    ¡Gracias a MTvermoes!

    3 - Agregar un cronjob

    Ahora necesitamos agregar un cronjob para que el sistema verifique diariamente qué correos electrónicos se necesitarán para eliminar. Le sugerimos que configure esto en cron.daily para que verifique todos los días los correos que tienen la edad suficiente para eliminarlos. Sin embargo, también puede colocarlo en cron.hourly, lo cual es necesario si usa un tiempo máximo de menos de 24 horas; de lo contrario, solo se verificaría diariamente.

    Para ello vamos a /etc/cron.daily

    cd /etc/cron.daily

    Ahora creamos un nuevo archivo "clean-mailfolders"

    nano clean-mailfolders

    Y haz que parezca:

    #!/bin/sh
    # Time to wait before removing mails from the Junk folder (Default: 7 days) Set 0 to turn off.
    junk_max_hours=$((24*7))
    # Time to wait before removing mails from the Trash folder (Default: 30 days) Set 0 to turn off.
    trash_max_hours=$((24*30))
    for domain in /var/www/*
    do
      if [ -d "$domain"/user ]
      then
        for user in $domain/user/*
        do
          if [ "$junk_max_hours" -gt "0" ]
          then
            if [ -d "$user/Maildir/.Junk" ]
            then
              tmpreaper -m $junk_max_hours $user/Maildir/.Junk/{cur,new}
            fi
          fi
          if [ "$trash_max_hours" -gt "0" ]
          then
            if [ -d "$user/Maildir/.Trash" ]
            then
              tmpreaper -m $trash_max_hours $user/Maildir/.Trash/{cur,new}
            fi
          fi
        done
      fi
    done

    Es posible que desee cambiar las fechas para que se ajusten a sus propias necesidades. Al principio del archivo se dan 2 variables denominadas "junk_max_hours" que contiene el máximo de horas de correo en la carpeta Junk y "trash_max_hours" que contiene el máximo de horas de correo en la carpeta Trash. Establecer el valor en 0 desactivará la limpieza de ese tipo.

    NOTA:si tiene que usar tmpwatch en lugar de tmpreaper, no olvide modificar el archivo cron y reemplazar "tmpreaper" por "tmpwatch".

    Conclusión

    Asegúrese de verificar esto antes de ejecutarlo en los servidores de producción. Este tutorial viene sin garantía alguna. ¡Sé sabio, prueba!

    Puede modificar las variables para que se ajusten a sus propias necesidades, como se describió anteriormente.

    ¡Espero que les guste mi primer tutorial!


    Panels
    1. Eliminar archivos y carpetas en la terminal de Linux

    2. Compara archivos y carpetas gráficamente en Linux con Meld

    3. ¿Sincronizar varias carpetas de inicio con Dropbox y Symlinks?

    4. Cómo instalar mod_ruby en varias distribuciones de Linux para usar con ISPConfig (2.2.20 y superior)

    5. Cómo instalar suPHP en varias distribuciones de Linux para usar con ISPConfig (2.2.20 y superior)

    Cómo ejecutar su propio servidor de nombres con ISPConfig y providedomain.de (Schlund)

    Cómo ejecutar sus propios servidores DNS (primario y secundario) con ISPConfig 3 (Debian Squeeze)

    Asegure ISPConfig 3 y servicios con el certificado firmado de GoDaddy en CentOS

    El servidor perfecto:Ubuntu 14.10 con Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot e ISPConfig

    Uso de RoundCube Webmail con ISPConfig 3 en Debian Wheezy (nginx)

    Imunify Protección y limpieza de malware con Imunify360