Un gestor interactivo para crear y configurar zonas DNS directas e inversas en BIND9. Ideal para administradores de sistemas, estudiantes y entornos educativos.
- Interfaz gráfica interactiva - Menú basado en
whiptailfácil de usar - Crear zonas DNS directas - Configure rápidamente zonas con registros A, NS, CNAME y SOA
- Crear zonas DNS inversas - Genere automáticamente registros PTR para resolución inversa
- Configuración automática - Establece
named.conf.local,named.conf.optionsy forwarders - Validación de sintaxis - Verifica la integridad de la configuración con
named-checkzone - Soporte multi-servidor - Configure hasta 2 servidores de nombres (NS1 y NS2)
- Gestión de equipos - Añada hasta 2 PCs con registros A automáticos
- Instalación automática - Instala BIND9 si no está disponible (Debian/Ubuntu/Fedora/CentOS)
- Reinicio automático - Reinicia BIND9 después de cambios
- Sistema Linux (Debian, Ubuntu, Fedora, CentOS, RHEL)
- Acceso
sudo whiptailinstalado (generalmente incluido)- Conexión a internet (para instalar BIND9)
# Clonar el repositorio
git clone https://github.com/tu-usuario/zonecraft.git
cd zonecraft
# Hacer el script ejecutable
chmod +x zonecraft.sh
# Ejecutar con privilegios de administrador
sudo ./zonecraft.shEl script presenta un menú interactivo con las siguientes opciones:
GESTOR DNS BIND9
1. Comprobar/Instalar BIND9 - Verifica si BIND9 está instalado, sino lo instala
2. Crear Zona Directa - Crea un archivo de zona con registros A, NS, CNAME y SOA
3. Crear Zona Inversa - Genera registros PTR para resolución inversa
4. Configurar named.conf.options - Establece forwarders y opciones globales
5. Configurar named.conf.local - Declara las zonas en la configuración de BIND9
6. Comprobar sintaxis - Valida la configuración con named-checkzone y named-checkconf
7. Reiniciar BIND9 - Reinicia el servicio para aplicar cambios
8. Volver al menú principal
- Instalar BIND9 (opción 1)
- Crear una zona directa (opción 2) - Ingresa datos como:
- Nombre de zona:
empresa.local - NS1 e IP del servidor
- Nombre del alias CNAME (ej:
www) - Equipos a registrar
- Nombre de zona:
- Crear zona inversa (opción 3)
- Configurar named.conf.options (opción 4)
- Configurar named.conf.local (opción 5)
- Verificar sintaxis (opción 6)
- Reiniciar BIND9 (opción 7)
$ sudo ./zonecraft.sh
# Menú interactivo aparecerá. Selecciona:
# 1. Instalar BIND9
# 2. Crear Zona Directa
# - Zona: empresa.local
# - NS1 nombre: ns1
# - NS1 IP: 192.168.1.1
# - Alias CNAME: www
# - PC1 nombre: pc1
# - PC1 IP: 192.168.1.10
# (continúa según necesidades)El script crea los siguientes archivos en /etc/bind/:
db.empresa.local- Zona directadb.1.168.192- Zona inversa (ejemplo)- Modifica
named.conf.local- Declaración de zonas - Modifica
named.conf.options- Configuración global
| Sistema | Estado |
|---|---|
| Debian / Ubuntu | ✅ Soportado |
| Fedora / CentOS | ✅ Soportado |
| RHEL | ✅ Soportado |
| macOS | ❌ No probado |
| Windows (WSL) | ✅ Debería funcionar |
Significa que BIND9 ya está en el sistema. Continúa con la opción 2 (Crear Zona Directa).
Las zonas ya fueron declaradas. Verifica /etc/bind/named.conf.local para evitar duplicados.
Asegúrate de ejecutarlo con sudo:
sudo ./zonecraft.shUsa la opción 6 "Comprobar sintaxis" para validar la configuración antes de reiniciar.
Este proyecto está bajo licencia MIT. Ver archivo LICENSE para más detalles.
Las contribuciones son bienvenidas. Por favor:
- Haz un fork del repositorio
- Crea una rama para tu feature (
git checkout -b feature/nueva-funcionalidad) - Commit tus cambios (
git commit -am 'Añade nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Abre un Pull Request
Creado con ❤️ para administradores de DNS y estudiantes de networking.
Si encuentras problemas o tienes sugerencias, abre un Issue.
Versión: 1.0.0
Última actualización: 2026-09-02