Guía Completa: Configuración de Servidor Ubuntu en Google Cloud

Desde cero hasta un servidor web funcional con Apache, Webmin y DNS

por Wilmer Murillo

📋 Requisitos Previos

⚠️ Importante: Durante la configuración, acepta todo lo que Google Cloud solicite instalar/habilitar. Para todo lo que no se mencione específicamente en esta guía, deja las opciones por defecto sin modificaciones.

🚀 Pasos para Configurar el Servidor

1

Reservar la Dirección IP

  1. En el buscador de Google Cloud, ingresa "ip" y selecciona "Direcciones IP Red de VPC".
  2. Si aparece un error, haz clic en "Continuar". Se te pedirá habilitar la API de Compute Engine. Habilítala y espera a que se complete el proceso.
  3. Configura la reserva de IP:
    • Nombre: Usa un nombre relacionado con la clase, como "ippublicaclase"
    • Nivel de servicio de red: Premium
    • Versión de IP: IPv4
    • Tipo: Regional
    • Región: Deja la región por defecto (generalmente Iowa) y memorízala
  4. Haz clic en "Reservar".
Reserva de dirección IP en Google Cloud

Interfaz para reservar una dirección IP estática en Google Cloud

2

Creación de la Máquina Virtual

  1. En el buscador ingresa "VM" y selecciona "Instancias de VM Compute Engine".
  2. Selecciona "Crear Instancia".
  3. Configuración de la máquina:
    • Nombre: Relacionado con la clase, como "proyectoclase"
    • Región: La misma que usaste para la IP reservada
    • Tipo de máquina: Estándar → e2-standard-2
  4. Sistema operativo y almacenamiento:
    • Haz clic en "Cambiar"
    • Sistema operativo: Ubuntu
    • Versión: Ubuntu 25.04 x86-64
    • Tipo de disco de arranque: Disco persistente SSD
    • Tamaño: 30 GB
    • Haz clic en "Seleccionar"
  5. Configuración de redes:
    • Firewall: Marca "Permitir tráfico HTTP" y "Permitir tráfico HTTPS"
    • Etiquetas de red: Usa un identificador para la máquina (puede ser el mismo nombre de la máquina)
  6. En "Interfaces de red":
    • Despliega la configuración haciendo clic en la pestaña
    • En "Dirección IPv4 externa" selecciona la IP que reservaste anteriormente
  7. Haz clic en "Crear" para lanzar la máquina virtual.
Creación de máquina virtual en Google Cloud

Configuración de la instancia de máquina virtual

3

Configurar el Firewall

  1. En el buscador ingresa "Firewall" y selecciona "Firewall Red de VPC".
  2. Selecciona "Crear regla de firewall".
  3. Configura la regla:
    • Nombre: Relacionado con la clase o la regla, como "reglaclase" o "reglapuerto65500"
    • Registros: Marca "Sí" (opcional)
    • Etiquetas de destino: Coloca exactamente la etiqueta de red que usaste al crear la VM
    • Rangos de IPv4 de origen: 0.0.0.0/0 (permite peticiones desde cualquier IP)
    • Protocolos y puertos: Selecciona "TCP" y en el campo de texto ingresa el puerto que usarás (ej: 65500)
  4. Haz clic en "Crear".
Nota: El puerto 65500 es solo un ejemplo. Puedes usar cualquier puerto disponible, pero asegúrate de que no entre en conflicto con servicios estándar.
4

Iniciar y Configurar la Máquina Virtual

  1. En "Instancias de VM", en tu VM recién creada, haz clic en "Conectar" > "SSH" > "Abrir en otra ventana del navegador".
  2. Autoriza la conexión SSH cuando se te solicite.

Comandos a ejecutar en la VM:

Actualización del sistema:

sudo apt update
sudo apt upgrade -y

Establecer contraseña de superusuario (root):

sudo passwd root
# Ingresa y confirma tu nueva contraseña (no se verá mientras escribes)
⚠️ Importante: Recuerda la contraseña que establezcas para el superusuario, ya que la necesitarás para acceder a Webmin.

Instalación de Webmin:

su
# Ingresa la contraseña de root que acabas de establecer
cd /root
curl -o webmin-setup-repo.sh https://raw.githubusercontent.com/webmin/webmin/master/webmin-setup-repo.sh
sh webmin-setup-repo.sh
apt install --install-recommends webmin usermin -y
apt install net-tools -y
service webmin status # Debe mostrar "active (running)"
Tip: Si después de ejecutar service webmin status no puedes seguir escribiendo (aparece "Lines 1-15/15 (END)"), presiona la tecla Q para volver al prompt.

Configuración de Webmin:

cd /etc/webmin
ls -l # Ver contenido del directorio
cp miniserv.conf copiaminiserv.conf # Copia de seguridad
nano miniserv.conf
# Edita el archivo para incluir estas líneas:
port=65500
ssl=0
listen=65500
# Guarda con Ctrl+O, Enter, luego Ctrl+X para salir
service webmin restart
5

Configurar DNS

  1. En el buscador de Google Cloud ingresa "dns" y selecciona "Cloud DNS servicios de red". Se te pedirá habilitar la API de Cloud DNS.
  2. Selecciona "Crear zona".
  3. Configura la zona DNS:
    • Nombre de la zona: Usa el nombre de tu dominio sin la extensión (ej: para "nombreapellidosistemas.space" usa "nombreapellidosistemas")
    • Nombre del DNS: Ingresa tu dominio completo (ej: "nombreapellidosistemas.space")
    • DNSSEC: Activado
    • Cloud Logging:
  4. Haz clic en "Crear zona".

Editar el registro SOA:

  1. En la zona DNS creada, busca "Datos SOA 1".
  2. Reemplaza "cloud-dns-hostmaster.google.com." con tu correo, cambiando la @ por un punto (ej: "correo.ejemplo.com." en lugar de "correo@ejemplo.com").
  3. Cambia el número "1" por un registro SOA personalizado con formato AAAAMMDDNM (AñoMesDíaNúmeroModificación), ej: 2025062301.
  4. Guarda los cambios.

Configurar los nameservers en tu proveedor de dominio:

  1. En Google Cloud DNS, ve a "Configuración del registrador" y copia los nameservers que aparecen (ej: ns-cloud-d1.googledomains.com).
  2. Accede a tu proveedor de dominio (ej: whois.com), ve a la sección de administración de tu dominio.
  3. Busca la opción "Name servers" o "Nombres de servidor".
  4. Reemplaza los nameservers por defecto con los de Google Cloud, sin el punto final.
  5. Guarda los cambios.

Crear registros A:

  1. En Google Cloud DNS, selecciona "Agregar Estándar".
  2. Para el primer registro:
    • Nombre del DNS: www
    • Dirección IPv4: La IP que asignaste a tu máquina virtual
  3. Haz clic en "Crear".
  4. Para el segundo registro:
    • Nombre del DNS: (dejar vacío)
    • Dirección IPv4: La misma IP de la máquina virtual
  5. Haz clic en "Crear".
Nota: Con esta configuración podrás acceder a tu sitio tanto con "www.tudominio.space" como con "tudominio.space".
Configuración de DNS en Google Cloud

Ejemplo de configuración de registros DNS en Google Cloud

6

Instalar y Configurar Apache

apt install apache2 -y
service apache2 status # Verifica que esté activo

Acceder a Webmin:

  1. En tu navegador, ingresa: http://[TU-IP]:65500 (reemplaza [TU-IP] con la IP de tu servidor).
  2. Si aparece una advertencia de seguridad, selecciona "Avanzado" y "Continuar".
  3. Inicia sesión con:
    • Usuario: root
    • Contraseña: La que estableciste para el superusuario

Configuración inicial en Webmin:

  1. En el menú izquierdo, ve a "Webmin" > "Change Language and Theme" para cambiar el idioma si lo prefieres.
  2. Selecciona "Reajustar Módulos" para actualizarlos y que aparezca Apache.
  3. Verifica que en "Servidores" aparezca "Servidor Web Apache".

Editar la página de inicio de Apache:

  1. Ve a "Herramientas" > "Administrador de archivos".
  2. Navega a: /var/www/html
  3. Edita el archivo index.html, borra todo el contenido y reemplázalo con algo relacionado a tu proyecto.
  4. Guarda y cierra el archivo.

Crear un usuario:

  1. Ve a "Sistema" > "Usuarios y Grupos".
  2. Haz clic en "Crear nuevo usuario".
  3. Configura:
    • Nombre de usuario: Usa el nombre de tu dominio sin la extensión (ej: midominio1)
    • Contraseña: Establece una contraseña segura
    • Grupo primario: Nuevo grupo con el mismo nombre que el usuario
  4. Haz clic en "Crear".

Crear directorio web para el usuario:

  1. En "Herramientas" > "Administrador de archivos", navega a /home/[tuusuario].
  2. Crea un nuevo directorio llamado "web".
  3. Dentro de "web", crea un nuevo archivo index.html con contenido relacionado a tu proyecto.

Configurar Apache para el sitio:

  1. Ve a "Servidores" > "Servidor Web Apache" > "Configuración global".
  2. Selecciona "Editar archivos de configuración".
  3. Busca y selecciona: /etc/apache2/sites-available/000-default.conf.
  4. No edites las primeras 29 líneas. Al final del archivo, añade:
<VirtualHost *:80>
    ServerName tudominio.space
    ServerAlias www.tudominio.space
    ServerAdmin tucorreo@ejemplo.com
    DocumentRoot /home/tuusuario/web
    ErrorLog /home/tuusuario/web/error.log
    CustomLog /home/tuusuario/web/access.log combined
</VirtualHost>
  1. Guarda y cierra el archivo.
  2. Ahora edita /etc/apache2/apache2.conf.
  3. Ve a la línea 174, haz un salto de línea (sin modificar la línea 174) y añade:
<Directory /home/tuusuario/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>
  1. Guarda y cierra el archivo.
  2. Ve a "Servidores" > "Servidor Web Apache" y haz clic en "Aplicar cambios".

Dar permisos al usuario:

  1. Ve a "Herramientas" > "Administrador de archivos" > /home.
  2. Selecciona la carpeta de tu usuario (no entres a ella).
  3. En "Herramientas" > "Cambiar permisos".
  4. Configura:
    • Modo: 0755
    • Aplicar a: Todos (recursivo)
  5. Haz clic en "Cambiar".
7

Instalar Certificado SSL

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache

Durante la instalación del certificado:

  1. Ingresa tu correo electrónico cuando se te solicite.
  2. Acepta los términos de servicio.
  3. Selecciona si deseas compartir tu correo con la EFF (opcional).
  4. Ingresa tu dominio cuando se te solicite (ej: tudominio.space www.tudominio.space).
  5. Selecciona la opción para redireccionar todo el tráfico HTTP a HTTPS (recomendado).
✅ Listo! Tu sitio ahora estará disponible con una conexión segura HTTPS.

🎉 Conclusión

Has configurado exitosamente un servidor Ubuntu en Google Cloud con:

Recomendaciones adicionales:

🛡️ Seguridad

  • Configura autenticación de dos factores en Webmin
  • Actualiza regularmente el sistema
  • Monitorea los logs de acceso

💾 Backups

  • Configura backups automáticos en Google Cloud
  • Realiza copias de seguridad de tus archivos importantes
  • Prueba periódicamente la restauración

📈 Monitoreo

  • Configura alertas de uso de recursos
  • Monitorea el tiempo de actividad
  • Revisa regularmente las estadísticas de tráfico