Apartamento En Familia

Apartamento En Familia
Apartamento de playa para vacaciones. http://www.apartamentoenfamilia.es. Número registro HUTT-005768

miércoles, 27 de enero de 2010

Instalar y configurar un servidor y un cliente NTP

Network Time Protocol (NTP) es un protocolo de Internet para sincronizar los relojes de los sistemas informáticos a través de ruteo de paquetes en redes con latencia variable. NTP utiliza UDP como su capa de transporte, usando el puerto 123. Está diseñado para resistir los efectos de la latencia variable.
(Fuente wikipedia)

Para instalarlo es muy  sencillo. Podemos usar Synaptic:




o directamente escribir en la consola:

apt-get install ntp

Podemos comprobar que el servidor ya esta en marcha de esta manera:
pgrep ntpd

Si nos devuelve un PID significará que toda la instalación ha ido bien.

Una vez instalado el servidor NTP ya podemos configurarlo mediante el archivo /etc/ntp.conf en donde básicamente deberemos indicar los servidores con los que nuestro servidor NTP se va a sincronizar. Se recomienda que se pongan al menos 2 servidores remotos con los que pueda sincronizarse. Uno actuará como servidor primario y el otro como copia de respaldo.Por ejemplo:


server hora.rediris.es
server 127.0.0.1


Existen otras opciones como la de poner restricciones de actualización o consulta al servidor que cada administrador del sistema deberá adecuar según sus necesidades:
# Prohibit general access to this service.
restrict default ignore

# Permit systems on this network to synchronize with this
# time service. But not modify our time.
restrict aaa.bbb.ccc.ddd nomodify

# Allow the following unrestricted access to ntpd
restrict aaa.bbb.ccc.ddd
restrict 127.0.0.1



Para comprobar que estamos sincronizando correctamente podemos usar el comando ntpq:

root@miNTPserver:/etc# ntpq
ntpq> peer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*hora.rediris.es .GPS.            1 u  609 1024  377   17.657   -0.217   0.066
Con esto ya tendríamos instalado el servidor. Ahora pasemos a instalar un cliente NTP llamado ntpdate. Podemos instalarlo mediante Synaptic (ver la imagen de más arriba) o con consola:
apt-get install ntpdate

Una vez instalado simplemente deberemos configurar su archivo de configuración /etc/default/ntpdate:

root@miPingu:/etc/default# cat ntpdate
# The settings in this file are used by the program ntpdate-debian, but not
# by the upstream program ntpdate.

# Set to "yes" to take the server list from /etc/ntp.conf, from package ntp,
# so you only have to keep it in one place.
NTPDATE_USE_NTP_CONF=yes

# List of NTP servers to use  (Separate multiple servers with spaces.)
# Not used if NTPDATE_USE_NTP_CONF is yes.
NTPSERVERS="ntp.ubuntu.com"

# Additional options to pass to ntpdate
NTPOPTIONS=""

Y ya tendremos un cliente instalado y configurado para actualizarse con un servidor.


Enlaces:



lunes, 25 de enero de 2010

Thunderbird 3.0 (Shredder) en Ubuntu 9.10



Para instalar Thunderbird 3.0 usaremos el add-apt-repository que nos servirá para añadir un nuevo repositorio:

sudo add-apt-repository ppa:ubuntu-mozilla-daily/ppa

Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv B34505EA326FEAEA07E3618DEF4186FE247510BE
gpg: solicitando clave 247510BE de hkp servidor keyserver.ubuntu.com
gpg: clave 247510BE: «Launchpad PPA for Ubuntu Mozilla Daily Build Team» sin cambios
gpg: Cantidad total procesada: 1
gpg:              sin cambios: 1



Una vez añadido el repositorio ya podemos instalar fácilmente el thunderbird 3.0 mediante apt-get o synaptic.


sudo apt-get update && sudo apt-get install thunderbird-3.0 thunderbird-3.0-gnome-support

Al instalarse el Shredder (Thunderbird 3.0) puede que algunos complementos





sean incompatibles con la versión nueva. Deberás asegurarte que dichos complementos se pueden actualizar para Thunderbird 3.0 (o en su defecto pensar si puedes pasar si ellos).

miércoles, 20 de enero de 2010

El gobierno alemán y francés han recomendado no usar Internet Explorer como navegador

Es noticia en todos los medios que el gobierno alemán y francés han recomendado no usar Internet Explorer como navegador, a raíz de los ataques perpetrados (supuestamente) desde el gobierno Chino contra Google aprovechando una vulnerabilidad desconocida del navegador de Microsoft. Realmente esta recomendación no supone nada novedoso viniendo del gobierno alemán, que ya en 2008 desaconsejó el uso del navegador Chrome, por ejemplo. Pero si la intención es, con buen criterio, disuadir del uso temporal de programas con graves vulnerabilidades hasta que sean resueltas, la lista debería ser demasiado larga.

Hace unos días Google reconocía en su blog oficial haber sido objeto de un ataque "altamente sofisticado" de origen chino sobre sus infraestructuras. Tenían evidencias de que el objetivo final era la obtención de información sobre activistas chinos para los derechos humanos. Los laboratorios de McAfee analizaron varias muestras de malware involucrado en los ataques. Descubrieron que uno de los ejemplares aprovechaba una vulnerabilidad desconocida hasta la fecha en Internet Explorer, que permite ejecutar código arbitrario y que está reconocida pero no solucionada oficialmente.

Previamente, se especulaba con que una vulnerabilidad en Adobe Reader era el "vehículo" usado para ejecutar código en los sistemas de las víctimas. Si bien parece que también ha sido usado, se trata de vulnerabilidades ya conocidas que disponen de parche oficial,aunque no por ello menos graves.

Ahora, la Oficina Federal para la Seguridad de la Información alemana mantiene candente el asunto. Recomienda no usar Internet Explorer. ¿Tan inseguro es el navegador para que un gobierno recomiende suspender su uso? El problema es que en estos momentos, sufre una vulnerabilidad que está siendo aprovechada y para la que no hay parche. Es una situación por la que han pasado no solo todos los navegadores, sino muchísimas aplicaciones y sistemas operativos en algún momento de su historia. No es excusa, pero tampoco novedad. De hecho Internet Explorer ha vivido esta situación en muchas otras ocasiones, por ser objetivo favorito de atacantes y por retrasos en la publicación de soluciones.

Una cuestión que llama la atención, al margen de los enfrentamientos "ideológicos" sobre navegadores que suscitan este tipo de noticias, es que según El País, el gobierno recomienda a los usuarios que busquen una alternativa al navegador Internet Explorer de Microsoft, "para garantizar su seguridad". Esta afirmación es peligrosa, y puede llevar a equívocos. Evidentemente ningún navegador "garantiza la seguridad" sino que en lo posible y dada la situación (como siempre ocurre en seguridad) el uso de alternativas que no están siendo atacadas en estos momentos minimiza el riesgo. Pero también minimiza el riesgo (ahora y siempre) seguir usando Internet Explorer si se aprovechan y se entienden a las medidas de seguridad que implementa de serie, que en su versión 8 son numerosas y efectivas.

Por su parte, el portavoz de Microsoft en Alemania, Thomas Baumgaertner, ha replicado que los ataques a Google fueron llevados a cabo por "personas muy motivadas y con unos fines muy específicos". "No hubo ataques contra los usuarios comunes o los clientes de la firma. No hay amenazas para ellos, por eso no apoyamos esta recomendación". Baumgaertner olvida que el exploit no ha tardado en hacerse público, por tanto a día de hoy, cualquiera podría ser atacado.

Lo coherente, en todo caso, es practicar la defensa en profundidad ante las amenazas. Ya sea con el navegador o cualquier sistema informático, en todo momento. Se deben utilizar alternativas cuando exista un potencial riesgo mayor como el que ahora sufre el navegador de Microsoft, si es posible, pero no hay que relajarse por ello. No sabemos qué programa, ni de qué forma, puede estar siendo atacado en estos momentos

Tampoco es la primera vez que el gobierno alemán prohíbe el uso de un navegador. A principios de septiembre de 2008 Google lanza su nuevo navegador Chrome. Una semana después, Internet se inunda de comentarios sobre todos los aspectos de esta nueva aplicación y en particular sobre su seguridad. Muchos comentarios, exploits, más exploits y aclaraciones después, el gobierno alemán desaconsejó explícitamente el uso de este navegador. La Oficina Federal para la Seguridad de la Información alemana advirtió que resultaba arriesgado que los datos de un usuario fuesen acaparados por un único fabricante y desaconsejó abiertamente el uso del navegador Chrome en un importante informativo televisado.

Muchos ven en estas reacciones del gobierno alemán un movimiento más en contra de las grandes corporaciones americanas, que a favor de la seguridad de los usuarios. En cualquier caso, la recomendación, temporal hasta que Microsoft corrija el problema, no debe ser desatendida. No es un mal criterio aconsejar el uso de alternativas cuando no exista solución a un problema de seguridad.

 
(Fuente hispasec) 
 

Nueva sección de humor

¡Hola a todos!,

EiTheL InSide ha decidido incluir una nueva sección dedicada al humor. Evidentemente, al ser un blog técnico sobre GNU/Linux, los chistes que se incluyan serán relacionados con el mundo del software libre.



Bill Gates y su hijo


lunes, 18 de enero de 2010

Crear un servidor PXE en Ubuntu.

PXE hace referencia al entorno de ejecución de prearranque (Preboot eXecution Environment). Es un entorno para arrancar e instalar el sistema operativo en ordenadores a través de una red, de manera independiente de los dispositivos de almacenamiento de datos disponibles (como discos duros) o de los sistemas operativos instalados.
PXE fue introducido como parte del framework Wired for Management por Intel y fue descrito en la especificación (version 2.1) publicada por Intel y Systemsoft el 20 de septiembre de 1999. PXE utiliza varios protocolos de red como IP, UDP, DHCP y TFTP, y conceptos como Globally Unique Identifier (GUID), Universally Unique Identifier (UUID) y Universal Network Device Interface (UNDI).
El término cliente PXE sólo se refiere al papel que la máquina juega en el proceso de arranque mediante PXE. Un cliente PXE puede ser un servidor, un ordenador de mesa, portátil o cualquier otra máquina que esté equipada con código de arranque PXE.
(fuente Wikipedia)

Una de las cosas importantes a tener en cuenta cuando uno quiere instalar un sistema de arranque PXE es que PXE en si no existe, sino que es un conjunto de servicios ya existentes que configurados de manera adecuada crean un entorno o sistema de arranque. En entradas anteriores expliqué por separado dichas partes con el fin de poder explicar como se crea un sistema PXE con mayor facilidad. Los conceptos que deberíamos tener claros antes son:

Como en dichos artículos ya se explica el concepto de TFTP y DHCP y también se explica como se instalan, ahora pasaré a explicar la configuración que harán que dichos servicios actúen para crear un sistema PXE usando una imagen de Ubuntu para instalación en red:




Nos descargamos la imagen (netboot.tar.gz) con lo que queremos que nuestros clientes PXE arranquen y lo descomprimimos dentro de /var/lib/tftpboot.

Como podemos observar, nuestro servidor pxe arrancará mediante las directivas encontradas por el archivo de arranque por defecto:


cat /var/lib/tftpboot/pxelinux.cfg/default

include ubuntu-installer/i386/boot-screens/menu.cfg
default ubuntu-installer/i386/boot-screens/vesamenu.c32
prompt 0
timeout 0


Con esto ya tendremos preparado al servidor TFTP para servir la imagen de arranque de Ubuntu Installer.

Ahora tendremos que configurar el servidor DHCP para dotar de una IP a los nuevos clientes y le indique donde esta el servidor TFTP:

cat /etc/dhcp3/dhcpd.conf


option domain-name-servers 145.253.2.75, 193.174.32.18;

default-lease-time 86400;
max-lease-time 604800;

authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.10 192.168.0.49;
        filename "pxelinux.0";
        option subnet-mask 255.255.255.0;
        option broadcast-address 192.168.0.255;
        option routers 192.168.0.1;
        next-server 192.168.0.100;
}



Esto hará que automáticamente se le asigne al cliente una IP del rango 192.168.0.10 al 192.168.0.49. La puerta de enlace será la 192.168.0.1 . Todo esto pertenece a una configuración normal y básica de un servidor DHCP, si bién hemos de notar que tenemos el parámetro "filename", la cual nos dice que el cliente usará una imagen de arranque llamada pxelinux.0, que la buscará en un servidor TFTP especificado por el parámetro "next-server", que en el ejemplo es 192.168.0.100. En el caso de que no tuviéramos ningún otro servidor DHCP en nuestra red, no haria falta especificar "next-server" ya que se entenderia que el servidor TFTP esta en el mismo lugar que el servidor DHCP (osea, los dos servicios funcionando en la misma máquina y sin ningún otro servidor DHCP en la red).

Reinciamos el servidor DHCP y ya tendríamos todo configurado.

RESUMEN:




lunes, 11 de enero de 2010

Instalar un servidor TFTP

TFTP son las siglas de Trivial file transfer Protocol (Protocolo de transferencia de archivos trivial). Es un protocolo de transferencia muy simple semejante a una versión básica de FTP. TFTP a menudo se utiliza para transferir pequeños archivos entre ordenadores en una red, como cuando un terminal X Window o cualquier otro cliente ligero arranca desde un servidor de red.
(Fuente: Wikipedia)

Para instalar el servicio TFTP bastará con realizar:
sudo apt-get install tftpd-hpa
Una vez instalado (junto a sus dependencias), ya podemos configurarlo correctamente. Lo primero que tenemos que hacer es activar el TFTP, que por defecto viene desactivado. Para ello tenemos que editar el archivo /etc/default/tftpd-hpa : 
# Defaults for tftpd-hpa

RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"
Una vez hecho esto podemos usarlo para transferir archivos en red. Si lo que transeferimos es una imagen de disco, puede ser usado para arrancar en red un sistema operativo o cargar una imagen en un dispositivo para actualizar un firmware (un switch, un teléfono, etc).



Por ejemplo, una vez hemos activado el tftp ya podemos configurarnos nuestro espacio tftp para el arranque en red:

sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg
sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot
Aqui podemos ver que copiamos pxelinux.0 en la raíz del tftpboot ya que luego en el servidor DHCP le decimos que arranque con él.
Creamos un archivo default dentro de /var/lib/tftpboot/pxelinux.cfg/ ya que el PXE busca el archivo de configuración para el nodo que esta mirando de arrancar por este orden:
/var/lib/tftpboot/pxelinux.cfg/01-88-99-aa-bb-cc-dd
/var/lib/tftpboot/pxelinux.cfg/C000025B
/var/lib/tftpboot/pxelinux.cfg/C000025
/var/lib/tftpboot/pxelinux.cfg/C00002
/var/lib/tftpboot/pxelinux.cfg/C0000
/var/lib/tftpboot/pxelinux.cfg/C000
/var/lib/tftpboot/pxelinux.cfg/C00
/var/lib/tftpboot/pxelinux.cfg/C0
/var/lib/tftpboot/xelinux.cfg/C
/var/lib/tftpboot/pxelinux.cfg/default
En donde 01-88-99-aa-bb-cc-dd es la configuración para un nodo con esa dirección MAC y los demás archivos son para nodos con esa IP (hexadecimal). El archivo default se lee cuando no ha encontrado ninguna otra coincidencia. De esta manera, cada nodo puede disponer de su propio arranque. Así pues, primero creamos el archivo default y luego podremos renombrarlo con la MAC del nodo en cuestión: 

LABEL linux
KERNEL vmlinuz-2.6.31-14-generic-pae 
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-14-generic-pae nfsroot=192.168.0.100:/HPC/nfsroot_node2 ip dhcp rw

De esta manera arrancará el kernel vmlinuz-2.6.31-14-generic-pae y montará la raíz del sistema de archivos en NFS que esta en 192.168.1.100 en la carpeta nfsroot_node2. La IP la tomará por dhcp y será un sistema de lectura-escritura.
  • label indica el sistema operativo que vamos a arrancar.
  • kernel indica como se llama el fichero que contiene el kernel.
  • append son una serie de parámetros que podemos pasar al kernel. En la configuración que os doy indicamos que el servidor nfs está en un servidor concreto y donde monta el directorio raíz. Otra opción podría ser cargar el directorio raíz en RAM, siempre y cuando nuestros ordenadores dispongan de los suficientes megas.
 
RFC: http://tools.ietf.org/html/rfc1350

jueves, 7 de enero de 2010

Autenticación SSH mediante certificado.



La idea es que podamos abrir sesiones ssh sin necesidad de introducir una contraseña. Así pues, lo que decidimos es crear un certificado y propagarlo en los nodos. De esta manera, como los nodos ya conocerán el certificado del maestro, abrirán la sesión sin preguntar por ninguna contraseña.


Crear certificado 

Creamos un certificado en el nodo0 para que nos podamos identificar mediante él en los otros nodos (nodo1, nodo2, etc).
 
ssh-keygen -t rsa -b 2048 
 
Veremos que en nuestra carpeta se ha creado una oculta llamada .ssh con el siguiente contenido:

csi@nodo0:~/.ssh$ ls
id_rsa  id_rsa.pub  known_hosts

El archivo .pub es nuestra clave pública y es la que propagaremos en todos los nodos en los que queremos ser identificados sin necesidad de contraseña.

Propagar certificado en los nodos 

Una vez tenemos nuestro certificado creado, lo que tenemos que hacer es propagarlo por los nodos. Para ello usaremos la instrucción ssh-copy-id que lo que hace es copiar nuestro certificado via ssh en el destino especificado.
 
ssh-copy-id -i id_rsa.pub csi@nodo1
Con esto ya habremos conseguido que al conectar desde el nodo0 al nodo1 no nos pida contraseña.

That u don't know what you've got 'til it's gone