Cómo configurar el DNS de ISPConfig sólo en CentOS 7

ISPConfig es un potente panel de control gratuito y de código abierto para servidores Linux que te permite gestionar, supervisar y controlar todas las tareas a través de un navegador web. Es muy seguro, rápido y estable, y lo utilizan muchos administradores de sistemas para gestionar sus servidores. Puedes añadir dominios, direcciones de correo electrónico, sitios web, bases de datos y mucho más con ISPConfig.

Características de ISPConfig

  • Soporta tres niveles de acceso: Administrador, Revendedores y Clientes.
  • Gestiona múltiples servidores desde un único panel de control.
  • Soporta IPv4 e IPv6.
  • Compatible con Ubuntu, CentOS, Fedora, Debian y OpenSuSE.

Este tutorial explicará cómo configurar el panel de control ISPConfig en un servidor CentOS 7.

Requisitos

  • Un servidor con CentOS 7 instalado.
  • Una contraseña de root configurada en tu instancia.

Cómo empezar

Antes de empezar, se recomienda actualizar tu servidor con la última versión. Puedes actualizar el servidor con el siguiente comando:

yum update -y

A continuación, deberás establecer un nombre de host para el servidor. El nombre de host debe ser un nombre de dominio completo. Puedes establecer el nombre de host de tu servidor

hostnamectl set-hostname test.example.com

A continuación, también tendrás que desactivar SELinux en tu servidor. Puedes desactivarlo editando el siguiente archivo:

nano /etc/selinux/config

Cambia las siguientes líneas:

SELINUX=disabled
SELINUXTYPE=targeted

Guarda y cierra el archivo. A continuación, reinicia tu sistema para aplicar estos cambios.

Instalar Apache, MariaDB y PHP

Por defecto, la última versión de MariaDB no está disponible en el repositorio por defecto de CentOS. Por lo tanto, tendrás que añadir el repositorio de MariaDB a tu sistema.

Puedes añadirlo con el siguiente comando:

nano /etc/yum.repos.d/MariaDB.repo

Añade las siguientes líneas:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Guarda y cierra el archivo. A continuación, instala el servidor MariaDB con el siguiente comando:

yum install mariadb-server mariadb-client

A continuación, también tendrás que añadir el repositorio Remi para instalar PHP. Puedes añadirlo con el siguiente comando:

yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install yum-utils

A continuación, desactiva PHP5.4 y activa PHP7.2 con el siguiente comando:

yum-config-manager --disable remi-php54
yum-config-manager --enable remi-php72

A continuación, instala PHP con todos los módulos necesarios ejecutando el siguiente comando:

yum install php php-devel php-mysql php-gd php-imap php-ldap php-pear php-xml php-xmlrpc php-pecl-apc php-mbstring php-mcrypt php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl imageMagick libxml2 libxml2-devel mod_fcgid php-cli wget

Una vez finalizada la instalación, abre el archivo php.ini y cambia la configuración de la zona horaria:

nano /etc/php.ini

Cambia la siguiente línea:

date.timezone = Asia/Kolkata

Guarda y cierra el archivo.

A continuación, instala el servidor web Apache con el siguiente comando:

yum install ntp httpd httpd-devel mod_ssl perl-dateTime-format-HTTP perl-dateTime-format-builder

Por último, reinicia el servicio Apache y habilítalo para que se inicie al arrancar con el siguiente comando:

systemctl restart httpd
systemctl enable httpd

Instalar y configurar ISPConfig

Primero, descarga la última versión de ISPConfig con el siguiente comando:

wget -O ispconfig.tar.gz https://git.ispconfig.org/ispconfig/ispconfig3/repository/archive.tar.gz?ref=stable-3.1

A continuación, extrae el archivo descargado con el siguiente comando:

tar xfz ispconfig.tar.gz

A continuación, cambia el directorio a ispconfig e inicia la instalación con el siguiente comando:

cd ispconfig3*/install/
php -q install.php

Deberías ver la siguiente pantalla:

--------------------------------------------------------------------------------
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |  |_ |
 _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| | ___\ \
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
                                              __/ |
                                             |___/ 
--------------------------------------------------------------------------------


>> Initial configuration  

Operating System: CentOS 7.6

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with .
    Tap in "quit" (without the quotes) to stop the installer.

Selecciona el modo experto de instalación y proporciona todas las instrucciones necesarias como se muestra a continuación:

Select language (en,de) [en]: 

Installation mode (standard,expert) [standard]: expert

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [test.example.com]: 

MySQL server hostname [localhost]: 

MySQL server port [3306]: 

MySQL root username [root]: 

MySQL root password []: admin@123

MySQL database to create [dbispconfig]: 

MySQL charset [utf8]: 

The next two questions are about the internal ISPConfig database user and password.
It is recommended to accept the defaults which are 'ispconfig' as username and a random password.
If you use a different password, use only numbers and chars for the password.

ISPConfig mysql database username [ispconfig]:

Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: 

Adding ISPConfig server record to database.

Configure Mail (y,n) [y]: 

[WARN] autodetect for Postgrey failed
Force configure Postgrey (y,n) [n]: n

Skipping Postgrey

Configuring Postfix
Generating a 4096 bit RSA private key
...................................................................++
......................................................................................................................................................................................................................................................++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:GUJ
Locality Name (eg, city) [Default City]:JUN
Organization Name (eg, company) [Default Company Ltd]:IT
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:test.example.com
Email Address []:[email protected]
[WARN] autodetect for Mailman failed
Force configure Mailman (y,n) [n]: 

Skipping Mailman

[WARN] autodetect for Dovecot failed
Force configure Dovecot (y,n) [n]: n

Skipping Dovecot

[WARN] autodetect for Courier failed
Force configure Courier (y,n) [n]: n

Skipping Courier

[WARN] autodetect for Spamassassin failed
Force configure Spamassassin (y,n) [n]: 

Skipping Spamassassin

[WARN] autodetect for Amavisd failed
Force configure Amavisd (y,n) [n]: 

Skipping Amavisd

[WARN] autodetect for Getmail failed
Force configure Getmail (y,n) [n]: 

Skipping Getmail

[WARN] autodetect for Jailkit failed
Force configure Jailkit (y,n) [n]: 

Skipping Jailkit

[WARN] autodetect for pureftpd failed
Force configure pureftpd (y,n) [n]: 

Skipping pureftpd

Configure DNS Server (y,n) [y]: 

Configuring BIND
The Web Server option has to be enabled when you want run a web server or when this node shall host the ISPConfig interface.
Configure Web Server (y,n) [y]: 

Configuring Apache
Configuring vlogger
[WARN] autodetect for OpenVZ failed
Force configure OpenVZ (y,n) [n]: 

Skipping OpenVZ

Configure Firewall Server (y,n) [y]: 

Configuring Bastille Firewall
[WARN] autodetect for Metronome XMPP Server failed
Force configure Metronome XMPP Server (y,n) [n]: 

Skipping Metronome XMPP Server

[WARN] autodetect for Fail2ban failed
Force configure Fail2ban (y,n) [n]: 

Skipping Fail2ban

Configuring Apps vhost
Install ISPConfig Web Interface (y,n) [y]: 

Installing ISPConfig
ISPConfig Port [8080]: 

Admin password [46bb8280]: admin@123

Re-enter admin password []: admin@123

Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: 

Generating RSA private key, 4096 bit long modulus
..............................................................................................................................................................................................................................................................................................................................................................++
............................................................................................................................................................................................................................................................................................................................................................................................................................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:GUJ
Locality Name (eg, city) [Default City]:JUN
Organization Name (eg, company) [Default Company Ltd]:IT
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:test.example.com
Email Address []:[email protected]

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:admin@123
An optional company name []:IT
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
Installing ISPConfig crontab
no crontab for root
Detect IP addresses
Restarting services ...
Installation completed.

Una vez hecho esto, puedes pasar al siguiente paso.

Acceder a la Interfaz Web de ISPConfig

ISPConfig ya está instalado y funciona en el puerto 8080. Abre tu navegador web y escribe la URL http://test.example.com:8080. Serás redirigido a la siguiente pantalla:

Ahora, proporciona tu nombre de usuario y contraseña de administrador que has establecido durante la instalación y pulsa el botón Iniciar sesión. Tras iniciar sesión con éxito, deberías ver el panel de control de ISPConfig en la siguiente página:

Enhorabuena! has instalado y configurado con éxito ISPConfig DNS solo en CentOS 7. Ahora puedes gestionar fácilmente tus registros DNS desde la interfaz web de ISPConfig. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...