sábado, 9 de mayo de 2020

Maquina Virtual 01: CentOs con Acceso SSH desde VirtualBox.



OBJETIVOS.
- ESTABLECER UN SISTEMA DE NOMBRES.

REQUISITOS.
PROGRAMAS (CAPA 3):
- MAQUINAS VIRTUALES.
- DIRECCIÓN IP ESTÁTICA CON SALIDA WAN.
- SISTEMAS OPERATIVOS CENTOS.
- RED LAN DISTRIBUIDA A TRAVÉS DE VLSM.

RECURSOS.

EQUIPOS (CAPA 1):
- MAQUINAS VIRTUALES.
- SERVIDORES.
- EQUIPO AUXILIAR DE CONFIGURACIÓN Y ADMINISTRACIÓN.

ARQUITECTURA DE COMPUTADORES (CAPA 1):
- CABLES DE ALIMENTACIÓN.
- DISCO DUROS                 : SATA, iSCSI, FDATA, FC, SSD.
- SISTEMAS OPERATIVOS: GNU CON KERNEL LINUX.
- DISTRO                             : CENTOS.
VERSIÓN                          : 7.
- TARJETA DE RED            : FAST ETHERNET, GIGA ETHERNET .
- CABLEADO DE RED        : UTP CAT 6, BACKCONE DE FIBRA ÓPTICA.

TIPO DE SOPORTE (CAPA 7):
- EN LINEA.
- EN SITIO.
ASESORÍA FÍSICA.
- REMOTO.

CÓDIGOS DE PLANTILLA.

FECHA DE CREACIÓN.
- 02/05/2020.

HORA DE CREACIÓN.
- 22:43 HH.

GLOSARIO DE TÉRMINOS.
- BIND: DOMINIO DE NOMBRES EN INTERNET PROGRAMADO EN LA UNIVERSIDAD BERKELEY.
- DNS : SISTEMA DE NOMBRES DE DOMINIO.

COMPATIBILIDAD DE ROLES.
- DHCP.

PARAMETROS DE LA TEMPLATE VIRTUAL.
DIRECCIÓN IP              : 192.168.1.51
- PREFIJO DE RED         : /24
- PUERTA DE ENLACE   : 192.168.1.1
- PUERTO DE ESCUCHA: 53 A TRAVÉS DE UDP.

CREDENCIALES DE LA TEMPLATE VIRTUAL.
- USUARIO: root
- CLAVE    : Oscar567 

AUTOR DE LA TEMPLATE VIRTUAL.
COMPAÑÍA : REDES EN SERVIDORES (REDESNS).
- INGENIERO: OSCAR ANDRES MACIAS NARVAEZ.
- WHATSAPP: +57 (315) 685 2745.
PAÍS            : COLOMBIA.

ESTRUCTURA DE COMANDOS POR LOTES (CÓDIGO FUENTE)
cp -a /etc/sysconfig/network-scripts/ifcfg-enp0s3 /etc/sysconfig/network-scripts/ifcfg-enp0s3.old
rm -rf /etc/sysconfig/network-scripts/ifcfg-enp0s3

echo TYPE=Ethernet >/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo PROXY_METHOD=none >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo BROWSER_ONLY=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo BOOTPROTO=static >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo DEFROUTE=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPV4_FAILURE_FATAL=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPADDR=192.168.1.51 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo PREFIX=24 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo GATEWAY=192.168.1.1 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo DNS1=192.168.1.51 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPV6INIT=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_AUTOCONF=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_DEFROUTE=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_FAILURE_FATAL=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_ADDR_GEN_MODE=stable-privacy >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo NAME=LAN2 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo UUID=b3a0ded8-131c-516f-93a3-5151d7b3fae1 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo DEVICE=enp0s3 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo ONBOOT=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3

echo search localdomain redesns.com.co >>/etc/resolv.conf
echo nameserver 192.168.1.51 >>/etc/resolv.conf
echo nameserver 8.8.8.8 >>/etc/resolv.conf

yum install bind bind-utils -y 

cp -a /etc/named.conf /etc/named.conf.old 
rm -rf named.conf

# SE DEBE ESTABLECER UN HOSTNAME AL SERVIDOR LOCAL.
hostname svr

echo options \{ >/etc/named.conf
# SE DEBEN ELIMINAR LOS ESPACIOS TABULADOS.
# LOS ESPACIOS SE DEBEN CREAR MANUALMENTE.
# SE DEBE HACER USO DE UN ESCAPE DE CODIGO "\" PARA LOS CARACTERES "{", ";", "}" QUE REQUIERE EL ARCHIVO POR LOTES DE LA SHELL BOURNE. 
echo    listen-on port 53 \{ 192.168.1.51/24\; \}\; >>/etc/named.conf
echo    listen-on-v6 port 53 \{ ::1\; \}\; >>/etc/named.conf

# SE DEBE HACER USO DE UN ESCAPE DE CODIGO "\" PARA LOS CARACTERES """ QUE REQUIERE EL ARCHIVO POR LOTES DE LA SHELL BOURNE. 
echo    directory       \"/var/named\"\; >>/etc/named.conf
echo    dump-file       \"/var/named/data/cache_dump.db\"\; >>/etc/named.conf
echo    statistics-file \"/var/named/data/named_stats.txt\"\; >>/etc/named.conf
echo    memstatistics-file \"/var/named/data/named_mem_stats.txt\"\; >>/etc/named.conf
echo    recursing-file  \"/var/named/data/named.recursing\"\; >>/etc/named.conf
echo    secroots-file   \"/var/named/data/named.secroots\"\; >>/etc/named.conf
echo    forward first\; >>/etc/named.conf
echo    forwarders \{ 8.8.8.8\; \}\; >>/etc/named.conf
echo    allow-query     \{ any\; \}\; >>/etc/named.conf
echo    recursion yes\; >>/etc/named.conf
echo    dnssec-enable yes\; >>/etc/named.conf
echo    dnssec-validation yes\; >>/etc/named.conf
echo    bindkeys-file \"/etc/named.root.key\"\; >>/etc/named.conf
echo    managed-keys-directory \"/var/named/dynamic\"\; >>/etc/named.conf
echo    pid-file \"/run/named/named.pid\"\; >>/etc/named.conf
echo    session-keyfile \"/run/named/session.key\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo logging \{ >>/etc/named.conf
echo    channel default_debug \{ >>/etc/named.conf
echo    file \"data/named.run\"\; >>/etc/named.conf
echo    severity dynamic\; >>/etc/named.conf
echo    \}\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo zone \"redesns.com.co\" IN \{ >>/etc/named.conf
echo    type master\; >>/etc/named.conf
echo    file \"directa\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo zone \"1.168.192.in-addr.arpa\" IN \{ >>/etc/named.conf
echo    type master\; >>/etc/named.conf
echo    file \"inversa\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf

# SE DEBE COPIAR BAJO RUTA ABSOLUTA PARA HEREDAR LOS PRIVILEGIOS ACTUALES DEL ARCHIVO DE REFERNCIA EN EL PROCESO DE DUPLICACION DE CONTENIDO.
cp -a /var/named/named.empty /var/named/directa
cp -a /var/named/named.empty /var/named/inversa

# PARA MODIFICAR EL ARCHIVO DE CONFIGURACIÓN DE FORMA PERMANENTE, SE DEBE REALIZAR LA SENTENCIA CON LA OPCIÓN "-i".
# PARA ELIMINAR EL NUMERO DE LA LINEA SE DEBE REALIZAR LA SENTENCIA ENTRE COMILLAS SIMPLES "'".
# PARA ELIMINAR LA ULTIMA FILA DEL DOCUMENTO SE DEBE REMPLAZAR EL NUMERO DE LA LINEA CON EL CARACTER DEL SIGNO PESOS "$".
sed -i '7d; $d' /var/named/directa indirecta

echo            NS      svr.redesns.com.co. >>/var/named/directa

# LA DIRECCION IP LOCAL ESTATICA DEL SERVIDOR NO DEBE FINALIZAR EL REGISTRO TIPO A CON UN PUNTO "."
echo svr        A       192.168.1.51 >>/var/named/directa
echo www        CNAME   svr >>/var/named/directa
echo web        CNAME   svr >>/var/named/directa
echo ftp        CNAME   svr >>/var/named/directa

# EL FQDN DEL SERVIDOR DEBE FINALIZAR EL REGISTRO TIPO NS CON UN PUNTO ".".
# SE DEBE ENVIAR UN ESPACIO ENTRE COMILLAS """ PARA LOGRAR TOMAR EL REGISTRO DESDE LA PETICION DE NOMBRE DE SERVICIO CON EL FQDN EN RESPUESTA DE LA ZONA INVERSA.
echo ""         NS      svr.redesns.com.co. >>/var/named/inversa

# PARA RESOLVER EL NOMBRE A TRAVES DE LA ZONA INVERSA SE DEBE ESTABLECER EL ULTIMO OCTETO DE LA DIRECCION IP ACTUAL DEL SERVIDOR DNS.
echo 51         PTR     svr.redesns.com.co. >>/var/named/inversa
echo 51         PTR     www.redesns.com.co. >>/var/named/inversa
echo 51         PTR     web.redesns.com.co. >>/var/named/inversa
echo 51         PTR     ftp.redesns.com.co. >>/var/named/inversa

echo 192.168.1.51 svr svr.redesns.com.co >/etc/host

systemctl -f enable named
systemctl start named

# AGREGAR EXCEPCIÓN DEL SERVICIO DNS DENTRO DEL FIREWALL.
firewall-cmd --zone=public --add-port=53/tcp --permanent
firewall-cmd --reload

CONFIGURACIÓN.

CREACIÓN DE LA PLANTILLA:
INGRESAR DESDE NUEVA TERMINAL PARA DIGITAR LOS SIGUIENTES  COMANDOS.
- TAMBIÉN PUEDES COPIAR LAS LINEAS Y EJECUTARLAS AL PEGAR EN LA  CONSOLA DEL CLIENTE SSH.
- PUEDES GUARDAR ESTA PLANTILLA EN UN BLOCK DE NOTAS PARA  AUTOMATIZAR FUTURAS CONFIGURACIONES, SUBIRLO CON UN SERVIDOR FTP, TRANSFERIRLO CON SCP, OTORGARLE PERMISOS DE EJECUCIÓN PARA CON EL ARCHIVO.
- LOS COMANDOS  TAMBIÉN SE PUEDEN SENTENCIAR EN MODO  ABREVIADO TENIENDO EN CUENTA LOS PREFIJOS EN CADA COMANDO.
- EJECUTAR LOS COMANDOS COMO SUPERUSUARIO.

DESCRIPCIÓN DE LA PLANTILLA:


@: 
EVITA UN SALTO EN TIEMPO DENTRO DE LA EJECUCIÓN DE LA SENTENCIA SOBRE EL CÓDIGO ACTUAL.
ECHO: 
IMPRIME EN LA SALIDA DE PANTALLA.

PARÁMETROS  ECHO:

OFF: 
APAGA LA SALIDA INTERNA DEL PROMPT DONDE SE ENCUENTRA ACTUALMENTE EJECUTANDO LA SENTENCIA.

SE USA POR ESTÉTICA, SE VUELVE A ENCENDER SOLO PARA DETERMINAR ERRORES EN EL CÓDIGO SEGÚN NIVEL O MODO DE NAVEGACIÓN DE DIRECTORIO PARA CON EL USUARIO.

&: 
CARÁCTER ESPECIAL COMODÍN QUE EJECUTA EN SIMULTANEO CÓDIGO CONCATENADO A LA SENTENCIA.

IDEAL PARA UNIR DOS SENTENCIAS RÁPIDAS, SIN COMPLICACIONES EN LATENCIAS, PRIORIDAD, ORDEN DE EJECUCIÓN.

TITLE: 
IMPRIME SOBRE LA BARRA DE TITULO LA CADENA DE CARACTERES ESPECIFICADA.

SE USA POR ESTÉTICA PARA PERSONALIZAR VENTANAS, INDICAR EL PASO ACTUAL DE PROCEDIMIENTO EN UN ARCHIVO POR LOTES.

COLOR: 
DETERMINA EL COLOR PERSONALIZADO TANTO DE LA FUENTE DE LA LETRA COMO EL FONDO DE LA CONSOLA EN LA TERMINAL.

SE USA POR ESTÉTICA PARA PERSONALIZAR TERMINALES, INDICAR EL PASO ACTUAL DE PROCEDIMIENTO EN UN ARCHIVO POR LOTES.

REM: 
IGNORA CADENA ESPECIFICADA. SE RECOMIENDA INVOCAR EL COMANDO LLAMÁNDOLO CON LETRAS MAYÚSCULAS, PAR IDENTIFICAR UN COMENTARIO DENTRO DEL CÓDIGO DE MANERA PRACTICA ANTE EDITORES DE TEXTO PLANO SIMPLES, QUE NO USEN COLORES PARA PALABRAS RESERVADAS DEL LENGUAJE DE PROGRAMACIÓN UTILIZADO, TIPO DE ARCHIVO SEGÚN EXTENSIÓN LÓGICA DE INTERPRETACIÓN EN INFORMÁTICA.

SE USA POR CALIDAD PARA COMENTAR EN LENGUAJE HUMANO LA ACCIÓN A EJECUTAR DEL SIGUIENTE PROCEDIMIENTO A EJECUTAR, NOTAS DEL DESARROLLADOR CON IMPORTANCIA, CURIOSIDADES.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN ESTABLECER COMENTARIOS. CON ELLO UN TERCERO IDENTIFICAR LA MAGNITUD DEL CÓDIGOPODRÁ ACTUALIZAR EL MISMO.

CALL: 
LLAMA A UNA FUNCIÓN, ETIQUETA DECLARADA SOBRE EL CÓDIGO EN EL ARCHIVO LOCAL U OTRO GLOBAL.

SE USA POR CALIDAD PARA LLAMAR FUNCIONES DECLARADAS EN EL PASO SOLICITADO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN. CON ELLO SE EVITAR REPETIR CÓDIGO, EVITANDO VOLVER EL MISMO O LLENARLO DE CÓDIGO BASURA, MEJORAR EL TIEMPO DE RESPUESTA DEL ARCHIVO AL HACER POCO USO DE LECTURA SOBRE EL DISCO DURO POR PARTE DEL INTERPRETE BATCH SOBRE LA HERRAMIENTA CMD. CON LO ANTERIOR EVITAR EL DESPERDICIO DE RECURSOS DE MEMORIA Y PROCESAMIENTO. EL CÓDIGO SERIA MAS LIVIANO EN CUANTO A PESO DE ALMACENAMIENTO.

:
INDICA QUE SE INCLUIRÁ, INVOCARA, LLAMARA UNA ETIQUETA, FUNCIÓN DENTRO DEL CÓDIGO. LA CUAL PRECEDE EL CARÁCTER PARA SER ACTIVADA EN EL ALGORITMO SEGÚN LA DETERMINACIÓN DEL CÓDIGO DENTRO DEL ARCHIVO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN NOMBRAR LAS ETIQUETAS, FUNCIONES EN MAYÚSCULAS. CON ELLO SE PODRÁ IDENTIFICAR FÁCILMENTE DENTRO DEL CÓDIGO DADO EL CASO AL REQUERIR ACTUALIZACIONES SOBRE EL ARCHIVO SEGÚN VARIACIÓN O FUNCIÓN.

SET:
ESTABLECE VARIABLES LOCALES DENTRO DEL CÓDIGO. CON EL FIN DE SER USADAS EN UN FUTURO O COMO REFERENCIA DE OTRO CÓDIGO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN CREAR VARIABLES PARA GENERAR OPCIONES  DE RESPUESTAS ANTE CASOS VOLÁTILESQUE REQUIERAN CAMBIOS DE VALORES. CON ELLO SE PODRÁ ADMINISTRAR, ACTUALIZAR UN VALOR SIN NECESIDAD DE REALIZAR BÚSQUEDAS EXTENSAS PARA CONSEGUIR EL CAMBIO SOLICITADO DENTRO DE TODO EL CÓDIGO.

- PARAMETROS SET:

=: 
OPERADOR LÓGICO QUE HACE EL EQUIVALENTE DE CONDICIÓN ANTE LA VARIABLE CUANDO SEA INVOCADA.


CLS:
LIMPIA EL CONTENIDO EN PANTALLA IMPRESO DE RESULTADOS, CONSULTAS, BÚSQUEDAS Y SENTENCIAS ANTERIORES.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN LIMPIAR PANTALLA PARA AHORRAR CONTENIDO PASADO O BASURA DENTRO DEL CÓDIGO.
REQUISITOS

MEMORIA RAM:              SEGÚN SOFTWARE NECESITADO.
ARQUITECTURA CPU:   SEGÚN SOFTWARE NECESITADO.
SISTEMA OPERATIVO:  WINDOWS XP, 7, 8, 8.1, 10.
ALMACENAMIENTO  :   TAMAÑO REQUERIDO PARA EL ARCHIVO SCRIPT.

TARIFA MÍNIMA.
$ 80 MIL PESOS COLOMBIANOS.

TIEMPO DE SOPORTE.
8 HORAS (1 DÍA).

DONACIONES Y AGRADECIMIENTOS.

viernes, 8 de mayo de 2020

Script.sh 01: Instalacion del rol BIND en CentOS 7.





OBJETIVOS.
- ESTABLECER UN SISTEMA DE NOMBRES.

REQUISITOS.
PROGRAMAS (CAPA 3):
- MAQUINAS VIRTUALES.
- DIRECCIÓN IP ESTÁTICA CON SALIDA WAN.
- SISTEMAS OPERATIVOS CENTOS.
- RED LAN DISTRIBUIDA A TRAVÉS DE VLSM.

RECURSOS.

EQUIPOS (CAPA 1):
- MAQUINAS VIRTUALES.
- SERVIDORES.
- EQUIPO AUXILIAR DE CONFIGURACIÓN Y ADMINISTRACIÓN.

ARQUITECTURA DE COMPUTADORES (CAPA 1):
- CABLES DE ALIMENTACIÓN.
- DISCO DUROS                 : SATA, iSCSI, FDATA, FC, SSD.
- SISTEMAS OPERATIVOS: GNU CON KERNEL LINUX.
- DISTRO                             : CENTOS.
- VERSIÓN                          : 7.
- TARJETA DE RED            : FAST ETHERNET, GIGA ETHERNET .
- CABLEADO DE RED        : UTP CAT 6, BACKCONE DE FIBRA ÓPTICA.

TIPO DE SOPORTE (CAPA 7):
- EN LINEA.
- EN SITIO.
ASESORÍA FÍSICA.
- REMOTO.

CÓDIGOS DE PLANTILLA.

FECHA DE CREACIÓN.
- 02/05/2020.

HORA DE CREACIÓN.
- 22:43 HH.

GLOSARIO DE TÉRMINOS.
- BIND: DOMINIO DE NOMBRES EN INTERNET PROGRAMADO EN LA UNIVERSIDAD BERKELEY.
- DNS : SISTEMA DE NOMBRES DE DOMINIO.

COMPATIBILIDAD DE ROLES.
- DHCP.

PARAMETROS DE LA TEMPLATE VIRTUAL.
- DIRECCIÓN IP              : 192.168.1.51
- PREFIJO DE RED         : /24
- PUERTA DE ENLACE   : 192.168.1.1
- PUERTO DE ESCUCHA: 53 A TRAVÉS DE UDP.

CREDENCIALES DE LA TEMPLATE VIRTUAL.
- USUARIO: root
- CLAVE    : Oscar567 

AUTOR DE LA TEMPLATE VIRTUAL.
- COMPAÑÍA : REDES EN SERVIDORES (REDESNS).
- INGENIERO: OSCAR ANDRES MACIAS NARVAEZ.
- WHATSAPP: +57 (315) 685 2745.
- PAÍS            : COLOMBIA.

ESTRUCTURA DE COMANDOS POR LOTES (CÓDIGO FUENTE)
cp -a /etc/sysconfig/network-scripts/ifcfg-enp0s3 /etc/sysconfig/network-scripts/ifcfg-enp0s3.old
rm -rf /etc/sysconfig/network-scripts/ifcfg-enp0s3

echo TYPE=Ethernet >/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo PROXY_METHOD=none >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo BROWSER_ONLY=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo BOOTPROTO=static >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo DEFROUTE=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPV4_FAILURE_FATAL=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPADDR=192.168.1.51 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo PREFIX=24 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo GATEWAY=192.168.1.1 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo DNS1=192.168.1.51 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPV6INIT=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_AUTOCONF=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_DEFROUTE=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_FAILURE_FATAL=no >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo IPV6_ADDR_GEN_MODE=stable-privacy >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo NAME=LAN2 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo UUID=b3a0ded8-131c-516f-93a3-5151d7b3fae1 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3 
echo DEVICE=enp0s3 >>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo ONBOOT=yes >>/etc/sysconfig/network-scripts/ifcfg-enp0s3

echo search localdomain redesns.com.co >>/etc/resolv.conf
echo nameserver 192.168.1.51 >>/etc/resolv.conf
echo nameserver 8.8.8.8 >>/etc/resolv.conf

yum install bind bind-utils -y 

cp -a /etc/named.conf /etc/named.conf.old 
rm -rf named.conf

# SE DEBE ESTABLECER UN HOSTNAME AL SERVIDOR LOCAL.
hostname svr

echo options \{ >/etc/named.conf
# SE DEBEN ELIMINAR LOS ESPACIOS TABULADOS.
# LOS ESPACIOS SE DEBEN CREAR MANUALMENTE.
# SE DEBE HACER USO DE UN ESCAPE DE CODIGO "\" PARA LOS CARACTERES "{", ";", "}" QUE REQUIERE EL ARCHIVO POR LOTES DE LA SHELL BOURNE. 
echo    listen-on port 53 \{ 192.168.1.51/24\; \}\; >>/etc/named.conf
echo    listen-on-v6 port 53 \{ ::1\; \}\; >>/etc/named.conf

# SE DEBE HACER USO DE UN ESCAPE DE CODIGO "\" PARA LOS CARACTERES """ QUE REQUIERE EL ARCHIVO POR LOTES DE LA SHELL BOURNE. 
echo    directory       \"/var/named\"\; >>/etc/named.conf
echo    dump-file       \"/var/named/data/cache_dump.db\"\; >>/etc/named.conf
echo    statistics-file \"/var/named/data/named_stats.txt\"\; >>/etc/named.conf
echo    memstatistics-file \"/var/named/data/named_mem_stats.txt\"\; >>/etc/named.conf
echo    recursing-file  \"/var/named/data/named.recursing\"\; >>/etc/named.conf
echo    secroots-file   \"/var/named/data/named.secroots\"\; >>/etc/named.conf
echo    forward first\; >>/etc/named.conf
echo    forwarders \{ 8.8.8.8\; \}\; >>/etc/named.conf
echo    allow-query     \{ any\; \}\; >>/etc/named.conf
echo    recursion yes\; >>/etc/named.conf
echo    dnssec-enable yes\; >>/etc/named.conf
echo    dnssec-validation yes\; >>/etc/named.conf
echo    bindkeys-file \"/etc/named.root.key\"\; >>/etc/named.conf
echo    managed-keys-directory \"/var/named/dynamic\"\; >>/etc/named.conf
echo    pid-file \"/run/named/named.pid\"\; >>/etc/named.conf
echo    session-keyfile \"/run/named/session.key\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo logging \{ >>/etc/named.conf
echo    channel default_debug \{ >>/etc/named.conf
echo    file \"data/named.run\"\; >>/etc/named.conf
echo    severity dynamic\; >>/etc/named.conf
echo    \}\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo zone \"redesns.com.co\" IN \{ >>/etc/named.conf
echo    type master\; >>/etc/named.conf
echo    file \"directa\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf
echo zone \"1.168.192.in-addr.arpa\" IN \{ >>/etc/named.conf
echo    type master\; >>/etc/named.conf
echo    file \"inversa\"\; >>/etc/named.conf
echo \}\; >>/etc/named.conf

# SE DEBE COPIAR BAJO RUTA ABSOLUTA PARA HEREDAR LOS PRIVILEGIOS ACTUALES DEL ARCHIVO DE REFERNCIA EN EL PROCESO DE DUPLICACION DE CONTENIDO.
cp -a /var/named/named.empty /var/named/directa
cp -a /var/named/named.empty /var/named/inversa

# PARA MODIFICAR EL ARCHIVO DE CONFIGURACIÓN DE FORMA PERMANENTE, SE DEBE REALIZAR LA SENTENCIA CON LA OPCIÓN "-i".
# PARA ELIMINAR EL NUMERO DE LA LINEA SE DEBE REALIZAR LA SENTENCIA ENTRE COMILLAS SIMPLES "'".
# PARA ELIMINAR LA ULTIMA FILA DEL DOCUMENTO SE DEBE REMPLAZAR EL NUMERO DE LA LINEA CON EL CARACTER DEL SIGNO PESOS "$".
sed -i '7d; $d' /var/named/directa indirecta

echo            NS      svr.redesns.com.co. >>/var/named/directa

# LA DIRECCION IP LOCAL ESTATICA DEL SERVIDOR NO DEBE FINALIZAR EL REGISTRO TIPO A CON UN PUNTO "."
echo svr        A       192.168.1.51 >>/var/named/directa
echo www        CNAME   svr >>/var/named/directa
echo web        CNAME   svr >>/var/named/directa
echo ftp        CNAME   svr >>/var/named/directa

# EL FQDN DEL SERVIDOR DEBE FINALIZAR EL REGISTRO TIPO NS CON UN PUNTO ".".
# SE DEBE ENVIAR UN ESPACIO ENTRE COMILLAS """ PARA LOGRAR TOMAR EL REGISTRO DESDE LA PETICION DE NOMBRE DE SERVICIO CON EL FQDN EN RESPUESTA DE LA ZONA INVERSA.
echo ""         NS      svr.redesns.com.co. >>/var/named/inversa

# PARA RESOLVER EL NOMBRE A TRAVES DE LA ZONA INVERSA SE DEBE ESTABLECER EL ULTIMO OCTETO DE LA DIRECCION IP ACTUAL DEL SERVIDOR DNS.
echo 51         PTR     svr.redesns.com.co. >>/var/named/inversa
echo 51         PTR     www.redesns.com.co. >>/var/named/inversa
echo 51         PTR     web.redesns.com.co. >>/var/named/inversa
echo 51         PTR     ftp.redesns.com.co. >>/var/named/inversa

echo 192.168.1.51 svr svr.redesns.com.co >/etc/host

systemctl -f enable named
systemctl start named

# AGREGAR EXCEPCIÓN DEL SERVICIO DNS DENTRO DEL FIREWALL.
firewall-cmd --zone=public --add-port=53/tcp --permanent
firewall-cmd --reload

CONFIGURACIÓN.

CREACIÓN DE LA PLANTILLA:
INGRESAR DESDE NUEVA TERMINAL PARA DIGITAR LOS SIGUIENTES  COMANDOS.
- TAMBIÉN PUEDES COPIAR LAS LINEAS Y EJECUTARLAS AL PEGAR EN LA  CONSOLA DEL CLIENTE SSH.
- PUEDES GUARDAR ESTA PLANTILLA EN UN BLOCK DE NOTAS PARA  AUTOMATIZAR FUTURAS CONFIGURACIONES, SUBIRLO CON UN SERVIDOR FTP, TRANSFERIRLO CON SCP, OTORGARLE PERMISOS DE EJECUCIÓN PARA CON EL ARCHIVO.
- LOS COMANDOS  TAMBIÉN SE PUEDEN SENTENCIAR EN MODO  ABREVIADO TENIENDO EN CUENTA LOS PREFIJOS EN CADA COMANDO.
- EJECUTAR LOS COMANDOS COMO SUPERUSUARIO.

DESCRIPCIÓN DE LA PLANTILLA:


@: 
EVITA UN SALTO EN TIEMPO DENTRO DE LA EJECUCIÓN DE LA SENTENCIA SOBRE EL CÓDIGO ACTUAL.
ECHO: 
IMPRIME EN LA SALIDA DE PANTALLA.

PARÁMETROS  ECHO:

OFF: 
APAGA LA SALIDA INTERNA DEL PROMPT DONDE SE ENCUENTRA ACTUALMENTE EJECUTANDO LA SENTENCIA.

SE USA POR ESTÉTICA, SE VUELVE A ENCENDER SOLO PARA DETERMINAR ERRORES EN EL CÓDIGO SEGÚN NIVEL O MODO DE NAVEGACIÓN DE DIRECTORIO PARA CON EL USUARIO.

&: 
CARÁCTER ESPECIAL COMODÍN QUE EJECUTA EN SIMULTANEO CÓDIGO CONCATENADO A LA SENTENCIA.

IDEAL PARA UNIR DOS SENTENCIAS RÁPIDAS, SIN COMPLICACIONES EN LATENCIAS, PRIORIDAD, ORDEN DE EJECUCIÓN.

TITLE: 
IMPRIME SOBRE LA BARRA DE TITULO LA CADENA DE CARACTERES ESPECIFICADA.

SE USA POR ESTÉTICA PARA PERSONALIZAR VENTANAS, INDICAR EL PASO ACTUAL DE PROCEDIMIENTO EN UN ARCHIVO POR LOTES.

COLOR: 
DETERMINA EL COLOR PERSONALIZADO TANTO DE LA FUENTE DE LA LETRA COMO EL FONDO DE LA CONSOLA EN LA TERMINAL.

SE USA POR ESTÉTICA PARA PERSONALIZAR TERMINALES, INDICAR EL PASO ACTUAL DE PROCEDIMIENTO EN UN ARCHIVO POR LOTES.

REM: 
IGNORA CADENA ESPECIFICADA. SE RECOMIENDA INVOCAR EL COMANDO LLAMÁNDOLO CON LETRAS MAYÚSCULAS, PAR IDENTIFICAR UN COMENTARIO DENTRO DEL CÓDIGO DE MANERA PRACTICA ANTE EDITORES DE TEXTO PLANO SIMPLES, QUE NO USEN COLORES PARA PALABRAS RESERVADAS DEL LENGUAJE DE PROGRAMACIÓN UTILIZADO, TIPO DE ARCHIVO SEGÚN EXTENSIÓN LÓGICA DE INTERPRETACIÓN EN INFORMÁTICA.

SE USA POR CALIDAD PARA COMENTAR EN LENGUAJE HUMANO LA ACCIÓN A EJECUTAR DEL SIGUIENTE PROCEDIMIENTO A EJECUTAR, NOTAS DEL DESARROLLADOR CON IMPORTANCIA, CURIOSIDADES.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN ESTABLECER COMENTARIOS. CON ELLO UN TERCERO IDENTIFICAR LA MAGNITUD DEL CÓDIGOPODRÁ ACTUALIZAR EL MISMO.

CALL: 
LLAMA A UNA FUNCIÓN, ETIQUETA DECLARADA SOBRE EL CÓDIGO EN EL ARCHIVO LOCAL U OTRO GLOBAL.

SE USA POR CALIDAD PARA LLAMAR FUNCIONES DECLARADAS EN EL PASO SOLICITADO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN. CON ELLO SE EVITAR REPETIR CÓDIGO, EVITANDO VOLVER EL MISMO O LLENARLO DE CÓDIGO BASURA, MEJORAR EL TIEMPO DE RESPUESTA DEL ARCHIVO AL HACER POCO USO DE LECTURA SOBRE EL DISCO DURO POR PARTE DEL INTERPRETE BATCH SOBRE LA HERRAMIENTA CMD. CON LO ANTERIOR EVITAR EL DESPERDICIO DE RECURSOS DE MEMORIA Y PROCESAMIENTO. EL CÓDIGO SERIA MAS LIVIANO EN CUANTO A PESO DE ALMACENAMIENTO.

:
INDICA QUE SE INCLUIRÁ, INVOCARA, LLAMARA UNA ETIQUETA, FUNCIÓN DENTRO DEL CÓDIGO. LA CUAL PRECEDE EL CARÁCTER PARA SER ACTIVADA EN EL ALGORITMO SEGÚN LA DETERMINACIÓN DEL CÓDIGO DENTRO DEL ARCHIVO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN NOMBRAR LAS ETIQUETAS, FUNCIONES EN MAYÚSCULAS. CON ELLO SE PODRÁ IDENTIFICAR FÁCILMENTE DENTRO DEL CÓDIGO DADO EL CASO AL REQUERIR ACTUALIZACIONES SOBRE EL ARCHIVO SEGÚN VARIACIÓN O FUNCIÓN.

SET:
ESTABLECE VARIABLES LOCALES DENTRO DEL CÓDIGO. CON EL FIN DE SER USADAS EN UN FUTURO O COMO REFERENCIA DE OTRO CÓDIGO.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN CREAR VARIABLES PARA GENERAR OPCIONES  DE RESPUESTAS ANTE CASOS VOLÁTILESQUE REQUIERAN CAMBIOS DE VALORES. CON ELLO SE PODRÁ ADMINISTRAR, ACTUALIZAR UN VALOR SIN NECESIDAD DE REALIZAR BÚSQUEDAS EXTENSAS PARA CONSEGUIR EL CAMBIO SOLICITADO DENTRO DE TODO EL CÓDIGO.

- PARAMETROS SET:

=: 
OPERADOR LÓGICO QUE HACE EL EQUIVALENTE DE CONDICIÓN ANTE LA VARIABLE CUANDO SEA INVOCADA.


CLS:
LIMPIA EL CONTENIDO EN PANTALLA IMPRESO DE RESULTADOS, CONSULTAS, BÚSQUEDAS Y SENTENCIAS ANTERIORES.

HACE PARTE DE LAS BUENAS PRACTICAS DE PROGRAMACIÓN LIMPIAR PANTALLA PARA AHORRAR CONTENIDO PASADO O BASURA DENTRO DEL CÓDIGO.
REQUISITOS

MEMORIA RAM:              SEGÚN SOFTWARE NECESITADO.
ARQUITECTURA CPU:   SEGÚN SOFTWARE NECESITADO.
SISTEMA OPERATIVO:  WINDOWS XP, 7, 8, 8.1, 10.
ALMACENAMIENTO  :   TAMAÑO REQUERIDO PARA EL ARCHIVO SCRIPT.

TARIFA MÍNIMA.
$ 80 MIL PESOS COLOMBIANOS.

TIEMPO DE SOPORTE.
8 HORAS (1 DÍA).

DONACIONES Y AGRADECIMIENTOS.