jueves, 31 de julio de 2008

INSTALACIÓN Y CONFIGURACIÓN DEL SERVICIO DHCP EN LINUX DEBIAN

Para la instalación y configuración del servicio DHCP en Linux Debian (Aplica para Linux Ubuntu) utilizaremos el paquete dhcp3-server.

Lo instalamos.
.
# apt-get install dhcp3-server
.
Procedemos a la configuración.
.
# pico /etc/dhcp3/dhcpd.conf
.
Por organización y por prevenir errores por alguna linea de configuración, podemos borra todo el texto del archivo y copiar los siguientes. Les explicaré el significado de cada linea de configuración.
.
Les muestro un Ámbito como ejemplo.
.

authoritative;

ddns-updates on;

ddns-update-style interim;

ddns-domainname "rafa55.com";

.

# A slightly different configuration for an internal subnet.

....subnet 10.0.0.0 netmask 255.0.0.0 {

....range 10.0.0.9 10.0.0.50;

....option domain-name-servers 10.0.0.5;

....option domain-name "rafa55.com";

....option routers 10.0.0.1;

....option broadcast-address 10.0.0.255;

....default-lease-time 86400;

....max-lease-time 86400;

host prueba1 {

....hardware ethernet 00:02:55:d7:2c:e3;

....ixed-address 10.0.0.19;

}

host prueba2 {

....hardware ethernet 00:02:55:d7:2c:d6;

....deny-booting;

}

}

.
Explicación de cada linea.

.

Éste bloque hace referencia a las actualizaciones dinámicas; en la cuarta línea se debe especificar a cuál dominio el dhcp va a actualizar.

.

authoritative;

ddns-updates on;

ddns-update-style interim;

ddns-domainname "rafa55.com";

.

Especifica el ID de red en donde el ámbito aplicará.

.

subnet 10.0.0.0 netmask 255.0.0.0 {

.
Especifica el rango de direcciones IP´s que el servidor entregará a los usuarios.
.
range 10.0.0.9 10.0.0.50;
.

Especifica la dirección IP del servidor DNS. Ojo, con los puntos al final de la linea.

.

option domain-name-servers 10.0.0.5;

.
Especifica el nombre del dominio que el dhcp entregará al momento de entregar las direcciones IP´s a los usuarios.

.

option domain-name "rafa55.com";

.
Especifico la dirección IP del Gateway o puerta de enlace.

.

option routers 10.0.0.1;

.
Especifica el broadcast de la red.

.

option broadcast-address 10.0.0.255;

.
Especifica el tiempo por defecto de consesión (El tiempo se especifica en segundo).

.

default-lease-time 86400;

.
Especifica el tiempo máximo de consesión.

.

max-lease-time 172800;

.
.
RESERVAS DE HOST

.
El siguiente bloque se utiliza para realizar reservaciones de direcciones IP´s. Se digita el nombre del host (prueba1), la dirección MAC de la máquina del usuario, y la dirección IP que se le entregará.

.

host prueba1 {

....hardware ethernet 00:02:55:d7:2c:e3;

....fixed-address 10.0.0.19;

}

.
DENEGACIÓN DE HOST.
.
Éste bloque se implementa para realizar denegaciones de IP´s a un host. Digitamos un nombre de host (prueba2), la dirección MAC del equipo usuario, y se agrega la linea deny-booting.

.

host prueba2 {

....hardware ethernet 00:02:55:d7:2c:d6;

....deny-booting;

}

.
Las reservaciones y las denegaciones deben estar dentro del ámbito que aplicará.


Reiniciamos el servicio dhcp.

# /etc/init.d/dhcp3-server restart

Comprovamos desde otro host si el dhcp está entregando direcciones IP´s especificadas en el ámbito.

Listo. Ya hemos configurado el servicio DHCP en Linux Debian.

jueves, 24 de julio de 2008

INSTALACIÓN Y CONFIGURACIÓN DEL SERVICIO FTP EN LINUX DEBIAN CON EL PAQUETE VSFTPD

En éste artículo les explicaré cóm realizar una instalación y configuración del servicio FTP en el Sistema Operativo Linux Debian (También aplica para Linux Ubuntu) y con el paquete VSFTPD.

Se deben realizar los siguientes pasos.

Como superusuario digitar:

# apt-get install vsftpd.conf

Editar el archivo de configuración vsftpd.conf de la siguiente manera:

# pico /etc/vsftpd.conf

Listen=YES

#Avilitar el acceso a Usuarios Anónimos.
anonymous_enable=YES

#Permitir el acceso a usuarios locales a sus respectivas carpetas o directorios.
local_enable=YES

#Permitir el modo escritura.
write_enable=YES

#Máscara del directorio.
local_umask=022

#Mensaje cuando se conecta alguien por medio de la consola.
ftpd_banner=Bienvenido al Servidor FTP de prueba.

#Enjaular usuarios en las carpetas del FTP (En ésta opción se debe decir que no).
chroot_local_user=NO

#Los usuarios solo puedan acceder a su carpeta del FTP
chroot_list_enable=YES

#(default follows)
choroot_list_file=/etc/vsftpd.chroot_list

Guardar los cambios y salir.

Crear un directorio en /home/ con el nombre usuarios_fpt y dentro de éste crear los directorios de los usuarios.

#mkdir /home/usuarios_ftp
#mkdir /home/usuarios_ftp/rafa
#mkdir /home/usuarios_ftp/prueba

Cambiamos los propietarios a los directorios.

#chown sena:sena /home/usuarios_ftp/rafa
#chown sena:sena /home/usuarios_ftp/prueba

Luego crearemos los usuarios dándoles como casa a cada uno los directorios que anteriormente habíamos creado.

#useradd -g ftp -d /home/usuarios_ftp/rafa/ -c "rafa" rafa
#useradd -g ftp -d /home/usuarios_ftp/prueba/ -c "prueba" prueba

Agregamos archivos en los directorios de los usuarios y en el directorio ftp para luego realizar pruebas.

#touch /home/usuarios_ftp/rafa/practica1
#touch /home/usuariso_ftp/prueba/practica2
#touch /home/ftp/practica3

Por seguridad, a los usuarios se le deben quitar la Shell.

#pico /etc/shells

Y digitar en la última linea.

/bin/ftp

Guardar y cerrar.

Editar el archivo passwd para cambiarles la Shell a los usuarios. Por defeto lo muestra de la siguiente manera.

rafa:x:1001:1001:rafa:/home/usuarios_ftp/rafa/:/bin/sh
prueba:x:1002:1001:prueba:/home/usuarios_ftp/prueba/:/bin/sh

Cambiarlas de la siguiente forma.

rafa:x:1001:1001:rafa:/home/usuarios_ftp/rafa/:/bin/ftp
prueba:x:1002:1001:prueba:/home/usuarios_ftp/prueba/:/bin/ftp

Guardar y cerrar.

Crear el archivo vsftpd.chroot_list para definir los usuarios enjaulados. Ojo, los usuarios que nos son anónimos y que no están enjaulados, pueden tener acceso a todas las carpeta del FTP e incluso a todo el disco del sistema.

#pico /etc/vsftpd.chroot_list

Digitar los nombres.

rafa
prueba

Guardar y cerrar.

Reiniciamos el servicio.

#/etc/init.d/vsftpd restart

Ya se puede provar, el servico le pedirá un login; en caso que ingrese como anonymous sólo le mostrará los archivos que se encuentran en el directorio FTP; en el caso que ingrese como un usuario sólo podrá ver el contenido de su directorio.

Otros lineas que se pueden digitar en el vsftpd.conf

#Opciones de Transferencia.
#Ancho de Banda por usuario anónimo en Kb
anon_max_rat=5100

#Ancho de Banda para usuarios locales en Kb
local_max_rate=5100

#Número máximo de clientes.
max_clients=5

#Máximo de conexiones por IP
max_per_ip=19

#Accesos y Denegaciones del servicio.
tcp_wrappers=YES

Para que los TCP WRAPPERS funcionen, se deben editar, dependiendo lo que se necesite, los archivos hosts.allow y hosts.deny

El hosts.allow es para permitir acceso al servicio y el hosts.deny es para denegar accesos al servico.

Un ejemplo para una mayor explicación.

Quiero que toda la red no vea el servicio ftp que acabé de montar, pero quiero que solo un usuarios pueda verlos.

Lo anterios se debe realiazar de la siguiente forma.

#pico /etc/hosts.deny

Digitar en la última linea.

vsftpd:ALL

Guardar y Cerrar.

#pico /etc/hosts.allow

Digitar en la última linea las direcciones IP´s que quiero que tengan acceso al FTP separadadas por comas.

vsftpd:10.0.0.9

La nomenclatura para los hosts.allow y los hosts.deny se tiene en cuenta.

[Servicio]:[IP, Red, Nombre, Dominio]

Reiniciar el servicio.

#/etc/init.d/vsftpd restart

Al momento de realizar la pruba, sólo podrán visitar el FTP desde las IP´s mencionadas, claro está, que las IP´s mencionadas deben logearse como anonymous o autencticado para poder ingresar.

Listo. Ya se ha realizado una configuración del servicio FTP con el paquete VSFTPD en Linux Debian.
QUITAR LA ACTIVACIÓN DE WINDOWS

Los Sistemas Operativos de Windows pide por obligación la activación del sistema. Sin embargo, algunas veces los usuarios no cuentan con licencias de Windows para realizar ésta activación, ó fué tantas las veces que utilizamos una licencia que el sistema ya la tiene grabada y por ésto no la acepta mas.

Por ésto, aquí les daré unas explicaciones para poder quitar la activación.

Se deben realizar los iguientes pasos.

1. Ejecutar regedit y buscar la clave en la siguiente ruta HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\WPAEvents

2. Abrir la clave oobetimer y se debe borrar el valor Hexadecimal CA y luego cerrar regedit.

3. Luego ejecutar %systemroot%\system32\oobe\msoobe.exe /a

4. Debe aparecer la pantalla de activación de Windows. Se selecciona la activación por teléfono y dar clic en cambiar clave del producto. Luego se debe digitar la nueva clave del producto y dar clic en actualizar. Ojo, las claves que comienzan por F o D han sido Baneadas (Bloqueadas) por Microsoft en el SP1

5. Ejecutar de nuevo %systemroot%\system32\oobe\msoobe.exe /a tomar la opción de activar por medio de Internet y digitar el serial del producto y lugo clic en Actualizar.

Listo. Ya se ha quitado y a la ves actualizado la activación de Windows.

viernes, 11 de julio de 2008

DESCARGAR VIDEOS DE YOUTUBE DESDE LINUX UBUNTU

En éste artículo les enseñaré a descargar videos de YouTube desde la consola de Linux Ubuntu.

Como Superusuario digita la siguiente ruta:

# pico /usr/local/bind/getyoutube

Luego copias el código que aparece a continuación y lo pegamos en el archivo getyoutube. Ojo, cópialo tal cual como aparece:

#!/bin/bash

if [ $# -lt 1 ]; then
echo "Uso: $0 "
exit 1
fi

ID=`echo $1 | cut -d= -f2 | cut -d\& -f1`
FILE="youtube-${ID}"
BASE_URL="http://youtube.com/get_video.php"

wget -O /tmp/${FILE} $1

if [ $? == 0 ]; then
T_PARAM=`grep '&t=' /tmp/${FILE} | head -n 1 | awk -F'&t=' '{print $2}' | cut -d\& -f 1`
VIDEO_URL="${BASE_URL}?video_id=${ID}&t=${T_PARAM}"

wget -O ${FILE}.flv $VIDEO_URL

if [ $? != 0 ]; then
rm -f ${FILE}.flv
exit 1
else
ffmpeg -i ${FILE}.flv ${FILE}.avi
fi
fi

rm -f /tmp/${FILE}

Luego le damos permisos de ejecución de la siguiente manera:

# chmod +x /usr/local/bin/getyoutube

Y listo. Ya podemos descargar videos de YouTube. La sintaxis es:

# getyoutube [url del video]

El video será bajado en el formato .flv y para pasarlo a formato .avi solo debemos instalar el paquete ffmpeg de la siguiente manera:

# apt-get install ffmpeg

Y al momento que se termina la descarga, de una ves lo codifíca al formato .avi. Pues como lo deseábamos.

jueves, 10 de julio de 2008

INSTALACIÓN Y CONFIGURACIÓN DEL SERVICIO DNS (BIND9) EN LINUX UBUNTU

En éste artículo explicaré la instalación y configuración del servicio DNS en Linux Ubuntu.

Para ésto debemos seguir los siguientes pasos.

Instalamos el paquete bind9 con los siguientes comando:

# apt-get install bind9

Luego realizaremos la configuración editando los siguientes archivos. Premero se edita el archivo name.conf situado en la ruta:

# pico /etc/bind/name.conf

Aparecerá, entre muchos, los siguientes bloques de configuración:

zone "localhost" {
type master;
file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};

Los cuales se configuran de la siguiente manera:

En localhost, ponemos el dominio. Y cambiamos el db.local por db.directa, ojo, es un ejemplo, éste nombre se puede cambiar.

zone "practica.com" {
type master;
file "/etc/bind/db.directa";
};

En 127 digitamos el primer número con que se está trabajando, ejs: 10 en mi caso. Y en db.127 cambiarla por db.inversa, en mi caso.

zone "10.in-addr.arpa" {
type master;
file "/etc/bind/db.inversa";
};

Guardamos los cambios y salir del archivo.

Luego copiamos los archivos db.loca y db.127 de la siguiente manera:

# cp /etc/bind/db.local/ /etc/bind/db.directa
#cp /etc/bind/db.127/ /etc/bind/db.inversa

Luego editamos la zona directa, para que resuelva de nombre de dominios a direcciones IP´s en el archivo db.directa de la siguiente forma:

# pico /etc/bind/db.directa



Donde dice localhost. digitamos el nombre del servidor, en mi caso, serveruno.practica.com. y donde dice root.localhost. digitamos la dirección del correo electrónico del administrador o el dominio practica.com. Ojo con los puntos, es importantícimo, observe bien la gráfica.

Se sugiere que se cambie el número de Serial. Al frente de NS digitar el nombre del servidor dns y al frente de A la dirección IP del servidor. Y agragar los host que se quieren que se resuelvan en la red, así como lo ilustra la figura. Además se pueden crear CNAME ó alias.

Guardamos los cambios y salir del archivo.

Editamos la zona inversa, para que resuelva de direcciones IP´s a nombres de dominios, en el archivo db.inversa de la siguiente forma:

# pico /etc/bind/db.inversa

Nos muestra la siguiente configuración:

Digitamos parecidamente a lo anterior a excepción de las últimas lineas de configuración. En NS digitamos el nombre del servidor serveruno.practica.com. debajo digitamos los últimos tres números inversamente 251.7.3 al lado de PTR el nombre del servidor. Y así se agregan los demás dominios de los host a resolver.


Guardamos la configuración y salir del archivo.

Reiniciamos el servicio de la siguiente manera:

# /etc/init.d/bind9 restart

Y ya nuestro DNS resolverá los equios que tenemos en nuestra LAN. Probemos con el comando nslookp digitando:

# nslookup

El promp debe cambiar a éste estado ">" y digitamos ejs: preguntamos por diana debe aparecer algo parecido a ésto:

Server: 10.3.7.251
Address: 10.3.7.251#53

Name: diana.practica.com
Address: 10.3.7.202


FORWARDERS (RENVIADORES) SERVIDOR DNS LOCAL

Si queremos que nuestro DNS resuelva los dominios de Internet como "nslookup www.google.com", para ésto debemos realizar los siguiente pasos.

Editamos el archivo name.conf.options en la siguiente ruta:

# pico /etc/bind/name.conf.options

Buscar el siguiente bloque de configuración:

// forwarders {
// 0.0.0.0;
// };

Y lo configuramos de la siguiente forma:

Las descomentamos borrando los eslaps y digitamos los DNS´s a los que se le harán las peticiones de resolución:

forwarders {
172.16.2.61;
172.16.2.62;
};

Ponemos a funcionar nuestro propio DNS editando el archivo resolv.conf en la siguiente ruta:

# pico /etc/resol.conf

Comentamos el dominio y las direcciones IP´s que aparecen, y agregar las siguientes lineas, en mi caso:

search practica.com

nameserver 10.3.7.251

Y listo.

Nuestro servidor está en un buen funcionamiento, y se realizan las pruebas con el comando nslookup y el dominio.



CONFIGURACIÓN TRANSFERENCIA DE ZONAS (DNS MASTERS Y SLAVE).


Para la configuración de las transferencia de zonas en el Bind9 se deben realizar los siguientes pasos.

DNS MASTER

Una ves de haber especificado el name.conf y las zonas directas e inversas, debemos agregar una linea de configuración en el archivo de configuración name.conf

zone "practica.com" {
type master;
file "/etc/bind/db.directa";
allow-transfer {10.3.7.252;};
};


zone "10.in-addr.arpa" {
type master;
file "/etc/bind/db.inversa";
allow-transfer {10.3.7.252;};
};



DNS SLAVE


Para configurar el DNS esclavo, solo se debe configurar el archivo name.conf de la siguiente forma.

zone "practica.com" {
type slave;
file "/etc/bind/db.directa";
masters {10.3.7.251;};
};


zone "10.in-addr.arpa" {
type slave;
file "/etc/bind/db.inversa";
masters {10.3.7.251;};
};


En el DNS esclavo, se le debe dar permiso de escritura a OTROS al directorio Bind para que el DNS maestro pueda crear y transferir automáticamente las zonas al directorio Bind del DNS esclavo. Se debe digitar de la siguiente forma.

# chomod 2775 /etc/bind/

Si el DNS maestro deja de funcionar por algún problema del sistema, quedará en funcionamiento el DNS esclavo, pero se debe especificar en el DNS maestro, y con la ayuda de las actualizaciones del DHCP, una linea que diga quién es el otro servidor que puede responder.

Para realizar ésto se debe digitar las dos siguiente linea, en el DNS maestro, tanto en las zonas directas como inversas:

ZONA DIRECTA DNS MAESTRO.

@.................IN........NS............serveruno.practica.com.
serveruno...IN...........A...........10.3.7.252

ZONA INVERSA DNS MAESTRO.

@.................IN............NS.........serveruno.practica.com.
251.7.3........IN...........PTR.........serveruno.practica.com.

Listo. Ya se puede decír que hemos hecho una configuración más avanzadas del DNS en Linux Ubuntu, el cual también aplica para Linux Debian.
CONFIGURACIÓN DNS PARA EL EQUIPO EN LINUX UBUNTU

Algunas veces necesitamos de la resolución de nombres de dominios, ya sea para ensayos de configuración o para cualquier cosa. Por ésto, les voy a explicar cómo podemos configurar rápidamente un DNS para el equipo, OJO, no es un DNS local, es un DNS que sólo funciona para la máquina en sí, nada mas.

Debemos realizar los siguientes pasos.

Primero debemos editar el archivo Host ubicado en en la siguiente ruta:

# pico /etc/hosts


Digitamos, si se quiere al principio del archivo, la dirección IP del equipo 10.10.10.10 presione la tecala Tab y digitamos el dominio que resuelva rafa.practica.com Guardamos los cambios y salirce del archivo.

Al momento de realizar la prueba, cuando digitamos en el Browser el dominio que creamos, mostrará el contenido del sitio Web correspondiente al dominio que avíamos creado.

Y Listo

Ya hemos configurado un DNS para el propio equipo. OJO, cuando digo equipo, me refiero a un computador.

Espero que te haya ayudado ésta explicación.

miércoles, 9 de julio de 2008

INSTALACIÓN Y CONFIGURACIÓN DEL SERVICIO WEB CON APACHE2 EN LINUX DEBIAN

En el siguiente documento se muestra la configuración del servidor Apache2 utilizando Host Virtuales por nombre y por IP.

Les recomiendo que se decumenten a cerca de los archivos y líneas de configuración de sus respectivos archivos para poder entender su respectiva configuración.