Nick | Nexus | Rango | Estudiante | Fecha | 08/06/2007 |  | | Por curiosidad les explico como acabó la batalla que tenÃa con el amavis-new el otro dia cuando te respondà al mail (dirigido a DarKh|s). Si te vas al lavabo, puedes imprimirlo y de paso te sirve para cuando hayas acabado jejeje
Bueno! al final perdà la batalla con el Amavis, digo que perdà la batalla porque gané la guerra jejeje
Lo que me pasó es que le pegué al server un apt-dist upgrade para que se me instalaran los paquetes del clamav que tenia retenidos y monté la carniceria del siglo porque resulta que la version stable a cambiado, ahora es etch, y yo tan feliz actualizando distribucion jejeje, como toda la parafernaria la tengo montada con el panel de control de VHCS, la carniceria fue gorda, logré repararlo todo menos el amavis, y ahà estaba batallando el otro dia, al final trasteé tanto que acabé cargandome lo que medio funcionaba y resulta que al tratar de reinstalar, los de VHCS que van a pasar a la version 3 han cambiado la pagina y en los foros no se habla de el debian etch, osea, al final me he tenido que espabilar con las cosas de otras versiones y otras distribuciones hasta que he conseguido que me funcione todo, me ha quedado tan bien que hasta lo he posteado en la pagina de VHCS aunque yo >todavia no he visto lo que les envié, imagino que es porque hay foro para ingles y para aleman, pero para los españolitos no jejeje de todas formas lo envié por si lo ponen asà si otro se encuentra en el mismo merdé pues ya tiene algo para ir saliendo
Por supuesto añadà el amavis al final jejeje, imagino que esto para tà es de lógica pura, pero a mi me ha costado lecturas hasta en aleman y andar chafardeando los logs a ver que coño pasaba, por no comentar que el grueso de la informacion no la he sacado de las instalaciones en debian, si no de las instalaciones en Ubuntu, ya que de las de debian no me coincidian ni los paquetes a descargar.
Te pongo mas abajo lo que he posteado, seguramente tendrá algunos errores, pero yo no llego mas lejos, osea, que si te aburres ya sabes, o preparas una leccion o te acabas de leer el mail jejeje
Bueno! voy a ir instalando el Slack, que ya toca!
Un saludo de Nex
ETCH Y VHCS
Instalar Debian ETCH y el panel de control VHCS 2.4.7.1
Antes de empezar hacemos la instalación de DEBIAN ETCH desde el CD de 32MB (Instalación minima) yo no escojo ninguna opción.
1) Modificamos los repositorios:
# nano /etc/apt/sources.list
y dejamos las siguientes lineas asÃ:
deb http://ftp.de.debian.org/debian/ etch main contrib non-free
deb http://security.debian.org/ etch/updates main contrib non-free
2) Actualizamos los paquetes
# apt-get update
3) Descargamos los paquetes necesarios para la instalación
# apt-get install postfix postfix-tls proftpd-mysql courier-authdaemon courier-base courier-imap courier-maildrop courier-pop libberkeleydb-perl libc-dev libcrypt-blowfish-perl libcrypt-cbc-perl libcrypt-passwdmd5-perl libdate-calc-perl libdate-manip-perl libdbd-mysql-perl libdbi-perl libio-stringy-perl libmail-sendmail-perl libmailtools-perl libmd5-perl libmime-perl libnet-dns-perl libnet-netmask-perl libnet-perl libnet-smtp-server-perl libperl5.8 libsnmp-session-perl libterm-readkey-perl libtimedate-perl perl perl-base perl-modules bind9 diff gzip iptables libmcrypt4 mysql-client-5.0 mysql-common mysql-server-5.0 patch php4 php4-mcrypt php4-mysql php4-pear procmail libterm-readpassword-perl libsasl2-modules libsasl2 sasl2-bin apache2 apache2.2-common apache2-mpm-prefork libapache2-mod-php4 gawk libgd1g bzip2 wget make gcc php5-cgi php5-gd php5-imap php5-mcrypt php5-mhash php5-mysql
ATENCION: Cuando aparezca una pantalla de courier, seleccionar "No" a los directorios web, a la pantalla de postfix, seleccionar "Internet Site" y luego escribir el email del root, en la pantalla de proftpd seleccionar "standalone" o "independiente".
4) Descargamos el código fuente de VHCS, lo descomprimimos y lo instalamos
# cd /root
# wget -c http://"de-donde-sea"/vhcs2-2.4.7.1.tar.bz2
# tar -xjvf vhcs2-2.4.7.1.tar.bz2
# cd vhcs2-2.4.7.1
# make install
# cp -R /tmp/vhcs-2.4.7.1/* /
5) Modificamos el script en perl
# nano /var/www/vhcs2/engine/vhcs2_common_code.pl
Buscamos el bloque de código:
my $cipher = Crypt::CBC -> new(
{
'key' => $main::db_pass_key,
'cipher' => 'Blowfish',
'iv' => $main::db_pass_iv,
'regenerate_key' => 0,
'padding' => 'space',
'prepend_iv' => 0
}
);
Y lo reemplazamos por:
my $cipher = Crypt::CBC -> new(
{
'keysize' => 32,
'key' => $main::db_pass_key,
'cipher' => 'Blowfish',
'iv' => $main::db_pass_iv,
'regenerate_key' => 0,
'padding' => 'space',
'prepend_iv' => 0
}
);
ATENCION: Existen dos bloques iguales, modifica los dos y guarda el archivo.
6)Creamos la base de datos para VHCS
# mysql
create database vhcs2;
quit
7)Instalamos el sistema de Hosting:
# /var/www/vhcs2/engine/setup/vhcs2-setup
Preguntas:
Please enter system hostname (Enter for defaults) [debian]: batty (en mi servidor)
Please enter system network address (Enter for defaults) [10.0.0.69]: (return)
Please enter SQL server host (Enter for defaults) [localhost]: (return)
Please enter system SQL database (Enter for defaults) [vhcs2]: (return)
Please enter system SQL user (Enter for defaults) [root]: (return)
Please enter system SQL password (Enter for defaults) [none]: (return)
Please enter VHCS ftp SQL user (Enter for defaults) [vftp]: vftp
Please enter VHCS ftp SQL user password (Enter for defaults) [none]: CONTRASEÑA (crear contraseña para los usuarios virtuales)
Please repeat VHCS ftp SQL user password: CONTRASEÑA (repetir contraseña)
Please enter administrator login name (Enter for defaults) [admin]: ELMALONE (return/nuevo)
Please enter administrator password: CONTRASEÑA (crear contraseña para el administrador de VHCS2)
Please repeat administrator password: CONTRASEÑA (repetir contraseña)
Please enter administrator email address: admin@dominio.xxx
8)Colocamos una contraseña para root en MySQL
# mysqladmin -u root -p password "CONTRASEÑA"
o a traves de phpmyadmin
en http://ipdelservidor/vhcs2/tools/pma/
sustituimos la contraseña de root@localhost a traves de privilegios y escribimos la CONTRASEÑA en el programa
# cd /var/www/vhcs2/engine/
# ./vhcs2-db-password
9) Establecemos permisos:
/var/www/vhcs2/engine/setup/set-engine-permissions.sh
/var/www/vhcs2/engine/setup/set-gui-permissions.sh
10) Probamos el ftp
# /etc/init.d/proftpd restart
ATENCION: Si al reiniciar el servidor de ftp da el ERROR (por ejemplo):
Starting ftp server: proftpd - IPv6 getaddrinfo 'batty' error: Name or service not known
hacer lo siguiente:
# nano /etc/hosts
y modificar el archivo de:
127.0.0.1 batty.local localhost
192.168.0.1 batty batty
hasta que quede asÃ:
127.0.0.1 batty.local localhost
192.168.0.1 127.0.0.1 batty
11) Activamos demonio del mecanismo para autentificar el correo
# nano /etc/default/saslauthd
y cambiar:
START=no
por
START=yes
12)Españolizamos el Panel de Control
Pidanle a algun profesor el archivo lang_spanish.zip
Lo descomprimimos y abrimos el Panel de Control
http://ipdeelservidor/vhcs2/
Nos logueamos como administrador y en Multilanguage escogemos la opcion de instalar.
Instalamos el archivo y lo señalamos como lengua por defecto y salvamos
Volvemos a entrar en el panel de control y lo marcamos en predeterminado y guardamos los cambios
Ahora acabaremos de modificar en los siguientes ficheros:
# nano /etc/vhcs2/vhcs2.conf
sustituye
USER_INITIAL_LANG = lang_English
por
USER_INITIAL_LANG = lang_Spanish
vamos a arreglar los archivos de traducción de webmail
# cd /var/www/vhcs2/gui/tools/webmail/inc
# mv config.languages.php config.languages.php.old
# wget http://"www.donde-esten.xxx"/vhcs/config.languages.php
# cd /var/www/vhcs2/gui/tools/webmail/langs
# mv es.txt es.txt.old
# wget http://"www.donde-esten.xxx"/vhcs/es.txt
13) Arreglamos las cabeceras de el webmail
# nano /var/www/vhcs2/gui/tools/webmail/inc/inc.php
localizamos las lineas
Header("Expires: Wed, 11 Nov 1998 11:11:11 GMT\r\n".
"Cache-Control: no-cache\r\n".
"Cache-Control: must-revalidate");
y las modificamos de esta forma:
Header("Expires: Wed, 11 Nov 1998 11:11:11 GMT");
Header("Cache-Control: no-cache");
Header("Cache-Control: must-revalidate");
Colocamos el patch de seguridad
# cd /root
# wget http://"donde este"/vhcs_patch_2006-02-09.tar.bz2
# tar -xjvf vhcs_patch_2006-02-09.tar.bz2
# mv /var/www/vhcs2/gui/include/login.php /var/www/vhcs2/gui/include/login.php.old
# cp vhcs_patch_2006-02-09/gui/include/login.php /var/www/vhcs2/gui/include
14) Reparamos el Autorresponder
Empezaremos verificando los permisos:
# chmod 0644 /etc/vhcs2/vhcs2.conf
Hacemos una copia de seguridad de vhcs2-db-keys.pl, colocamos otro y cambiamos el usuario al archivo
# mv /var/www/vhcs2/engine/messager/vhcs2-db-keys.pl /var/www/vhcs2/engine/messager/vhcs2-db-keys.pl.old
# cp /var/www/vhcs2/engine/vhcs2-db-keys.pl /var/www/vhcs2/engine/messager/vhcs2-db-keys.pl
# chown vmail:mail /var/www/vhcs2/engine/messager/vhcs2-db-keys.pl
Ahora modificaremos el main.cf de Postfix
# nano /etc/postfix/main.cf:
y añadimos esta linea
vhcs2-arpl_destination_recipient_limit = 1
Haremos varias modificaciones en el archivo vhcs2-arpl-msgr
# nano /var/www/vhcs2/engine/messager/vhcs2-arpl-msgr
donde pone:
if($auto_message ne '_no_') {
if($name) { $mail_to = "\"".$name."\" "."<".$to_ma->address.">"; }
else{ $mail_to = $to_ma->address; }
my $out = new MIME::Entity;
añadimos una linea quedando asÃ:
if($auto_message ne '_no_') {
if($name) { $mail_to = "\"".$name."\" "."<".$to_ma->address.">"; }
else{ $mail_to = $to_ma->address; }
next if $mail_to =~ /vhcs2-arpl/;
my $out = new MIME::Entity;
tal como hicimos en vhcs2_common_code.pl haremos en este archivo, ir al bloque de código
my $cipher = Crypt::CBC -> new(
{
'key' => $main::db_pass_key,
'cipher' => 'Blowfish',
'iv' => $main::db_pass_iv,
'regenerate_key' => 0,
'padding' => 'space',
'prepend_iv' => 0
}
);
Y reemplazarlo por
my $cipher = Crypt::CBC -> new(
{
'keysize' => 32,
'key' => $main::db_pass_key,
'cipher' => 'Blowfish',
'iv' => $main::db_pass_iv,
'regenerate_key' => 0,
'padding' => 'space',
'prepend_iv' => 0
}
);
ATENCION: Existen dos bloques iguales, modifica los dos.
luego buscaremos las lineas:
my @from_ma = Mail::Address->parse($head -> get('From'));
my @to_addrs = Mail::Address->parse($head -> get('X-Original-To'));
y las dejaremos asÃ:
my @from_ma = Mail::Address->parse($head -> get('From'));
my @to_addrs = Mail::Address->parse($head -> get('To'));
y por útimo haciendo la gracia completa buscaremos la linea:
Subject => "[Autoreply] ".$head -> get('Subject'),
y la españolizaremos un poco:
Subject => "[Auto-Respuesta] ".$head -> get('Subject'),
Salvamos cambios
15) Modificamos apache para que lea directamete webmail y pcpanel con el dominio
#nano /etc/vhcs2/apache/parts/dmn_entry.tpl
Buscamos las lineas
Alias /errors {WWW_DIR}/{DMN_NAME}/errors/
ErrorDocument 401 /errors/401/index.php
y añadimos para que quede asÃ:
Alias /errors {WWW_DIR}/{DMN_NAME}/errors/
Redirect /webmail http://{DMN_NAME}/vhcs2/tools/webmail
Redirect /cpanel http://{DMN_NAME}/vhcs2
ErrorDocument 401 /errors/401/index.php
Buscamos la linea:
Options Indexes Includes FollowSymLinks MultiViews
y la dejamos asÃ:
Options -Indexes Includes FollowSymLinks MultiViews
salvamos cambios
16) Modificamos bind para que aplique directamente la ns1 y la ns2 a los dominios que creemos:
# nano /etc/vhcs2/bind/parts/db_e.tpl
Buscamos la linea:
ns IN A {DMN_IP}
mail IN A {DMN_IP}
y lo modificamos asÃ:
ns IN A {DMN_IP}
ns1 IN A {DMN_IP}
ns2 IN A -IP DNS SECUNDARIO-
mail IN A {DMN_IP}
17) Implementaremos amavis-new + spamassassin + clamav + razor + pysor + dcc trabajando con Postfix
Instalamos paquetes:
# apt-get install clamav clamav-daemon amavisd-new spamassassin razor pyzor dcc-client lha arj unrar zoo unzoo zip unzip nomarch lzop tnef
definiremos a clamav como adiministrador de amavis:
# gpasswd -a clamav amavis
modificamos los archivos main.cf y master.cf de postfix:
# nano /etc/postfix/main.cf
al final de main.cf dejando una linea en blanco añadir:
content_filter = smtp-amavis:[127.0.0.1]:10024
# nano /etc/postfix/master.cf
y al final añadiremos dejando tambien una linea en blanco
smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes
localhost:10025 inet n - n - - smtpd
-o content_filter=
-o mynetworks=127.0.0.0/8
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o receive_override_options=no_address_mappings
ATENCION: Añade una linea al final en blanco
activamos el spamassassin:
# nano /etc/default/spammassassin
y cambiamos:
ENABLED=0
por
ENABLED=1
configuramos Razor, creando un repertorio, recuperando la lista de los servidor y registrandolo, esto es asi:
# razor-admin --create
# razor-admin -discover
# razor-admin --register
Actualizamos la lista de servidores para pyzor:
# pyzor discover
y añadimos en la tabla de contrab una linea para que lo haga regularmente:
0 1 * * * /usr/bin/pyzor discover &
/var/log/pyzor-recv-serv-list.log
con esto le decimos que diariamente a la una de la mañana actualice la lista de servidores
ahora añadiremos una linea a la configuracion de dcc para forzar que trabaje con el protocolo ipv4:
# nano /etc/dcc/map.txt
y modificamos lo siguiente:
# public DCC servers
dcc1.dcc-servers.net
dejandolo como queda a continuacion
# public DCC servers
cdcc 'ipv6 off'
dcc1.dcc-servers.net
salvamos y forzamos a actualizar este dato, en la linea de comandos
# cdcc 'ipv6 off'
y reinicamos postfix
# /etc/init.d/postfix restart
añadir a la source.list el repositorio para actualizar esto
# nano /etc/apt/sources.list
y añadimos:
deb http://ftp2.de.debian.org/debian-volatile sarge/volatile main
guardamos y actualizamos:
# apt-get update
# apt-get upgrade
ATENCION: En caso de ERROR con la llave pública ejecutamos (NO_PUBKEY)
# gpg --keyserver wwwkeys.eu.pgp.net --recv-keys XXXXXXXXXXX (donde XX.... es la llave)
# gpg --armor --export XXXXXXXXXXX | apt-key add -
y ahora ya podemos actualizar:
# apt-get update
# apt-get upgrade
Ultimo) YA ESTA TODO!!, ya podemos empezar a añadir distribuidores y usuarios
En nuestra red:
http://ipdelservidor/vhcs para el panel de control
http://ipdelservidor/vhcs/tools/webmail para el webmail
en internet:
http://cpanel.dominio.com para el panel de control
http://webmail.dominio.com para el webmail
Datos de interes:
Activar el motor que actualiza la base de datos
# /var/www/vhcs2/engine/vhcs2-rqst-mngr | |