Buscar entradas

Migrar el servidor de phpList como LXC

Intro

Nuestra actual instalación de phpList está basada en un debian 6, por lo que es más que conveniente actualizarla. Como en nuestro servidor actual, optamos por la virtualización como LXC, que tiene muchos menos requerimientos y es mucho más sencilla.

Para poder instalar la máquina emplearemos un template de debian 8 al que instalaremos LAMP.

 

Instalar Apache

Instalamos apache con:

# apt-get install apache2

 

Instalar php

Instalamos php con:

# apt-get install php5-common libapache2-mod-php5 php5-cli php5-gd php5-imap php5-mcrypt php5-mysql php5-xcache

 

Instalar mysql

Instalamos mysql con:

# apt-get install mysql-server mysql-client

Y corremos el programa para mejorar la seguiridad del mismo:

# mysql_secure_installation

 

Activamos el módulo ssl de apache

# a2enmod ssl

Activamos el ssl

# a2ensite default-ssl

 

Crear un template de LXC

Aunque esto se sale un poco del tema que nos ocupa, una vez instalado un debian 8 desde cero, actualizado (porque lo hemos actualizado con apt-get dist-upgrade antes de instalar nada) y con una instalación de LAMP, aprovechamos para crear un template que nos permita instalar más fácilmente LXC de debian 8 con LAMP. Para ello seguimos los siguientes pasos:

  • Paramos el LXC.
  • Eliminamos la interfaz de red.
  • Realizamos una copia de seguridad del LXC, seleccionando el sistema de compresión .gz
  • Movemos el archivo tar.gz generado al directorio /var/lib/vz/template/cache y le cambiamos el nombre por algo que nos resulte reconocible, como debian8-LAMP.tar.gz

[box type=»info»] Cuando cramos un nuevo container a partir de un template, el sistema le genera nuevas claves ssh, por lo que nos podemos despreocupar en ese respecto.[/box]

[box type=»warning»] Es una pena, pero no es posible crear un template LXC de este modo. Seguiré investigando[/box]

 

Instalar phplist

Descargamos la última versión de phplist y la instalamos en nuestro servidor nuevo.

 

Migrar base de datos phplist

Hacemos un mysqldump de la base de datos de phplist y la copiamos al servidor nuevo.

Creamos la base de datos de phplist en el servidor nuevo y la poblamos con la salida del mysqldum del punto anterior.

 

Copiar directorio uploadimages

Creamos un archivo comprimido del directorio en el servidor original y lo pasamos al nuevo, donde lo descomprimimos en el mismo directorio en el que estaba en el servidor antiguo.

 

Copiar archivo de configuración

Lo copiamos en la misma ubicación en el servidor nuevo.

 

Modificamos el archivo de configuración de apache

En nuestro caso el archivo de configuración es default-ssl.conf