Mostrando entradas con la etiqueta CentOS. Mostrar todas las entradas
Mostrando entradas con la etiqueta CentOS. Mostrar todas las entradas

miércoles, 17 de noviembre de 2010

Cambiar en CentOS la función hash usada para las claves de los usuarios

Por defecto CentOS viene configurado para utilizar md5 como algoritmo hash para cifrar las claves de los usuarios. Esta función no es ni de cerca la mas segura, de hecho existen programas para obtener por fuerza bruta las claves cifradas con md5. Un ejemplo es John the Ripper.

miércoles, 3 de noviembre de 2010

Instalación y configuración básica de un dominio con bind9 en CentOS

Para mantener un dominio es necesario instalar y configurar un servidor DNS. El más utilizado en entornos linux es el Bind (versión 9.7.2-P2 en el momento de escribir este artículo).

El primer paso es instalarlo desde los repositorios de CentOS. Esto se hace con el comando:

yum install bind

Una vez instalado se debe crear un archivo de configuración. Lo siguientes pasos cubren una configuración sencilla que permita tener en marcha un servidor DNS en poco tiempo. La configuración del servidor está en el archivo /etc/named.conf. Todas las sentencias disponibles para configurar el servidor bind se pueden consultar en el Manual de Referencia del Administrador ARMv9.6 .

El archivo se puede editar con el comando:

nano /etc/named.conf

El contenido que hay que introducir es:

options {
        directory "/var/named";
};

zone "." {
        type hint;
        file "named.root";
};

zone "trombotic.tic" {
        type master;
        file "trombotic.tic.zone";
};

zone "1.168.192.in-addr.arpa" {
        type master;
        file "1.168.192.in-addr.arpa.zone";
}; 

La sentencia options permite configurar opciones globales del servidor. En este caso solo contiene la subsentencia directory que indica el directorio del sistema donde están los archivos de zona. La subsentencia type indica el tipo de zona, y en el caso de poner master significa que este servidor es el que tiene la copia original de los datos de la zona (No es un servidor secundario). Por último la subsentencia file indica el nombre del archivo de zona.

El servidor dns para definir un dominio utiliza zonas. Una zona contiene la información que maneja un dns, es decir, la relación entre los nombres de las máquinas y sus direcciones ip ( y alguna cosilla más). Esta información se representa mediante registros de recursos incluidos dentro de los archivos de zona.

Por ejemplo, en este servidor existe una zona llamada trombotic.tic que se corresponde con el dominio trombotic.tic cuyo archivo de zona se llama trombotic.tic.zone. Como dentro de la sentencia options existe la subsentencia directory con valor /var/named, el archivo de zona para trombotic.tic es /var/named/trombotic.tic.zone. Esta zona se encarga de la resolución de nombres de dominio a direcciones ip.

A parte, también existe una zona llamada 1.168.192.in-addr.arpa que es la que se encarga de la resolución inversa, es decir, a partir de una dirección ip obtener el nombre de dominio. No es obligatoria para tener resolución de nombres, pero es necesaria para que algunos servicios funcionen bien. Las zonas de resolución inversa reciben el nombre de la dirección de red o subred, sin los ceros, escritas al revés y con el sufijo .in-addr.arpa. en este caso la dirección de la red es 192.168.1.0/24 así que se coge el 192.168.1, se le da la vuelta para que quede 1.168.192 y se le añade .in-adder.arpa.

Una vez creado el archivo de configuración , hay que crear los archivos de zona.
Dentro del directorio /var/named se deben crear tres archivos:
  • named.root que contiene una copia de los servidores raíz DNS.
  • trombotic.tic.zone que contiene los registros de las zona trombotic.tic.
  • 1.168.192.in-addr.arpa.zone que contiene los registros de resolución inversa para las direcciones de la red 192.168.1.0/24.
Se puede obtener una copia actualizada de los servidores DNS raíz en www.internic.net. Para descargar el archivo de named.root se puede utilizar el comando:

wget -O - http://www.internic.net/zones/named.root > /var/named/named.root


El contenido del archivo /var/named/trombotic.tic.zone podría ser así:

@               IN      SOA ns.trombotic.tic admin.trombotic.tic (
1       ;serial
24h     ;refresh
1h      ;retry
7d      ;expire
1h      ;negative ttl
)

                IN      NS ns.trombotic.tic.

@               IN      MX 1    servidor.trombotic.tic.

servidor        IN      A 192.168.1.200
router          IN      A 192.168.1.1

ns              IN      CNAME servidor
smtp            IN      CNAME servidor
pop3            IN      CNAME servidor
www             IN      CNAME servidor
ftp             IN      CNAME servidor


Los archivos de zona contienen registros de recuros, que es la información que maneja el servidor dns acerca de la zona. Hay varios tipos de registros de recurso: soa,a,ns,mx,cname,ptr,... Como este articulo no pretende ser un manual de bind (se puede buscar el google y seguro que salen cientos), basta con decir que en este archivo se esta indicando lo siguiente (Entre paréntesis esta el tipo de registro que indica esta información):
  • que la dirección de correo del administrador de la zona es admin@trombotic.tic (SOA).
  • que esta zona la lleva un servidor dns llamado ns.trombotic.tic (NS) que realmente es un alias de servidor.trombotic.tic (CNAME).
  • que el dominio tiene un único servidor que recoge correo electrónico llamado servidor.trombotic.tic (MX).
  • que hay una máquina llamada servidor.trombotic.tic con direccion ip 192.168.1.200 (A).
  • que hay una máquina llamada router.trombotic.tic con direccion ip 192.168.1.1 (A).
  • que servidor.trombotic.tic tiene varios nombres (CNAME): ns.trombotic.tic, smtp.trombotic.tic, pop3.trombotic.tic,www.trombotic.tic y ftp.trombotic.tic.
Básicamente en esta red hay una única maquina que proporciona todos los servicios, que es servidor.trombotic.tic y otra que conecta nuestra red con Internet, que es router.trombotic.tic.

El contenido del archivo /var/named/1.168.192.in-addr.arpa.zone podría ser así:

@               IN      SOA ns.trombotic.tic admin.trombotic.tic (
1       ;serial
24h     ;refresh
1h      ;retry
7d      ;expire
1h      ;negative ttl
)

                IN      NS ns.trombotic.tic.

200             IN      PTR servidor.trombotic.tic.
1               IN      PTR router.trombotic.tic.


En este archivo de zona la información mas importante es:
  • que existe una maquina con dirección ip 192.168.1.200 que se llama servidor.trombotic.tic (PTR).
  • que existe una maquina con direccion ip 192.168.1.1 que se llama router.trombotic.tic (PTR).
Hay que tener en cuenta que en el registro de recurso sólo pone el último número de la dirección ip y que el propio servidor añade el nombre de la zona para poder obtener la dirección ip completa. Por ejemplo, en la linea que empieza por 200, hay que añadir al final 1.168.192.in-addr.arpa y de aquí se obtienen 200.1.168.192.in-addr.arpa. Se le quita el in-addr.arpa y se le da la vuelta para que quede la dirección 192.168.1.200.

Una vez configurado sólo es necesario arrancar el servidor dns con el comando:

service named start


Para resolver cualquier duda se puede utilizar los comentarios del artículo.

martes, 2 de noviembre de 2010

Configuración de la red en CentOS

Existen varias formas de configurar la red en CentOS.

La primera y más fácil es utilizar un servidor DHCP que exista en nuestra red local. Si se dispone de un router ADSL lo más seguro es que este activado el servidor DHCP para que cualquier ordenador pueda conseguir una direccion ip y navegar.
Si al instalar CentOS no se ha cambiado la configuración por defecto de la red, se utilizará el servidor DHCP para conseguir una dirección ip válida, la mascara de subred, el nombre de dominio, el DNS y la puerta de enlace.

En ocasiones hay que forzar al cliente DHCP para que renueve la dirección ip. Para liberar la dirección ip que nuestra maquina tiene asignada actualmente se ejecuta el comando dhclient -r. Una vez liberada la dirección ip se puede volver a solicitar otra con el comando dhclient.

La segunda es utilizar el comando system-config-network. De esta forma aparece en pantalla una interfaz basada en texto que permite configurar la red de forma sencilla.

Para configurar la dirección ip y puerta de enlace se selecciona "Edit Devices" con las teclas de dirección o cursores (las de las flechitas) y se pulsa la tecla "Enter".
Las interfaces (tarjetas de red) ethernet tienen nombres como eth0, eth1, eth2, ... dependiendo del numero de interfaces que tenga la máquina. En el ejemplo solo esta disponible una interfaz de red llamada eth0, se selecciona y se pulsa "Enter".
Si no se ha realizado ningún cambio en la configuración de la red durante la instalación, la interfaz obtendrá la configuración consultando a un servidor DHCP. Para poner un dirección estática , hay que seleccionar "Utilizar DHCP" con los cursores y pulsar la barra espaciadora para quitar el asterisco y que se permita introducir los datos en los otros campos. Si se desea volver a utilizar el DHCP, solo hay que poner el asterisco de nuevo en "Utilizar DHCP".
Una vez introducidos todos los campos, se selecciona "Ok" y se pulsa "Enter" para volver a la pantalla anterior.
Con la tecla tabulador se selecciona "Guardar" y automáticamente volvemos a la pantalla inicial.
Ahora, para configurar los DNS, se selecciona "Edit DNS configuration" y se pulsa "Enter".
Posiblemente la ventana que aparece mostrara los datos del dns obtenidos por el DHCP.
Utilizando las teclas de dirección se selecciona cada uno de los campos y se introduce los datos necesarios. cuando estén completados, se selecciona "Ok" y se vuelve automáticamente a la ventana inicial.
Con el tabulador se selecciona "Guardar y Cerrar" y se pulsa "Enter" para que la configuración tenga efecto. El comando system-config-network modifica los archivos relacionados con la configuración de la red, pero para que las interfaces carguen su nueva configuración hay que reiniciar el servicio de red ejecutando el comando service network restart.

Y por ultimo, y la forma más compleja, es editar directamente los archivos relacionados con la red. Aviso: Estos archivos tienen más opciones de las que se exponen aqui, pero las expuestas son suficientes para que la red funcione correctamente.
Por cada interfaz de red existe un archivo de configuración en el directorio "/etc/sysconfig/network-scripts/". Para la interfaz eth0 este archivo se llama "ifcfg-eth0".

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:0c:29:c7:d3:5a
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=192.168.1.200
GATEWAY=192.168.69.1
TYPE=Ethernet


El contenido del archivo indica lo siguiente:
  • Las lineas que empiezan por # son comentarios y no afectan a la configuración.
  • DEVICE indica la interfaz a la que pertenece este archivo.
  • BOOTPROTO indica el protocolo que se utiliza para obtener la dirección ip. En este caso none quiere decir que se usa la configuración del archivo. Si pone dhcp se utiliza un servidor dhcp.
  • HWADDR indica la dirección mac de la interfaz de red.
  • ONBOOT indica que esta interfaz se tiene que activar o no cada vez que se arranque/reinicie el servicio de red. Si pone yes, se activa y si pone no, evidentemente no se activa.
  • NETMASK indica la mascara de subred.
  • IPADDR indica la dirección ip de la interfaz.
  • GATEWAY indica la puerta de enlace que se utilizara para llegar a otras redes (incluido Internet).
  • TYPE indica que la interfaz de red es ethernet.
En el archivo /etc/sysconfig/network se indican varias opciones de red.

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=servidor.trombotic.tic


El contenido del archivo indica lo siguiente:
  • NETWORKING indica que se activa el servicio de red ipv4 si pone yes y que no se activa si pone no.
  • NETWORKING_IPV6 indica que se activa el servicio de red ipv6 (nueva versión del protocolo ip que utiliza direcciones ip de 128 bits en vez de 32bit a parte de otras mejoras) si pone yes y que no se activa si pone no.
  • HOSTNAME indica el nombre de dominio de la máquina.
El archivo /etc/resolv.conf contiene información necesaria para el cliente DNS.

search trombotic.tic 

nameserver 192.168.1.1 
nameserver 192.168.1.2


El contenido del archivo indica lo siguiente:
  • search indica el dominio que se añadirá a los nombres de máquina que no sean nombres de dominio completamente cualificados (FQDN)
  • nameserver indica la dirección ip del servidor DNS. En el caso de haber varios servidores, aparece una linea por cada servidor.
Una vez editados los archivos, es necesario reiniciar el servicio de red.

jueves, 28 de octubre de 2010

Instalación rápida de CentOS en VMWare Player

El siguiente vídeo muestra como instalar de forma rápida la distribución de Linux CentOS 5.5. El vídeo esta hecho para utilizar sobre la máquina virtual creada en el artículo Preparar un máquina virtual para utilizar con CentOS.


Preparar un máquina virtual en VMWare Player para utilizar con CentOS

Para poder utilizar Linux sin el riesgo de estropear nuestro "perfecto" Windows vamos a utilizar VMWare Player para crear una maquina virtual sobre la que instalar la distribución Linux CentOS.

VMWare Player se puede descargar de la pagina oficial de VMWare  en Products. La instalación es sencilla y si estas intentando usar Linux seguro que eres capaz de instalarlo sin ayuda.

A partir de aquí solo tienes que seguir los pasos del vídeo para crear una máquina virtual para el CentOS.