Cuando hablamos de alojamiento web o queremos administrar uno o varios sitios web a través de una interfaz web fácil de usar, aparecen diferentes paneles de control de alojamiento web, algunos de ellos son propietarios y muchos son de código abierto. ISPConfig es uno de los paneles de control de alojamiento web de código abierto más utilizados para Linux que está diseñado para administrar Apache, FTP, DNS, correos electrónicos y bases de datos utilizando su interfaz basada en web. ISPConfig proporciona diferentes niveles de acceso de usuario que es administrador, revendedor, cliente y usuario de correo electrónico.
Ahora configuraremos su instalación en CentOS 7, después de seguir este tutorial, tendrá un panel de control de alojamiento web fácil de usar donde podrá administrar fácilmente sus múltiples dominios sin ningún costo.
Configuración básica del sistema operativo
Como configuraremos ISPConfig en CentOS 7, antes de comenzar con el proceso de instalación configuraremos sus parámetros básicos para configurar sus ajustes de red, reglas de firewall e instalación de sus dependencias requeridas.
Configuración de red
Su host Linux debe configurarse con un FQDN y una dirección IP adecuados y debe tener acceso a Internet. Puede configurar su host local abriendo el archivo de hosts de su sistema usando el siguiente comando.
# vim /etc/hosts
72.25.10.73 ispcp ispcp.linoxide.com
Configurar cortafuegos
Habilitar el firewall a nivel del sistema siempre ha sido una buena práctica para proteger sus servidores. En Linux CentOS 7, puede habilitar su firewall y abrir los puertos conocidos requeridos usando los siguientes comandos.
Para habilitar e iniciar el firewall, ejecute el siguiente comando.
# systemctl enable firewalld
# systemctl start firewalld
Luego abra los puertos que se usarán en la configuración de ISPConfig usando el siguiente comando.
# firewall-cmd --zone=public --add-port 22/tcp --permanent
# firewall-cmd --zone=public --add-port 443/tcp --permanent
# firewall-cmd --zone=public --add-port 80/tcp --permanent
# firewall-cmd --zone=public --add-port 8080/tcp --permanent
# firewall-zmd --zone=public --add-port 25/tcp --permanent
Configurar dependencias
Antes de continuar, actualicemos su sistema con las últimas actualizaciones y parches de seguridad y habilitemos el repositorio EPEL en nuestro sistema CentOS para los paquetes requeridos para ISPConfig.
# yum -y install yum-priorities
Para actualizar los paquetes existentes en el sistema, ejecute el siguiente comando.
# yum update
Una vez que su sistema esté actualizado, instalaremos los paquetes de herramientas de desarrollo que serán necesarios para la configuración completa de ISPConfig. Para instalar estos paquetes, puede ejecutar el siguiente comando.
# yum -y groupinstall 'Development Tools'
1) Instalación de LAMP Stack
Ahora ejecute el siguiente comando para instalar paquetes de pila LAMP con MariaDB, Apache, PHP, NTP y PHPMYADMIN.
# yum install ntp httpd mod_ssl mariadb-server php php-mysql php-mbstring phpmyadmin
Después de la instalación de los paquetes de pila LAMP, reinicie los servicios de mariadb y configure su contraseña de root usando 'mysql_secure_installation' a continuación.
# systemctl start mariadb
# systemctl enable mariadb
# mysql_secure_installation
2) Instalación de Dovecot
Puede instalar dovecot emitiendo el siguiente comando.
# yum -y install dovecot dovecot-mysql dovecot-pigeonhole
Después de la instalación, cree un archivo dovecot-sql.conf vacío y cree un símbolo como se muestra a continuación.
# touch /etc/dovecot/dovecot-sql.conf
# ln -s /etc/dovecot/dovecot-sql.conf /etc/dovecot-sql.conf
Ahora reinicie los servicios de Dovecot y habilítelos en el arranque.
# systemctl start dovecot
# systemctl enable dovecot
3) Instalación de ClamAV, Amavisd-new y SpamAssassin
Para instalar ClamAV, Amavisd y SpamAssassin, utilice el siguiente comando, que instalará todos estos paquetes de una sola vez.
# yum -y install amavisd-new spamassassin clamav clamd clamav-update unzip bzip2 unrar perl-DBD-mysql
4) Instalación de módulos Apache2 y PHP
Ahora instalará algunos de los módulos mencionados que ISPConfig 3 permite usar mod_php, mod_fcgi/PHP5, cgi/PHP5 y suPHP en cada sitio web.
Entonces, para instalar estos módulos con Apache2, puede ejecutar el siguiente comando en su terminal ssh.
# yum -y install php-ldap php-mysql php-odbc php-pear php php-devel php-gd php-imap php-xml php-xmlrpc php-pecl-apc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel mod_fcgid php-cli httpd-devel php-fpm perl-libwww-perl ImageMagick libxml2 libxml2-devel python-devel
Para configurar su formato de fecha y hora, abriremos el archivo de configuración predeterminado de PHP y configuraremos la zona de datos y hora.
# vim /etc/php.ini
date.timezone = Europe/London
Después de realizar cambios en el archivo de configuración, asegúrese de reiniciar los servicios web de Apache.
5) Instalación de PureFTPd
Se requiere PureFTP para la transferencia de archivos de un servidor a otro, para instalar su paquete puede usar el siguiente comando.
yum -y install pure-ftpd
6) Instalación de BIND
BIND es una utilidad de servidor de nombres de dominio en Linux, en ISPconfig para administrar y configurar la configuración de DNS, debe instalar este paquete usando los comandos que se muestran a continuación.
# yum -y install bind bind-utils
Configuración de la instalación de ISPConfig
Ahora prepárese para la configuración de instalación de ISPConfig. Para descargar su paquete de instalación, usaremos el siguiente comando wget para copiar el paquete desde el enlace web proporcionado oficialmente de ISPConfig.
# wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
Una vez descargado el paquete, ejecute el siguiente comando para descomprimir el paquete.
# tar -zxvf ISPConfig-3-stable.tar.gz
Luego cambie el directorio donde se coloca su paquete de instalación como se muestra en la imagen a continuación.
Instalación de ISPConfig
Ahora ejecutaremos la instalación a través del programa php ejecutando el siguiente comando en la terminal.
# php -q install.php
Configuración inicial
Select language (en,de) [en]:
Installation mode (standard,expert) [standard]:
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [ispcp]: ispcp.linoxide.com
Configuraciones de la base de datos
MySQL server hostname [localhost]:
MySQL root username [root]:
MySQL root password []: *******
MySQL database to create [dbispconfig]:
MySQL charset [utf8]:
Luego, el sistema generará una clave privada RSA de 4096 bits para escribir una nueva clave privada en el archivo 'smtpd.key'. Después de eso, debemos ingresar la información que se incorporará a la solicitud de certificado.
Country Name (2 letter code) [XX]:UK
State or Province Name (full name) []:London
Locality Name (eg, city) [Default City]:Manchester
Organization Name (eg, company) [Default Company Ltd]:Linoxide
Organizational Unit Name (eg, section) []:Linux
Common Name (eg, your name or your server's hostname) []:ispcp
Email Address []:[email protected]
Cuando agregue la información anterior, el sistema se configurará con todos los paquetes necesarios, como se muestra en la imagen a continuación, y luego se le solicitará una conexión segura (SSL) a la interfaz web de ISPConfig.
Una vez que haya ingresado la información para generar la clave RSA para establecer su conexión SSL, se le pedirá que configure algunos atributos adicionales, ya sea para elegir el valor predeterminado o cambiar según sus requisitos. Luego escribirá la clave RSA, configurará el servidor DB y reiniciará sus servicios para completar la configuración de instalación de ISPConfig.
Inicio de sesión de ISPConfig
Ahora estamos listos para usar el panel de control de ISPConfig, para acceder a su panel de control web, abra su navegador web para acceder a la siguiente URL que consta de su FQDN o la dirección IP del servidor con el puerto predeterminado configurado.
https://server_IP:8080/
Puede iniciar sesión con el nombre de usuario y la contraseña predeterminados como 'admin' 'admin'.
Uso del panel de control de ISPConfig
Luego de una autenticación exitosa y de proporcionar las credenciales de inicio de sesión correctas, se le dirigirá al panel de control de ISPconfig como se muestra a continuación.
Al usar este panel de control de administración, podremos administrar los servicios de nuestro sistema, configurar correos electrónicos, agregar entradas de DNS y configurar nuestros nuevos sitios web simplemente eligiendo entre sus módulos disponibles.
En la siguiente imagen podemos ver que elegir el módulo Sistema mostrará el estado de nuestro servidor con todos los servicios ejecutándose en él.
Conclusión
Después de completar este tutorial, ahora puede administrar los servicios a través de un navegador web que incluye el servidor web Apache, el servidor de correo Postfix, MySQL, el servidor de nombres BIND, PureFTPd, SpamAssassin, ClamAV, Mailman y muchos más sin pagar su tarifa de licencia, ya que libre y de código abierto que puede modificar fácilmente su código fuente si lo desea. Espero que encuentre este tutorial muy útil para usted, deje sus comentarios si tiene algún problema con respecto a este artículo y siéntase libre de publicar sus sugerencias.