lunes, 27 de agosto de 2012

BIND9 Zonas Inversas.

Lo prometido es deuda, así que hoy voy a explicar las zonas inversas para nuestro servidor DNS.

También tengo 2 explicaciones, por una parte el servidor maestro y por otra un servidor esclavo. Pero para no hacer 2 post lo junto todo en uno.


Comenzaremos con todo lo necesario para montar el servidor maestro, como somos previsores también indicaremos el servidor esclavo y le autorizaremos.


Para ello, crearemos una zona que nos va a dar servicio, para ello editamos el archivo /etc/bind/named.conf.local:

nano /etc/bind/named.conf.local

y en este archivo tenemos que poner algo como esto:


zone "100.168.192.in-addr.arpa" { → Esto seria el comienzo y entre las comillas hay que poner el nombre de nuestra zona inverso.

type master; → Con esto le indicamos el tipo de servidor que estamos preparando, en este casto maestro.

file "/var/lib/bind/db.inversa.instituto.com"; → Aquí le indicamos en que archivo tendrá toda la configuración de la zona, osease donde tendrá el nombre de las maquinas y sus ips.
Allow-transfer {192,168,100,252;}; → Aquí le indicamos a los servidores esclavos a los cuales les mandara el archivo.
Also-notify {192,168,100,252;}; → Aquí le indicamos a los servidores esclavos a los cuales les notificaremos los cambios que realicemos.

}; --> Hay que cerrar las llaves xD, el ";" se utiliza para indicar que se acabo la linea, si da fallos, siempre hay que mirar este tipo de cosas.

Foto 01: Zona inversa en el servidor maestro.

Editamos el archivo /etc/bind/db.necromals.com al abrirlo con el nano o cualquier editor, en teoría debería grabarse donde le estamos indicando (siempre y cuando las carpetas estén creadas, para crear carpetas mkdir).

nano /var/lib/bind/db.insitituto.com

Bueno ahora vamos a ver que lineas podemos tener en este archivo.

$TTL 604800 --> Es un tiempo de vida que le da a los registros.

En el siguiente registro (el primero en realidad) tenemos que decir quien tiene la autoridad de esta zona.

Para ello se pone lo siguiente:

<nombre de dominio> IN SOA <servidor> <responsable> (<parámetros>)
@ IN SOA ns root.localhost (parámetros)
en las siguientes lineas van el numero de serie, el periodo de refresco, la frecuencia de reintentos, el tiempo de expiración y el TTL minino.

El siguiente registro es un NS, que indica en una zona que servidores tienen autoridad a responder.
<nombre de dominio> IN NS <servidor con autoridad>
@ IN NS ns.instituto.com.

A partir de aquí los registros son mas sencillos, ya que son todos PTR

<dirección IP> IN PTR <nombre de dominio>

253 IN PTR ns.instituto.com. --> con esta linea le estamos diciendo que nuestro servidor dns que en la ip 192.168.100.253 (leído seria 253.100.168.192.in-addr.arpa) esta el nuestro servidor dns.

Foto 02: Registros para la zona inversa.

Ahora reiniciamos el servicio DNS, si no pasa nada nos mostrara 2 OK.
/etc/init.d/bind9 restart

Ahora vamos a montar nuestro servidor esclavo.
Para crear la zona esclava, tendríamos que poner el allow-transfer y el also-notify, pero como somos previsoras, ya los tenemos puestos en la parte anterior.
Continuamos con el siguiente paso, que es crear la zona que nos va a dar servicio, este paso es muy parecido al anterior, para ello editamos el archivo /etc/bind/named.conf.local:

nano /etc/bind/named.conf.local

y en este archivo tenemos que poner algo como esto:


zone "100.168.192.in-addr.arpa" { → Esto seria el comienzo y entre las comillas hay que poner el nombre de nuestro dominio.

type slave; → Con esto le indicamos el tipo de servidor que estamos preparando, en este casto maestro, pero tenemos otros como esclavo....
masters {192.168.100.253;}; → Aquí le indicamos de que servidores nos descargaremos los registros.

file "/var/lib/bind/db.slave.inversa.instituto.com"; → Aquí le indicamos en que archivo tendrá toda la configuración de la zona, osease donde tendrá el nombre de las maquinas y sus ips.

}; --> Hay que cerrar las llaves xD, el ";" se utiliza para indicar que se acabo la linea, si da fallos, siempre hay que mirar este tipo de cosas.

Foto 03: Zona inversa en el servidor esclavo.

Ahora reiniciamos el servicio DNS, si no pasa nada nos mostrara 2 OK.
El mejor método para ver si lo hemos configurado correctamente, es ver si el fichero /var/lib/bind/db.slave.inversa.instituto.com se ha creado, en caso contrario hay algo mal configurado.
Foto 04: Reinicio y comprobación.
Pues con esto ya tenemos nuestro servidor DNS totalmente montado.

Saludos by NECROMALS




miércoles, 22 de agosto de 2012

BIND9 Servidor Esclavo.

Continuando con la serie de post en los cuales voy a esplicar un poco como montar un servidor BIND9 o DNS.

Hoy nos toca los servidores esclavos, para ello vamos a utilizar las maquinas anteriores.

Pues comenzamos, primero vamos a esplicar un poco lo que queremos que suceda:

Tenemos un servidor maestro, este nos esta resolviendo las zonas que le tengamos puestas, pero que sucederia si este servidor se cae o si tiene mucho trabajo, pues para esto se hacen los servidores esclavos.

Basicamente un servidor esclavo le pide al servidor maestro toda sus registros de una zona, y a partir de este momento el servidor esclavo ya podria responder a las peticiones como si del maestro se tratase, cuando en el maestro cambie algo, este enviara a las maquinas esclavas un aviso de que cambio, y las esclavas le pediran de nuevo los registros de la zona. Basicamente esto es lo que va a suceder.

Pues empezemos:

Primero tenemos que configurar varias cosas en el servidor maestro, una de ellas esta en la parte de asignar las zonas.

Abrimos el archivo /etc/bind/named.conf.local con el gestor que mas nos agrade, en mi caso va a ser el nano:

nano /etc/bind/named.conf.local

 En la zona que tenemos, configurariamos las siguientes lineas:

allow-transfer {<ip de la maquina esclaba>;<ip de la segunda maquina esclava>;}; --> esta linea indica a que maquinas se va a enviar los registros de nuesto DNS.

also-notify {<ip de la maquina esclaba>;<ip de la segunda maquina esclava>;};--> esta linea indica a que maquinas tiene que avisar de que a cambiado algo en los registros de nuestro DNS principal.

Nos quedara algo como lo siguiente en nuestro ejemplo.

allow-transfer {192.168.100.252;};
also-notify {192.168.100.252;};

Foto 01: Permitir tener un servidor secundario.

El siguiente paso que devemos hacer en el servidor maestro, es indicarle en los registros que nuestro servidor secundario (En el caso del ejemplo el servidor se llama cliente) que el tambien puede contestar las peticiones, esto se hace con el registro ns.

Para ello, abrimos el archivo /var/lib/bind/db.insitituto.com con el gestor que mas nos agrade, como siempre yo uso el nano:

nano /var/lib/bind/db.insitituto.com

Y añadimos un registro parecido a este:


instituto.com. IN NS cliente

Foto 02: Añadir registro NS al servidor maestro.

A continuación ya empezamos con nuestro servidor esclavo.
Instalamos BIND9 antes de nada.
aptitude update --> Con esto se actualizaran los repositorios.
aptitude install bind9 --> Se instalaran 2 paquetes.

Una vez instalado, como va a ser nuestro Servidor DNS secundario, tenemos que configurarlo para que nos resuelva nuestro propio DNS, para ello editamos el archivo /etc/resolv.conf:

nano /etc/resolv.conf

Y dejar solo la siguiente linea:


nameserver 127.0.0.1
Esto significa que el servidor al que vamos ha hacer las peticiones somos nosotros mismos.

¿Y que pasa cuando en nuestro Servidor DNS no puede ofrecer la respuesta?

Pues fácil, en las opciones del servidor, indicamos un forward o lo que viene a ser lo mismo el siguiente servidor al que tiene que preguntar.

Para hacer esto hay que editar el archivo /etc/bind/named.conf.options

nano /etc/bind/named.conf.options

Y en este archivo descomentamos y dejamos así:

forward {
192.168.100.253;
};

Foto 03: Forward hacia el servidor maestro.
Continuamos con el siguiente paso, que es crear la zona que nos va a dar servicio, para ello editamos el archivo /etc/bind/named.conf.local:

nano /etc/bind/named.conf.local

y en este archivo tenemos que poner algo como esto:


zone "instituto.com" { → Esto seria el comienzo y entre las comillas hay que poner el nombre de nuestro dominio.

type slave; → Con esto le indicamos el tipo de servidor que estamos preparando, en este casto maestro, pero tenemos otros como esclavo....
masters {192.168.100.253;}; → Aquí le indicamos de que servidores nos descargaremos los registros.

file "/var/lib/bind/db.slave.instituto.com"; → Aquí le indicamos en que archivo tendrá toda la configuración de la zona, osease donde tendrá el nombre de las maquinas y sus ips.


}; --> Hay que cerrar las llaves xD, el ";" se utiliza para indicar que se acabo la linea, si da fallos, siempre hay que mirar este tipo de cosas.
Foto 04: Zona Esclava.
Ahora reiniciamos el servicio DNS, si no pasa nada nos mostrara 2 OK.
El mejor método para ver si lo hemos configurado correctamente, es ver si el fichero /var/lib/bind/db.esclavo.instituto.com se ha creado, en caso contrario hay algo mal configurado.

Foto 05: Comprobación.
Pues ya tenemos nuestro servidor DNS esclavo, en los próximos días publicare las zonas inversas de el servidor DNS maestro y esclavo, pero todo en el mismo post.
Saludos by NECROMALS



lunes, 20 de agosto de 2012

Cheat Sheet para programación web

Tras mucho mucho mucho tiempo sin escribir nada, hoy traigo mis cheat sheet que uso al programar  webs.

Cheat Sheet para HTML y HTML5

Cheat Sheet para CSS


 Cheat Sheet para JavaScript


Cheat Sheet para PHP


Cheat Sheet para Bases de datos MySQL y PostgreSQL