Instalando y analizando VirtueMart
Dec 01, 08 by Juan Lebrijo about Joomla!, e-commerce, blog
Sigo investigando como implementar una tienda en internet... Me he encontrado con este componente de de Joomla. Tenemos todas las aplicaciones básicas de una tienda con las ventajas adicionales de Joomla, y su extensibilidad a la hora de incluir más funcionalidades (foros, sistemas de tickets,...) . Frente a otra alternativa como Oscommerce, nos da mayor facilidad para manejar las plantillas de estilo y parece más actualizado; aunque Oscommerce está más testeado por el número ingente de tiendas que tiene implementadas desde hace años. Como siempre os dejo mi ficha de referencias: Origen http://virtuemart.net/ Repositorio Repositorio: http://virtuemart.net/ Addons: en el mismo paquete, http://extensions.joomla.org/ Plantillas: themes Traducción: http://virtuemart.net/ Paquete VirtueMart_1.1.2-COMPLETE_PACKAGE.j15.zip Documentación (Castellano) Instalación: http://www.yafaonline.com Documentación (Inglés) Oficial: http://virtuemart.net/ VirtueMart_1.1_Installation.pdf en el mismo paquete del producto Lo primero es instalar Joomla, se recomienda la versión 1.5, y aquí, seguro que encontráis información. Lo recomendable, sobre todo en un sistema de producción, es ir luego instalando el componente y los módulos uno a uno. Pero si quereis realizar la evaluación del producto tenemos una instalación (bundle) que provee instala directamente joomla1.5+virtuemart+módulos+plugins: VirtueMart_1.1.2_eCommerce_Bundle_Joomla_1.5.7.tar.gz. Para ello nos creamos nuesrta base de datos:
CREATE USER 'tienda_vmart'@'%' IDENTIFIED  BY  '******';
GRANT USAGE ON * . * TO 'tienda_vmart'@'%' IDENTIFIED BY '******' ;
CREATE DATABASE IF NOT EXISTS `tienda_vmart` ;
GRANT ALL PRIVILEGES ON `tienda_vmart` . * TO 'tienda_vmart'@'%';
ALTER DATABASE `tienda_vmart` DEFAULT CHARACTER SET utf8 COLLATE utf8_spanish_ci
Y accedemos al directorio de instalación a través del navegador http://localhost/tienda_vmart en el que hemos descomprimido el contenido del bundle. En ese momento comienza un proceso de instalación muy bien guiado. Nos da la opción de instalar datos de ejemplo para jugar si lo que queremos es probarlo. Instalación de idiomas:
  • Del sitio: es-ES_Joomla157_spanish_site.zip, y del backend: es-ES_Joomla157_spanish_admin.zip.
  • Para el de Virtuemart:
    • Descomprimir Language_Pack_for_VirtueMart_1.1.2.zip (de virtuemart.net).
    • En \administrator\components\com_virtuemart\languages
Y tenemos el sitio de Joomla en castellano, y nuestro componente de comercio electrónico.
Securizar Postfix: TLS+SASL+PAM
Nov 24, 08 by Juan Lebrijo about e-mail, security, blog
Queremos dejar nuestro puerto SMTP de postfix abierto a internet, sin correr el riesgo de espionajes, ni de que spammers utilicen nuestro servicio para enviar correos masivos. Para utilizar el servicio los usuarios deberán autenticarse user/pswd y además hacerlo mediante TLS (encriptando las conexiones hacia él). Para cumplir este requsito configuraremos las tres tecnologías siguientes:
  • TLS: Encriptación SSL de la conexión.
  • SASL: Sistema de autenticación.
  • PAM: Autenticación hacia el sistema de usuario de linux.
Podemos ver que en Etch el TLS viene completamente activado (cat /usr/share/doc/postfix/README.Debian):
  • Es importante notar (para un futuro cuando se compre un certificado real) que los certificados que toma por defecto en main.cf son:
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Instalamos Cyrus-sasl para autenticación:
elite:~# apt-get install libsasl2-modules sasl2-bin
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Paquetes sugeridos:
   libsasl2-modules-otp libsasl2-modules-ldap libsasl2-modules-sql libsasl2-modules-gssapi-mit
Se instalarán los siguientes paquetes NUEVOS:
   libsasl2-modules sasl2-bin
0 actualizados, 2 se instalarán, 0 para eliminar y 1 no actualizados.
Se necesita descargar 0B/271kB de archivos.
Se utilizarán 733kB de espacio de disco adicional después de desempaquetar.
  • Configuramos postfix para que autentique en SASL en main.cf:
  • # Configuración para que autentique en SASL
    ## Configuración de la Autentificación
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_local_domain = $myhostname
    broken_sasl_auth_clients = yes
    ## Acciones a seguir para autentificar:
    ## permit_sasl_autenticated: permitir mandar mail a los autentificados por sasl
    ## permit_mynetworks: permite saltear el control a los de mynetworks
    smtpd_recipient_restrictions =
    permit_sasl_authenticated,
    permit_mynetworks,
    reject_unauth_destination,
    check_relay_domains
Seguimos las instrucciones /usr/share/doc/sasl2-bin/README.Debian para configurar postfix:
  • Activamos el Demonio de SASL para que este avizor para autenticar cuando postfix se lo pida. Como postfix se ejecuta en una jaula, debemos decir que el demonio se ejecute en ella. En /etc/default/saslauthd ponemos:
  • START=yes
    OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"
  • Para crear ese directorio ejecutamos este commando como root:
  • elite:~# dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
  • Añadimos el usuario Postfix al grupo sasl, para que pueda mandar autenticaciones al demonio:
  • elite:~# adduser postfix sasl
Hacemos las conexiones postfix-sasl-pam
  • Decimos a Postfix como queremos que valide SASL, creamos /etc/postfix/sasl/smtpd.conf:
  • pwcheck_method: saslauthd
    mech_list: login plain
  • El método de autenticación de SASL es PAM, por tanto le tenemos que decir a PAM como tiene que reaccionar ante autenticaciones SMTP /etc/pam.d/smtp
  • #%PAM-1.0
    @include common-auth
    @include common-account
    @include common-session
  • Reiniciamos los servicios:
  • elite:~# /etc/init.d/saslauthd start
    elite:~# /etc/init.d/postfix restart
En /etc/postfix/main.cf
  • Solo tengo mi localhost como zona de confianza, fuera de ahí, todos a autenticarse.:
  • mynetworks = 127.0.0.0/8
Bacula, sistema de backup en red
Nov 17, 08 by Juan Lebrijo about backup, Webmin, blog
Bácula es un sistema de creación de copias de seguridad, no solo de nuestra máquina local, si no de las de nuestra red. Bacula se encargará de secuenciar los trabajos de copia, gestionar el medio de almacenamiento, etc. Un completo sistema de Backup distribuido y LIBRE. Que en nuestra distro favorita (Debian) se instala como un guante. Y además se gestiona vía web con nuestro "sistema gestor de sistemas" el Webmin. Origen http://www.bacula.org/ Paquete apt 3.0.24 Documentación (inglés) http://www.bacula.org/en/?page=documentation Ficheros Configuración: Webmin Características del software:
  1. Planificación tareas, simultaneas y secuenciadas.
  2. Uso de prioridad.
  3. Independencia del sistema operativo. Linux, Solaris, y Windows.
  4. Gestión de la restauración de ficheros.
  5. Gestión del medio de almacenamiento: HD, DVD, cinta,...
  6. Backup de base de datos directa.
Instalamos con apt:
elite:~# apt-get install bacula-common bacula-client bacula-console bacula-director-common bacula-director-mysql bacula-fd bacula-sd bacula-sd-mysql bacula-server
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Se instalarán los siguientes paquetes extras:
  dbconfig-common mtx
Paquetes sugeridos:
  bacula-doc dds2tar scsitools sg3-utils
Paquetes recomendados
  bacula-traymonitor mt-st bacula-sd-tools
Se instalarán los siguientes paquetes NUEVOS:
  bacula-client bacula-common bacula-console bacula-director-common bacula-director-mysql bacula-fd bacula-sd bacula-sd-mysql bacula-server dbconfig-common mtx
0 actualizados, 11 se instalarán, 0 para eliminar y 106 no actualizados.
Necesito descargar 3110kB de archivos.
Se utilizarán 7918kB de espacio de disco adicional después de desempaquetar.
Como somos unos chicos muy cómodos, y siempre tratamos de memorizar el menor número de comandos y de sistgaxix de ficheros de configuración posibles, instalaremos bácula para ser configurado desde Webmin:
ln -s /usr/bin/bconsole /etc/bacula/console
ln -s /usr/bin/bconsole /etc/bacula/bacula
Configuramos y tenemos integrada la adminstración e Bacula en Webmin:
webmin_bacula.JPG 41.2 KB