septiembre 19

Restringir registro de usuarios en phpBB a un dominio de correo

phpBB es uno de los sistemas de foros de código abierto más populares del mundo. Impulsa millones de foros en Internet, desde comunidades pequeñas hasta enormes foros empresariales. Una necesidad común al administrar un foro phpBB es restringir el registro de usuarios a un dominio de correo específico, por ejemplo, solo permitir registros con direcciones de correo de tu empresa. En esta guía te explico cómo hacerlo.

¿Por qué restringir el registro por dominio?

Hay varias razones para limitar los registros a un dominio de correo:

  • Control de acceso — Solo empleados o miembros de una organización pueden registrarse
  • Prevención de spam — Evita registros masivos con correos temporales
  • Identidad verificada — Si alguien tiene un correo de tu dominio, es (probablemente) quien dice ser
  • Cumplimiento — Algunas organizaciones requieren que solo correos corporativos accedan a ciertos recursos

Método 1: Modificación del código de registro

Paso 1: Localizar el archivo

El archivo de registro se encuentra en:

/includes/ucp/ucp_register.php

Paso 2: Añadir la validación de dominio

Busca la sección donde se valida el email (alrededor de la línea 200-250) y añade:

// Restringir a dominio específico
$allowed_domain = 'tudominio.com';
$email_parts = explode('@', $email);
$domain = end($email_parts);

if ($domain !== $allowed_domain) {
    $error[] = 'Solo se permiten registros con correos de ' . $allowed_domain;
}

Paso 3: Verificar

Guarda los cambios e intenta registrarte con un correo de otro dominio. Deberías ver el mensaje de error.

Método 2: Usando una extensión

Si prefieres no modificar el código core, puedes usar una extensión de phpBB:

  1. Ve al ACP (Panel de Administración) → PersonalizacionesExtensiones
  2. Busca «Email Restriction» o «Domain Restriction» en el directorio de extensiones de phpBB
  3. Instala y configura la extensión con tu dominio permitido

Método 3: Validación con expresión regular

Para una validación más robusta, puedes usar una expresión regular que verifique el formato del correo y el dominio:

// Validar formato y dominio
$email = trim($email);
$allowed_domains = array('tudominio.com', 'tudominio.es', 'tudominio.org');

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    $error[] = 'El formato del correo no es válido.';
} else {
    $domain = substr(strrchr($email, "@"), 1);
    if (!in_array($domain, $allowed_domains)) {
        $error[] = 'Solo se permiten correos de: ' . implode(', ', $allowed_domains);
    }
}

Consideraciones adicionales

  • Dominios múltiples: Puedes permitir varios dominios si tu organización usa varios
  • Subdominios: La validación debe incluir subdominios si es necesario (ej: *.tudominio.com)
  • Notificación: Considera mostrar un mensaje claro al usuario sobre la restricción antes de que intente registrarse
  • Usuarios existentes: Esta restricción solo afecta a nuevos registros, no a usuarios ya existentes

Conclusión

Restringir el registro de usuarios en phpBB a un dominio de correo es una medida de seguridad sencilla pero efectiva. Ya sea modificando el código, usando una extensión o implementando validación con expresiones regulares, puedes controlar quién tiene acceso a tu foro con muy poco esfuerzo.

Categoría: Docker, Inteligencia Artificial, Seguridad | Comentarios desactivados en Restringir registro de usuarios en phpBB a un dominio de correo
septiembre 17

Archivos de configuración en Proxmox VE: Guía completa

Proxmox VE es una de las plataformas de virtualización empresarial más populares del mercado. Al estar basada en Debian Linux, toda su configuración se almacena en archivos de texto plano en el sistema de archivos. Conocer dónde están estos archivos y cómo editarlos es esencial para cualquier administrador de Proxmox. En esta guía te muestro las rutas más importantes y los archivos que necesitarás modificar.

Archivos de configuración del nodo

/etc/network/interfaces

La configuración de red del nodo Proxmox. Aquí defines las interfaces de red, bridges, VLANs, IPs estáticas y bonding. Es el archivo más importante para la conectividad del servidor.

Ejemplo básico:

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet manual

auto vmbr0
iface vmbr0 inet static
    address 192.168.1.100/24
    gateway 192.168.1.1
    bridge-ports eno1
    bridge-stp off
    bridge-fd 0

/etc/hostname

El nombre del host del servidor. Debe ser único en la red.

proxmox01

/etc/hosts

Resolución de nombres local. Asegúrate de incluir la IP y nombre del servidor:

127.0.0.1   localhost
192.168.1.100   proxmox01.proxmox.local   proxmox01

Configuración de almacenamiento

/etc/pve/storage.cfg

Define todos los almacenes de datos: locales, NFS, Ceph, iSCSI, ZFS, etc. Cada línea define un almacén con su tipo, contenido y parámetros.

dir: local
    path /var/lib/vz
    content iso,vztmpl,backup

lvmthin: local-lvm
    thinpool data
    vgname pve
    content images,rootdir

nfs: nas-backup
    path /mnt/nfs/backup
    server 192.168.1.50
    export /volume1/backup
    content backup
    options vers=3

Configuración de máquinas virtuales

Cada VM tiene su propio archivo de configuración en:

/etc/pve/qemu-server/<VMID>.conf

Por ejemplo, la VM con ID 100:

/etc/pve/qemu-server/100.conf

Contenido típico:

boot: order=virtio0;ide2;net0
cores: 4
memory: 8192
ostype: l26
scsi0: local-lvm:vm-100-disk-0,size=100G
net0: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr0

Nota: No edites estos archivos manualmente mientras la VM esté en ejecución. Usa la interfaz web o los comandos qm set.

Configuración de contenedores LXC

Los contenedores usan configuración en:

/etc/pve/lxc/<CTID>.conf

Ejemplo:

arch: amd64
cores: 2
hostname: webserver
memory: 2048
ostemplate:vztmpl/ubuntu-22.04-standard_22.04-1_amd64.tar.zst
rootfs: local-lvm:vm-101-disk-0,size=20G
swap: 512
net0: name=eth0,bridge=vmbr0,ip=192.168.1.101/24,gw=192.168.1.1

Configuración del clúster

Si usas un clúster Proxmox, la configuración se gestiona con Corosync:

  • /etc/pve/corosync.conf — Configuración del clúster Corosync
  • /etc/pve/priv/authorized_keys — Claves SSH compartidas entre nodos
  • /etc/pve/priv/known_hosts — Hosts conocidos del clúster

Configuración de backup

Los trabajos de backup se configuran en:

/etc/pve/jobs.cfg

Logs importantes

  • /var/log/syslog — Log general del sistema
  • /var/log/pve/tasks/ — Logs de tareas de Proxmox
  • /var/log/qemu-server/<VMID>.log — Log de cada VM

Conclusión

Conocer la estructura de archivos de configuración de Proxmox te permite administrar el servidor de forma más eficiente, automatizar tareas con scripts y resolver problemas más rápidamente. Recuerda siempre hacer backup antes de modificar archivos de configuración y usar la interfaz web o los comandos de la API cuando sea posible.

Categoría: Inteligencia Artificial, Linux, Proxmox VE, Redes | Comentarios desactivados en Archivos de configuración en Proxmox VE: Guía completa