Cómo añadir un sitio web en ISPConfig 3.2

ISPConfig es un panel de control de alojamiento para servidores Linux. ISPConfig proporciona funciones para gestionar sitios web, bases de datos, usuarios FTP y shell, cuentas de correo electrónico y DNS. En esta guía, te mostraremos paso a paso cómo añadir un sitio web, una base de datos MySQL/MariaDB, un usuario FTP y un usuario SSH en ISPConfig. La configuración que hemos elegido en este tutorial corresponde a los requisitos de los CMS típicos basados en PHP como WordPress, Joomla, Contao, Typo3, etc.

Requisitos previos

Para seguir esta guía se deben cumplir los siguientes requisitos previos:

  • Servidor con el panel de control de alojamiento ISPConfig instalado.
    Si aún no has instalado ISPConfig, sigue la guía de instalación de ISPConfig.
  • Un login de administrador, revendedor o cliente ISPConfig. Los inicios de sesión de revendedor o cliente deben tener permiso para añadir sitios web habilitados dentro de sus límites de cliente.
  • Un nombre de dominio para el sitio web que apunte al servidor con un DNS A-Record ya.
  • Este tutorial es compatible con los servidores Apache y Nginx.

A efectos de demostración, se utiliza el dominio «ejemplo.com». Sustituye ejemplo.com por tu propio nombre de dominio siempre que aparezca a continuación.

Añadir un Sitio Web en ISPConfig

Accede a la interfaz web de ISPConfig, luego ve al Módulo «Sitios» haciendo clic en Sitios en el menú superior.

Módulo de sitios ISPConfig

Ahora haz clic en el botón verde «Añadir nuevo sitio web». si no ves ese botón, haz clic en la palabra «Sitio web» en el menú de la izquierda.

Añadir sitio web

Aparecerá el formulario de configuración del sitio web. Te permite configurar los detalles del sitio web. A continuación te explico los ajustes necesarios y recomendados.

Configuración del sitio web
Configuración PHP

Configuración del sitio web. si quieres obtener explicaciones en profundidad de todos los campos, echa un vistazo al Manual de ISPConfig. Aquí sólo cubriré lo que se recomienda configurar para un sitio web típico basado en PHP. Una nota importante, no se recomienda habilitar características que no sean necesarias.

  • Cliente: Este campo sólo aparece cuando has iniciado sesión como administrador o revendedor. El campo puede dejarse en blanco. Si quieres gestionar clientes, crea primero un cliente antes de crear el sitio web.
  • Dirección IPv4: Elige * aquí. Lo importante es que todos los sitios del servidor que apunten a la misma IP utilicen * o la dirección IP, pero no mezclen * e IP. Por eso te recomiendo que utilices siempre *, con lo que obtendrás un host virtual basado en un nombre.
  • Dominio: Introduce aquí el nombre del dominio.
  • Suexec (sólo servidores Apache): La casilla suexec debe estar siempre activada, ya que garantiza que los scripts PHP se ejecuten bajo el usuario web del sitio web, permitiendo así que PHP escriba archivos (archivos multimedia y actualizaciones) como requiere cualquier cms moderno.
  • Subdominio automático: Si tu sitio web va a ser accesible también por www.example.com, y no sólo por ejemplo.com, entonces establece el subdominio automático en www, de lo contrario, establécelo en ninguno.
  • SSL: Activa esta casilla para permitir el acceso al sitio mediante SSL (HTTPS). Es muy recomendable activarla.
  • Let’s Encrypt SSL: SSL requiere un certificado SSL para funcionar. Puedes tener un certificado SSL autofirmado (que mostrará un error de inseguridad cuando accedas al sitio en un navegador web), o puedes comprar un certificado SSL de una autoridad SSL, o puedes obtener un certificado SSL gratis de, por ejemplo, Let’s Encrypt. Y para eso está hecha esta casilla de verificación. Activando esta casilla, ISPConfig intenta obtener un certificado SSL gratuito de Let’s Encrypt para el sitio web. Importante: Obtendrás un certificado SSL Let’s Encrypt sólo cuando el nombre de dominio del sitio web apunte ya a la dirección IP de este servidor web. Si tienes problemas para obtener un certificado SSL de Let’s Encrypt (la casilla de verificación de Let’s Encrypt se desmarca aproximadamente un minuto después de crear el sitio), echa un vistazo a las Preguntas frecuentes sobre errores de Let’s Encrypt para obtener una lista de comprobación para depurar el problema.
  • PHP: El modo PHP recomendado es PHP-FPM. Si estás usando un servidor web Nginx, entonces este campo no aparecerá, los servidores Nginx ISPConfig usan siempre PHP-FPM.
  • Versión de PHP: Este campo sólo aparece si tienes varias versiones de PHP instaladas. Te recomiendo que utilices siempre la versión más alta soportada por el CMS o aplicación web que pienses instalar en este sitio web. Echa un vistazo a los requisitos del sistema del cms para elegir la versión adecuada.
  • Activar: Para activar el sitio web.

Haz clic en el botón «Guardar» para crear el sitio web. El sitio web recién añadido aparecerá en la lista de sitios web.

Lista de sitios web en ISPConfig

La creación del sitio web puede tardar hasta un minuto. Estará terminada cuando desaparezca el punto rojo en el menú superior. El número del punto es el número de cambios de configuración pendientes.

Cambios pendientes en ISPConfig

Ahora tenemos un sitio web totalmente funcional, pero la mayoría de los sistemas CMS requieren también una base de datos MySQL o MariaDB para almacenar su contenido. En el siguiente paso, crearemos dicha base de datos y usuario de base de datos.

Añadir base de datos MySQL y usuario de base de datos en ISPConfig

En este paso, añadiremos un nuevo usuario MySQL y una base de datos para ser utilizados por el sistema cms de ese sitio web, El primer paso es añadir el usuario MySQL.

Haz clic en«Usuarios de base de datos» en el menú de la izquierda:

Usuarios de la base de datos

Y luego en el botón verde«Añadir nuevo usuario» que aparece en la parte central de la página.

Añadir nuevo usuario de Base de Datos

Aparecerá el formulario con los datos del usuario de la base de datos.

Datos del usuario MySQL.

A continuación se explican detalladamente los campos de entrada del usuario de la base de datos:

  • Cliente: Aquí es opcional elegir un cliente. Pero si has elegido asignar el sitio web a un cliente al crear el sitio, entonces es importante que elijas el mismo cliente (o en el caso de este ejemplo – ningún cliente) aquí.
  • Usuario dela base de datos: Introduce aquí el nombre que recibirá el nuevo usuario de la base de datos. Se añadirá un prefijo al nombre, por lo que en este ejemplo, el nombre de usuario de la base de datos resultante será c0mywebsite. También lo veremos más adelante en la lista de usuarios de la base de datos. Consulta el capítulo sobre prefijos al final de la guía.
  • Contraseña dela base de datos y Repetir contraseña: Introduce aquí dos veces una contraseña segura para el nuevo usuario de la base de datos. O utiliza el botón «Generar contraseña» para generar una. Ten cuidado de anotar la contraseña, ya que la necesitarás más adelante cuando instales el CMS en el sitio web.

Ahora pulsa guardar para crear el usuario de la base de datos, serás redirigido a la lista de usuarios de la base de datos. Ten en cuenta que el usuario se crea en MySQL en el momento en que lo asignamos a una base de datos en el siguiente paso.

Lista de usuarios de la base de datos con el nuevo usuario MySQL

Como puedes ver ahora en la lista, el nombre de usuario de la base de datos es «c0mywebsite» y ese# es el nombre que tendrás que utilizar cuando introduzcas los detalles de la base de datos al instalar el CMS en el sitio.

Ahora crearemos una base de datos MySQL. Para ello, haz clic en«Bases de datos» en el menú de la izquierda.

Databases menu

Aparecerá la lista (vacía) de bases de datos. Allí haz clic en el botón verde«Añadir nueva base de datos».

Añadir una nueva base de datos en ISPConfig

Rellena los detalles de la base de datos como se muestra a continuación:

Database config

La configuración de la base de datos en detalle:

  • Sitio: aquí tienes que elegir el sitio web al que pertenecerá la base de datos. En nuestro caso, el sitio web «ejemplo.com». Elegir el sitio web adecuado es importante, ya que esta configuración define, por ejemplo, en qué copia de seguridad acabará la base de datos y qué permisos se establecen para el acceso a la base de datos.
  • Nombre de la base de datos: aquí introduces el nombre que tendrá la nueva base de datos. Yo utilizaré aquí el nombre «miweb». De forma similar al usuario MySQL, se antepone un prefijo al nombre de la base de datos, por lo que el nombre de la base de datos resultante será «c0mywebsite». Consulta el capítulo sobre prefijos al final de la guía.
  • Usuario de la base de datos: Aquí seleccionas el nombre del usuario de la base de datos que hemos creado anteriormente.
  • Activa: Debe estar activado para activar la base de datos.

Ahora pulsa el botón Guardar. Esto creará la Base de Datos y también el usuario de la base de datos en MySQL. Volverás a la lista de bases de datos y allí aparecerá nuestra nueva base de datos.

Base de datos MySQL para un sitio web en ISPConfig

Ahora puedes acceder a ella, por ejemplo, a través de phpmyadmin, pulsando el botón phpMyAdmin de la lista:

Botón para acceder a phpmyadmin

Nota: En caso de que obtengas un error de que phpMyAdmin no se encuentra, entonces la URL a phpMyAdmin no se ha configurado todavía después de la instalación de ISPConfig en sistema > Interfaz > Configuración principal. La URL suele ser https://server1.example.com/phpmyadmin en sistemas Apache y https://server1.example.com:8081/phpmyadmin en sistemas nginx, donde servidor1.ejemplo.com es el nombre de host del servidor de alojamiento.

Acceder a los archivos del sitio web

Ya hemos creado un sitio web y una base de datos MySQL, pero para instalar un sistema CMS, debes poder acceder a la carpeta del sitio web mediante FTP o SSH. En este capítulo, te mostraré cómo conceder acceso FTP (FTPS) y SSH (SFTP) al sitio web.

Añadir usuario FTP en ISPConfig

Haz click en Acceso Web > Cuentas FTP en el menú de la izquierda para ir a la lista de usuarios FTP.

Acceder al sitio web por FTP en ISPConfig

En la página que aparece, haz clic en el botón«Añadir nuevo usuario FTP».

Lista de usuarios FTP

Aparecerá el formulario de detalles del usuario FTP:

Usuario FTP en ISPConfig

Los detalles sobre qué introducir en cada uno de los campos son:

  • SitioWeb: Selecciona aquí el sitio web al que pertenecerá el usuario FTP. En nuestro ejemplo, el sitio web se llama «ejemplo.com».
  • Nombre de usuario: Introduce aquí un nombre de usuario para el usuario FTP. Se añadirá automáticamente un prefijo al nombre de usuario.
  • Contraseña y Repetir contraseña: Introduce aquí una contraseña segura dos veces, o utiliza el botón «Generar contraseña».
  • Activo: Esta casilla debe estar marcada para activar el acceso FTP.

Ahora pulsa«Guardar» para crear el usuario FTP. Pasarás a la lista de usuarios FTP, que también muestra el nombre de usuario FTP, incluido el prefijo.

Usuario FTP

Hemos creado con éxito un usuario FTP en ISPConfig. Esto nos permite acceder al sitio web a través de cualquier cliente FTP. Los protocolos soportados son FTP y FTPS (FTP sobre TLS). Ten en cuenta que SFTP (aunque el nombre sea parecido) es un acceso SSH a archivos y no FTP, por lo que requiere un usuario SSH para utilizar ese protocolo (que crearemos en el siguiente capítulo).

Entonces, ¿qué detalles hay que utilizar ahora en un cliente FTP?

  • Servidor: El nombre del servidor FTP es el nombre de host del servidor, ya que ése es el nombre por el que se suele emitir el certificado SSL del servidor FTP. Mi servidor tiene el nombre de host «servidor1.ejemplo.com, así que introduciré «servidor1.ejemplo.com» cuando el cliente FTP me pida el nombre del servidor FTP.
  • Nombre de usuario FTP: El nombre de usuario FTP es el nombre de usuario completo, incluido el prefijo. Así, en el caso de este ejemplo, el prefijo es «default» y el nombre de usuario es «miweb», por lo que el nombre de usuario FTP resultante que hay que introducir en el cliente FTP es «defaultmywebsite». Por cierto, si no te gustan los prefijos, consulta el capítulo al final de la guía sobre por qué son necesarios los prefijos en la mayoría de los sistemas y dónde desactivarlos y cambiarlos (si eres el administrador del servidor).
  • Contraseña FTP: la contraseña que estableciste para ese usuario FTP en el formulario de usuario FTP anterior.

¿Dónde subir los archivos ahora? La raíz del sitio web es la carpeta con el nombre«web«, a la que subes el archivo de tu CMS. La carpeta «web» es a la que accedes mediante el navegador web cuando introduces el nombre de dominio del sitio en la barra de direcciones del navegador. Si quieres almacenar archivos en el sitio web que no serán accesibles por un navegador web, entonces puedes subirlos a la carpeta con el nombre«privada«.

Añadir usuario SSH / SFTP / Shell en ISPConfig

Añadir un usuario Shell, que proporciona acceso por SSH y SFTP al sitio web, es muy similar a añadir un usuario FTP. El primer paso es hacer clic en Línea de comandos > Usuario Shell en el menú de la izquierda.

Usuario shell en el menú de ISPConfig

La página con los usuarios shell aparece en la sección central. Haz clic en el botón verde«Añadir nuevo usuario shell».

Añadir nuevo Usuario SSH / SFTP en ISPConfig

Aparecerá el formulario con los detalles del usuario shell.

Usuario SSH de ISPConfig

Debes rellenar los siguientes campos.

  • Sitio: aquí seleccionas el sitio web al que dará acceso este usuario SSH. En nuestro ejemplo, el sitio web se llama ejemplo.com.
  • Nombre de usuario: Introduce aquí el nombre de usuario deseado. Se aplicará un prefijo, igual que el descrito para el usuario FTP.
  • Contraseña y Repetir contraseña: Introduce aquí una contraseña segura para el nuevo usuario SSH.
  • ShellChroot: Si eliges jailkit aquí, entonces el usuario SSH será encarcelado en la raíz del sitio web. Esto es recomendable y añade una capa adicional de seguridad, pero el usuario sólo puede acceder a los programas y archivos que estén instalados en su jaula. Este campo sólo es visible para los administradores, para los clientes y revendedores, el valor de este campo puede ser predefinido por los límites del cliente.
  • Clave PúblicaSSH-RSA: Si quieres utilizar la autenticación de clave pública para el acceso SSH en lugar o además de una contraseña, puedes introducir aquí tu clave pública.

Ahora haz clic en Guardar y se creará el usuario SSH. Esto puede tardar hasta un minuto, puedes ver el indicador rojo parpadeante en la barra de navegación superior hasta que los cambios se hayan escrito en el disco.

Shell SSH Usuario SFTP

Con este usuario SSH, puedes acceder al sitio web con un cliente SFTP (SSH File Transfer) o puedes utilizar el comando ssh o un cliente SSH como Putty para obtener acceso de terminal. Los datos a utilizar en un cliente SSH o SFTP son:

  • Servidor: Utiliza aquí el nombre de host del servidor. en mi caso el nombre de host es servidor1.ejemplo.com.
  • Nombre de usuario SSH: El nombre de usuario SSH es el nombre de usuario completo, incluido el prefijo. En el caso de este ejemplo, el prefijo es «default» y el nombre de usuario es «miweb», por lo que el nombre de usuario resultante es «defaultmywebsite».
  • Contraseña SSH: La contraseña que introdujiste anteriormente o puedes utilizar la clave SSH, en caso de que la hayas utilizado.

¿Cómo navegar a la carpeta del sitio web como usuario SSH?

El comando para cambiar a una carpeta diferente en el shell de Linux es «cd». Cuando entras en el sitio web como usuario SSH, aterrizas en la carpeta de inicio de tu usuario SSH (que está vacía cuando empiezas a usarla). Para ir a la carpeta web (que contiene los archivos del sitio web, utiliza el comando cd así:

cd ../../web/

El comando anterior funciona para usuarios SSH encarcelados y no encarcelados. Para usuarios enjaulados, puedes utilizar la alternativa eas:

cd /web

ya que la carpeta raíz de un usuario SSH encarcelado es la raíz del sitio web y la raíz http o httpdocs como se denomina a veces (la carpeta que contiene los archivos del sitio web) es la carpeta llamada ‘web’.

Prefijos de nombre de usuario en ISPConfig

¿Por qué se usan prefijos de nombre de usuario? La mayoría de los servicios en Linux que utilizan nombres de usuario y contraseñas para la autenticación requieren que el nombre de usuario sea único en ese servidor. ISPConfig es un panel de Control de Hosting que puede ser utilizado por múltiples Clientes donde cada cliente ve sólo sus propios usuarios de causa. Ahora puede surgir el siguiente problema El Cliente A crea un usuario FTP/SSH/Base de Datos llamado «tom». Ahora el Cliente B entra en ISPConfig e intenta crear un nuevo usuario FTP, llamado «tom» también. No puede ver que ya existe un usuario con el nombre tom, ya que este usuario pertenece al cliente A. Entonces recibiría un error de que el usuario tom ya existe, pero como no puede ver ese usuario, probablemente pensaría que debe haber un fallo en el software y llamaría al soporte de su ISP. Aquí entran en juego los prefijos de nombre de usuario, ISPConfig los configura por defecto, por ejemplo, se añade un id «c + ID del cliente» delante de un usuario de base de datos o base de datos o se añade el nombre de usuario del cliente (en caso de que no haya cliente, la palabra por defecto) delante de un usuario SSH o FTP. Esto permite que cada cliente tenga un usuario «tom», con el inconveniente de que el prefijo forma parte del nombre de usuario para hacerlo único. Pero no todos los servidores ISPConfig se usan como sistemas de alojamiento, puede que por ejemplo uses ISPConfig como panel para tu servidor casero o servidor interno de la empresa, por lo que no necesitas prefijos de nombre de usuario y te resulta molesto que ISPconfig los añada. Pero esto se puede solucionar fácilmente ya que los prefijos de nombre de usuario se pueden configurar libremente en ISPConfig. Para eliminarlos, ve a Sistema > Interfaz > Configuración Principal (mientras estás conectado como usuario admin):

Prefijos de nombre de usuario

Vacía todos los campos de prefijo y pulsa el botón guardar:

Desactivar el prefijo de nombre de usuario

Ahora los prefijos de nombre de usuario y de base de datos están desactivados. Ten en cuenta que el cambio sólo se aplica a los usuarios recién creados, el prefijo de los usuarios existentes no se elimina, por lo que los nombres de usuario existentes no se alterarán y su inicio de sesión no se interrumpirá cuando modifiques esta configuración.

Enlaces

Aquí tienes algunos enlaces para leer más y obtener ayuda si tienes problemas.

También te podría gustar...