Cómo instalar ImpressCMS 1.0 Final en Debian Etch

Introducción
Versión: 1.0
Autor original: Oliver Meyer
Este documento describe cómo configurar ImpressCMS 1.0 Final en Debian Etch. ImpressCMS es un sistema de gestión de contenidos (CMS) para construir y mantener un sitio web dinámico de forma sencilla, segura y flexible. Esta guía es práctica y no cubre los fundamentos teóricos.
Importante: trabajo con una instalación mínima de Debian Etch (network install). Ajusta direcciones IP, nombres de host y contraseñas a tu entorno de producción.
Entorno de ejemplo (configuración de VM usada en la guía)
- Hostname: server1.example.com
- IP: 192.168.0.100
- Gateway: 192.168.0.2
- Contraseñas de ejemplo: howtoforge (cámbialas inmediatamente en entorno real)
1. Paquetes necesarios
Instala Apache, PHP y MySQL en Debian Etch:
apt-get install apache2 libapache2-mod-php5 php5-mysql mysql-server mysql-client
Nota: Debian Etch y PHP5 son software antiguo. Para sistemas modernos usa versiones soportadas y procedimientos actualizados.
2. Configuración de MySQL
2.1 Dirección de escucha (bind-address)
Edita el archivo de configuración para que MySQL escuche en todas las interfaces (si lo requieres).
vi /etc/mysql/my.cnf
Localiza y comenta la línea:
# bind-address = 127.0.0.1
Reinicia MySQL:
/etc/init.d/mysql restart
Nota: escuchar en todas las interfaces tiene implicaciones de seguridad. Si el servidor no necesita acceso remoto, deja bind-address en localhost.
2.2 Establecer contraseña para root de MySQL
mysqladmin -u root password %sql_root_password%
mysqladmin -h server1.example.com -u root password %sql_root_password%
Sustituye %sql_root_password% por una contraseña segura.
2.3 Crear la base de datos y usuario para ImpressCMS
Crea la base de datos:
mysqladmin -u root -p create impresscms
Conéctate a MySQL y crea el usuario con permisos necesarios:
mysql -u root -p
Dentro del cliente MySQL:
GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON impresscms.* TO 'impresscms_admin'@'localhost' IDENTIFIED BY '%impresscms_admin_password%';
GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON impresscms.* TO 'impresscms_admin'@'localhost.localdomain' IDENTIFIED BY '%impresscms_admin_password%';
FLUSH PRIVILEGES;
Sal del cliente:
quit;
Sustituye %impresscms_admin_password% por una contraseña robusta.
3. Crear el vhost de ImpressCMS en Apache
Crea el directorio raíz y el directorio trust:
mkdir /var/www/impresscms/
mkdir /var/www/impresscms_trust/
Crea el archivo de configuración del sitio:
vi /etc/apache2/sites-available/impresscms
Ejemplo de configuración:
NameVirtualHost 192.168.0.100:80
ServerName server1.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/impresscms/
LogLevel warn
ErrorLog /var/log/apache2/impresscms_error.log
CustomLog /var/log/apache2/impresscms_access.log combined
Habilita el sitio y reinicia Apache:
a2ensite impresscms
/etc/init.d/apache2 restart
4. Descargar y desplegar ImpressCMS
Comprueba la página de descargas para la versión más reciente en http://www.impresscms.org/modules/mastop_publish/?tac=Download. En el momento de la guía era la 1.0.
cd /tmp/
wget http://downloads.sourceforge.net/impresscms/impresscms_1.0_final.tar.gz
tar xvfz impresscms_1.0_final.tar.gz
Copia el contenido de la carpeta htdocs al document root:
cp -R /tmp/htdocs/* /var/www/impresscms/
Ajusta propietarios y permisos básicos:
chown -R www-data:www-data /var/www/impresscms/ /var/www/impresscms_trust/
chmod -R 755 /var/www/impresscms/uploads/ /var/www/impresscms/cache/ /var/www/impresscms/templates_c/ /var/www/impresscms/mainfile.php
Nota: adapta permisos según tu política de seguridad. Evita dar más privilegios de los necesarios.
5. Instalación vía navegador
Abre en tu navegador: http://server1.example.com/ y sigue el asistente de instalación. El asistente comprobará la configuración del servidor y los permisos de archivos.
El script debe mostrar todos los chequeos en verde.
El instalador comprobará permisos de archivos y directorios. Indica la ruta trust como “/var/www/impresscms_trust” y crea la ruta desde el botón correspondiente.
Introduce el nombre de la base de datos, usuario y contraseña creados anteriormente.
Sigue con la instalación. El instalador creará las tablas en la base de datos y las poblará con datos iniciales.
Introduce los datos para la cuenta de administrador (por ejemplo, login “admin”).
El script poblará la base de datos con el contenido inicial.
Finalizado. Haz clic en “Show my site” para ver el sitio por primera vez.
Antes de iniciar sesión elimina el directorio de instalación y endurece permisos del archivo mainfile.php:
rm -Rf /var/www/impresscms/install/
chmod 444 /var/www/impresscms/mainfile.php
Ahora puedes iniciar sesión con la cuenta de administrador creada.
6. Resolución de problemas comunes
- Error de conexión a la base de datos: verifica host, usuario, contraseña y que el servidor MySQL esté en ejecución.
- Permisos en uploads/cache/templates_c: asegúrate que www-data tenga propiedad y permisos de escritura según sea necesario.
- Archivos PHP faltan o versiones incompatibles: comprueba que PHP5 y las extensiones requeridas estén instaladas.
- Página en blanco tras la instalación: habilita los logs de Apache y revisa error_log para mensajes PHP.
Consejo: revisa /var/log/apache2/impresscms_error.log y /var/log/mysql/error.log.
7. Seguridad y buenas prácticas (recomendaciones)
- Cambia contraseñas por defecto inmediatamente.
- No expongas MySQL a Internet si no es necesario. Usa firewall y bind-address adecuado.
- Mantén backups regulares de la base de datos y del directorio /var/www/impresscms_trust.
- Mantén permisos mínimos: solo www-data debe escribir en uploads/cache/templates_c.
- Elimina o protege directorios de instalación y herramientas administrativas no usadas.
- Considera HTTPS con certificados válidos para el sitio y el área de administración.
8. Privacidad y GDPR (nota breve)
Si gestionas datos personales, documenta el flujo de datos y añade políticas de privacidad. Implementa HTTPS, registra accesos administrativos y ofrece mecanismos para eliminar o exportar datos de usuarios cuando lo soliciten.
9. Mini-metodología para actualizaciones
- Haz una copia de seguridad completa (ficheros + base de datos).
- Prueba la actualización en un entorno staging.
- Verifica compatibilidades de PHP y extensiones.
- Actualiza módulos de terceros con cuidado.
- Monitorea logs y comportamiento tras la actualización.
10. Checklist por roles
Administrador del sistema:
- Instalar paquetes base.
- Configurar Apache y MySQL.
- Ajustar permisos y propietarios.
Desarrollador / Integrador:
- Revisar compatibilidad de módulos.
- Configurar rutas trust y templates.
- Probar funciones de contenido dinámico.
Administrador del sitio:
- Crear cuentas administrativas y roles.
- Configurar idioma y contenido inicial.
- Verificar backups y políticas de acceso.
11. Criterios de aceptación
- Sitio accesible en http://server1.example.com/
- Instalador completado sin errores y tablas creadas en la BD.
- Permisos de archivos y directorios correctos.
- Directorio /install eliminado y mainfile.php con permisos 444.
- Login con la cuenta admin creado.
12. Comandos de referencia (cheat sheet)
apt-get install apache2 libapache2-mod-php5 php5-mysql mysql-server mysql-client
/etc/init.d/mysql restart
mysqladmin -u root -p create impresscms
mysql -u root -p # luego los GRANT
a2ensite impresscms
/etc/init.d/apache2 restart
chown -R www-data:www-data /var/www/impresscms/ /var/www/impresscms_trust/
chmod -R 755 /var/www/impresscms/uploads/ /var/www/impresscms/cache/ /var/www/impresscms/templates_c/ /var/www/impresscms/mainfile.php
rm -Rf /var/www/impresscms/install/
chmod 444 /var/www/impresscms/mainfile.php
13. Enlaces útiles
- Debian: http://www.debian.org/
- ImpressCMS: http://www.impresscms.org/
- ImpressCMS en SourceForge: http://sourceforge.net/projects/impresscms/
Resumen final: esta guía te lleva desde un Debian Etch mínimo hasta un sitio ImpressCMS 1.0 funcional. Asegura permisos, protege la base de datos y realiza respaldos antes de cualquier cambio mayor.
Notas importantes: adapta las rutas, usuarios y contraseñas a tu entorno. Para producción, prefiere versiones de software soportadas y actualizadas.
Glosario rápido:
- CMS: sistema de gestión de contenidos.
- trust path: directorio fuera del document root para archivos de confianza.
Materiales similares

Recuperar una racha perdida en Snapchat

Clonación de disco CentOS 7 con Clonezilla

Aumento salarial sin cambiar de empleo

Parches para Office 2016/2019 con 0Patch

Instalar ImpressCMS 1.0 en Debian Etch
