martes, 30 de septiembre de 2008

Imagen de disco duro: clonar un equipo con clonezilla

Tras la vorágine propia del comienzo de cualquier curso, parece que las cosas comienzan a ir "arreglándose" aunque nunca por sí mismas, ni de repente. El mes comenzó de modo un poco caótico: equipos nuevos para algunas aulas, servidores nuevos sin montar y por primera vez, la clara intención de montar todos los equipos con arranques duales linux-windows.

Para lograrlo decidimos reunirnos por las mañanas hasta dejar todo preparado para el primer día de clase. El discurrir de los acontecimientos nos demostaría que era imposible llegar a tiempo. Para empezar no hubo ningún servidor cuya instalación no diese problemas, cuánto más los servicios y servidores; desgraciadamente los fallos no acabaron ahí: los duendes se adueñaron de las aulas durante el verano y fallaron equipos, puntos de red, conmutadores, cables,.... todo aquello que es imposible que falle se ha estropeado y lo que nunca debería fallar también.

Personalmente lo único positivo que he sacado de este comienzo de curso es el descubrimiento de clonezilla, tanto en su versión live-cd como en la versión servidor para arrancar mediante PXE con este sistema de clonación de imágenes.

La primera cuestión que teníamos meridianamente clara ya a finales del curso pasado, era que intentaríamos realizar la instalación de las aulas clonando equipos iguales (cada aula tiene un tipo de equipo), es decir, hacer una instalación limpia en un equipo, subirla al servidor y desde ese servidor desplegar la imagen en los equipos restantes del aula mediante multicast, de modo que, partiendo de una imagen ya realizada, subir la imagen e instalarla en el resto del aula, fuese una tarea de poco más de una hora.

Para ello a final de curso pasado había probado en máquinas virtuales g4l, software del que en el enlace incluso podéis encontrar numerosos manuales. Las pruebas en las máquinas virtuales funcionaron perfectamente, tanto clonando equipos de modo individual o mediante FTP, como desplegando las imágenes mediante multicast a varios equipos a la vez, además conseguí montar un servidor de PXE para servir las imágenes de g4l, documentando el proceso para facilitar la tarea.

Otros programas comerciales como Norton Ghost, lo descartamos rápidamente por varias razones: la primera el precio, la segunda e igual o más importante, era que no clonaba correctamente las particiones linux, tal vez, debido a una cuestión de permisos, con lo que ni tan siquiera se podía iniciar el sistema.

Una de las primeras y muy desagradables sorpresas sucedió cuando comenzamos con la clonación de la primera aula y observamos que iba demasiado lento (tal vez debido al servidor FTP) y que no comprimía demasiado las imágenes. Para rematarla en muchas ocasiones se quedaba totalmente parada la subida de la imagen al servidor, además apenas comprimía la imagen de la partición ntfs. El resultado era que no nos valía para clonar los equipos.

Afortunadamente en un curso al que habíamos asistido algunos de los miembros del departamento impartido en el cefore, nos comentaron que en la universidad estaban usando clonezilla para realizar esta tarea.

Tras comprobar que ghost 4 linux no servía, bajamos el livecd de clonezilla -distribución basada en linux- y comenzamos las pruebas. Lo primero que hicimos fué crear la imagen de un equipo y subirla a un directorio compartido en un equipo con Windows.

Nos llevamos un par de sorpresas, la primera fué que, sin lugar a dudas, era el que realizaba la clonación de los equipos de manerar más rápida; la segunda que almacenaba y mostraba cada partición en un fichero, mostrando el tipo: ntfs, ext3,.... del que se trataba. Otras sorpresas, no menos agradables, fueron que tiene opciones para realizar las imágenes desde un disco externo, desde un servidor ssh, y por último, en la página del proyecto, existe un enlace que nos detalla cómo instalar un servidor PXE para arrancar los equipos a clonar mediante red, sin tan siquiera emplear un cd usando DRBL -podéis encontrar un manual de instalación de este paquete para Ubuntu en el enlace- que nos permite desplegar todas las imágenes mediante multicast (a todos los equipos a la vez) de manera muy rápida y sencilla. La opción estaba bastante clara....

A pesar de ello todavía tuvimos un par de problemas con el uso de DRBL (el servidor con PXE y clonezilla por red). El primero debido a que tenemos un servidor de DHCP lo que es incompatible con el funcionamiento de dicho servidor se solventa fácilmente, simplemente pausandolo (ojo, siempre puede surgir un segundo o tercer servidor de no se sabe muy bien dónde); el otro problema fué un poco más arduo, sobretodo, porque al intentar solventarlo, cuando ya estaba casi todo instalado en una máquina virtual, falló a las tantas de la madrugada,...la solución "final" fué instalar dos DRBL uno en la máquina de 64 bits que actúa como servidor -y que sirve la imagen a los equipos con procesadores de 64 bits- y otro en un equipo portátil de 32 bits (esto sólo para los procesos en los que sea necesario multicast, es decir, a principio de curso). Un consejo, sino es estrictamente necesario yo bajaría la imagen de DRBL directamente desde sourceforge.net y no mediante apt seguro, ya que tardarás en el segundo caso alrededor de 4-5 horas en bajarte todos los paquetes con sus dependencias.

Para ver manuales del mismo:

Manual de uso desde un live cd o pendrive: http://tecnoloxiaxa.blogspot.com/2008/12/manual-de-clonezilla-creacin-de-imgenes.html

Manual de instalación de un servidor para cargar la imagen desde la red: http://tecnoloxiaxa.blogspot.com/2008/09/cmo-instalar-un-servidor-pxe-con.html

jueves, 25 de septiembre de 2008

Cómo instalar un servidor PXE con clonezilla en Ubuntu: DRBL

Trataré en este documento de explicar cómo instalar y configurar el entorno DRBL que incluye entre otras cosas un servidor PXE y TFTP con clonezilla que nos permitirá clonar equipos en modo unicast o multicast -usando clonezilla- de modo que podamos tener una imagen de nuestro disco almacenada en un servidor y replicarla por ejemplo para instalar los equipos de un aula.

Este artículo es similar al que ya he publicado para cargar seleccionando arranque (boot) mediante PXE sin emplear ningún CD-ROM ni USB de arranque para ghost 4 linux (g4l) sólo que en este caso orientado al uso de clonezilla.

Como requisitos previos a la instalación es necesario apuntar que tenéis que disponer de dos tarjetas de red o emplear alias de ip ya que el servidor drbl empleará una tarjeta para conectarse a la LAN/Internet y la otra para asignar una IP dinámica a los equipos que arranquen por PXE y mandar por tftp la imagen del sistema operativo con clonezilla que permitirá clonar equipos.

Otro factor que se debería tener en cuenta es la versión del núcleo y CPU de los equipos que se van a clonar con clonezilla ya que, por defecto, empleará la misma del sistema (es muy importante si disponéis de máquinas de 32 y de 64 bits, ya que la de 32 no cargará la imagen que envía por defecto una máquina en la que se haya instalado un Ubuntu 64).

En breve colgaré manuales de uso y conguración del programa, con ejemplos de cómo desplegar un aula de equipos.

Seguiré los puntos del manual del proyecto original que, en inglés podéis encontrar en la fuente al final de este manual de instalación. En cualquier caso no es una traducción, ya que he eliminado numerosas cosas y he añadido algunas cuestiones de configuración que os preguntará el proceso de instalación. Es por lo anterior que, para seguir los puntos de dicho proyecto, el manual comienza en el punto 2 : Configuración de los clientes.

Configuración de los clientes:
Paso 2a

(antes de bajar el software mediante el siguiente proceso -puede tardar 4 o 5 horas en descargarse los paquetes- os recomiendo que si tenéis un sistema operativo Ubuntu o Debian de 64 bits, o bien no os importa recompilar el software, accedáis a la siguiente dirección de sourceforge y os bajéis directamente de ahí los paquetes ya que sólo tardaréis unos instantes en hacerlo. Están disponibles el paquete deb para 64 bits y los fuentes.

Si lo hacéis mediante el anterior método podéis pasar directamente al punto 2b)

1.- Agregamos el key del servidor para hacer un apt seguro:
primero lo descargamos y después lo añadimos:
wget http://drbl.nchc.org.tw/GPG-KEY-DRBL
apt-key add GPG-KEY-DRBL
2.- Editamos el fichero /etc/apt/sources.list y añadimos las siguientes
fuentes:
Si su distribución es is Etch (4.0):
----------
deb http://free.nchc.org.tw/debian/ etch main
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si su distribución está basada enSarge (3.1) (i.e. genuine Debian Sarge or other derived version like B2D pureKDE20051011 or others):
----------
deb http://free.nchc.org.tw/debian sarge main
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si su distribución es Woody (3.0):
----------
deb http://free.nchc.org.tw/debian/ woody main
deb http://free.nchc.org.tw/drbl-core drbl stable
deb http://www.backports.org/debian/ woody grep

----------

Si es Ubuntu Jaunty (9.04):
----------
deb http://free.nchc.org.tw/ubuntu jaunty main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable

----------
Si es Ubuntu Hardy (8.04):
----------
deb http://free.nchc.org.tw/ubuntu hardy main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable

----------
----------
Si es Ubuntu Gutsy (7.10):
----------
deb http://free.nchc.org.tw/ubuntu gutsy main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si es Ubuntu Feisty (7.04):
----------
deb http://free.nchc.org.tw/ubuntu feisty main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si es Ubuntu Edgy (6.10):
----------
deb http://free.nchc.org.tw/ubuntu edgy main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si es Ubuntu Dapper (6.06):
----------
deb http://free.nchc.org.tw/ubuntu dapper main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable
----------
Si es Ubuntu Breezy (5.10):
----------
deb http://free.nchc.org.tw/ubuntu breezy main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable

3.- Ejecutar: "apt-get update"
4.- Ejectuar: "apt-get install drbl" para instalar el programa


Paso 2b:
Suponiendo que disponemos de conexión a Internet, ejecutamos:
"/opt/drbl/sbin/drblsrv -i"
nos hará bastantes preguntas relativas a la configuración del servidor drbl:

(si necesitamos el linux-image-2.6.24-20-386 o
linux-image-2.6.24-21-386 o similar y no encuentra el paquete deberemos añadir a /etc/apt/sources.list

deb http://us.archive.ubuntu.com/ubuntu/ hardy-proposed main restricted universe multiverse

deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-proposed main restricted universe multiverse
)
1.- Si queremos bajarnos los ficheros para posibilitar la instalación mediante pxe y red de algunas distribuciones linux (Debian, Ubuntu, RedHat Linux, Fedora Core, Mandriva, CentOS and OpenSuSE...) si pulsamos y le llevará su tiempo, sino lo necesitamos, dejamos la opción por defecto N. Si tecleamos Y puede darnos el fallo sino hemos añadido las dos líneas de repositorios citadas)


2.- Si queremos usar la consola serie para los clientes dejamos N o nuestros clientes no verán nada en su pantalla.


3.- Qué cliente mandaremos por PXE, es importante si en nuestro entorno tenemos distintos tipos de CPU (por experiencia), en este caso por ejemplo:
0 -> i386 level CPU
1 -> i586 level CPU
2 -> Use the same CPU level with that of this DRBL server
*os recuerdo que si fallan los repositorios deberíais añadir las líneas mencionadas a vuestros repositorios.


4.-Deseas actualizar tu sistema operativo.
*si todo va bien comenzará a bajar unos cuantos paquetes.



PASO 3.
Antes de llevar a cabo el paso 3a hemos de asegurarnos de que nuestro equipo tiene dos tarjetas de red, o en su defecto, al menos 2 ip distintas, ésto se puede conseguir en equipos con una única tarjeta mediante el uso de alias de ip.


Una de las direcciones de red, es la que conectará con nuestra LAN habitual, y la otra/s dirección es la que empleará el servidor de drbl para empleando PXE,dhcp y tftp enviar las imágenes a los equipos que habrán de iniciarse mediante arranque PXE.


3a.- Ejecutamos:
/opt/drbl/sbin/drblpush -i
Pedirá:
a.- Nombre del dominio.
b.- Nombre del dominio NIS/YP
c.- Prefijo que se antepondrá al nombre de los equipos clonados
d.- Selecionamos cuál es la tarjeta que tendrá salida aInternet (la que conecta con la LAN) tecleando eth0, eth1,..
e.- Si queremos que vaya almacenando MAC-IP (nuestro drbl) para asignarle siempre la misma IP a los mismos equipos.
f.- Si queremos permitir a los clientes conectados a nuestro servidor DHCP que se les ofrezca siempre la misma IP (habrá que almacenarlas como en el caso anterior)
g.- Cuál es el número inicial que queremos emplear de las IPs a emplear.
h.- Número de equipos que van a clonarse (por sesión), esto limitará el número de IPs que podrá asignar nuestro servidor de DHCP.
i.- Nos pide confirmación de los últimos datos asignados.
j.- Tipo de servidor: en mi caso Full DRBL mode (cada equipo tiene su propio disco duro, particiones,...) opción "0"
k.- Modo del servidor de clonezilla "Full clonezilla mode" cada equipo tiene sus propios /etc y /var basadas
en NFS
l.- Path absoluto al lugar dónde vamos a guardar las imágenes
m.- Si existe disco duro en el cliente quieres usar una parte para swap. "Y"
n.- De qué tamaño?
ñ.- Qué modo quieres para los clientes: gráfico o texto. Escoged el segundo carga más rápido y tenéis una interfaz gráfica en modo texto (podéis usar cursores,...)
o.- Le ponemos una contraseña al usuario root de los clientes que intenten acceder como tales distinta a la contraseña de root de la máquina para mayor seguridad?
p.- Quieres ponerle una contraseña para que los usuarios que quieran acceder a las opciones de arranque tengan que introducirla.
q.- Quieres ponerles la línea de boot a los clientes (en x segundos se iniciará la opción seleccionada)
r.- De cuánto tiempo?
s.- Si usas modo gráfico puedes cambiar al modo texto en caso de fallo de los clientes.
t.- Quieres dejar habilitado audio, USB,... a los clientes?
v.- Asignar IPs públicas a los clientes?
w.- Quieres permitir a los clientes ejecutar una sesión en modo terminal.
x.- Quieres usar el servidor DRBL como servidor NAT (en otro caso los clientes no podrán salir a Internet).
y.- Quires mantener la configuración de los clientes de DRBL si existe una?
z-. Actualizará las reglas del cortafuegos para permitir nat.

A partir de este momento, cada vez que hagamos alguna instalación de nuevos paquetes deberemos ejecutar "/opt/drbl/sbin/drblpush -i" o "/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf" esta última si queremos mantener la configuración que teníamos previamente de DRBL. Es recomendable por este motivo desactivar las actualizaciones automáticas ya que podrían tener como consecuencia que los clientes no pudieran cargar el nuevo sistema.

Para instalar los sistemas en equipos que no dispongan en BIOS de arranque por PXE podremos emplear etherboot

1) La imagen está localizada en /opt/drbl-etherboot/etherboot-net.iso
2) quemar el ISO en un CD:
cdrecord -v speed=12 fs=16m dev=0,0,0 -data etherboot-net.iso
(si es necesario, modificamos "dev=0,0,0", ejecutar"cdrecord -scanbus" para obtener nuestro grabador de CD)
3) Asegurarse de que el PC está configurado para arrancar desde CDROM, ponemos el CD en el lector y reiniciamos


Para configurar el servidor drbl tenemos varios scripts en /opt/drbl/bin y /opt/drbl/sbin, el más útil, sin duda, es /opt/drbl/sbin/dcs


Para desinstalar drbl y los paquetes dependientes /opt/drbl/sbin/drblsrv -u , del mismo modo, si lo que queremos es actualizar, podemos desinstalar y volver a ejecutar los pasos de la instalación.

Fuentes:
http://ubuntuforums.org/showthread.php?p=5816950

http://sourceforge.net/projects/drbl/

http://drbl.sourceforge.net/one4all/

http://clonezilla.org/ Página del proyecto

http://sourceforge.net/project/showfiles.php?group_id=73280 (descarga de los paquetes)

miércoles, 24 de septiembre de 2008

Montar un directorio en Ubuntu desde/hacia un servidor SSH con FUSE


Os copio a continuación un artículo que os indicará cómo montar un directorio localmente en nuestro equipo mediante el protocolo SSH de modo que nos podamos conectar a cualquier directorio del servidor SSH cómo si se tratara del nuestro (la fuente al final de la página, como siempre) (si queréis ver cómo instalar el servidor de ssh, consultad el enlace):
Todos los que mantenémos un servidor, o tenemos más de una máquina que queremos mantener remotamente, usamos SSH. SSH es seguro y rápido, y sólo basta que el servidor tenga acceso a SSH para poder utilizarlo, lo que está permitido en cualquier parte. Ahora, con todas las gracias que tiene, ssh puede ser un poco molesto si se tienen que copiar archivos, y como en efecto somos un usuario común en el servidor, estamos limitados a los programas instalados en este. Soluciones a este problema es usar NFS u otro archivo de sistema en redes, pero la desventaja es que es inseguro, y por supuesto, necesitas autorización del administrador de sistemas (¡buena suerte!).
Este el problema básico que soluciona SSHFS. Utilizando FUSE, o Filesystem in User Space, SSHFS te permite “montar” localmente un directorio remoto usando SSH. He aquí como hacerlo:
1.- Asegúrate que el kernel que estás usando incluye FUSE (está incluído en de la versión 2.6.14 para adelante). Si no lo está, es posible instalar el módulo: en Debian/Ubuntu, basta con instalar fuse-source desde synaptic, e instalar con module-assistant.
2.- Instalar SSHFS. Está en los repositorios de muchas distribuciones, como Debian/Ubuntu, Gentoo, etc. En Debian, basta instalar sshfs con synaptic. O simplemente "apt-get install sshfs".
3.- Carga el módulo: ‘modprobe fuse’ como administrador.
4.- Tamos casi listos: pasos 1-3 solo se hacen una vez, y ya estamos listos para utilizar nuestar cuenta SSH como un vulgar directorio en nuestro PC. Basta hacer:
sshfs usuario@servidor.com:dir_remoto dir_local
y presto. Ahora puedo ver, copiar, editar, etc, etc. todo lo que está en dir_remoto simplemente accediendo a dir_local. Para “desmontar” el directorio, basta hacer:
fusermount -u dir_local
7.- Eso es todo.
8.- O no: hay una larga lista de otros archivos de sistemas que usan FUSE. Entre ellos, gmailfs, que permite usar tu cuenta de gmail como un disco remoto, o WikipediaFS, que te permite acceder y editar artículos de la Wikipedia como archivos locales (hay cada loco…).

Cómo Instalar y configurar servidor ssh en Ubuntu


SSH (acrónimo del inglés Secure SHell, cuya traducción sería intérprete de comandos seguro) es un protocolo de comunicación para controlar un ordenador en remoto a través de una CLI (Command Line Interface -Interfaz de Línea de Comandos- también llamada: "shell"). Sirve para conectarnos con un ordenador ante el cual no estamos físicamente, bien porque está en una sala de servidores refrigerada, bien porque no tiene teclado ni pantalla, por ejemplo los que están apilados en un rack (un armario donde se guardan ordenadores como los servidores web, de correo electrónico, firewalls, etc...).

Es parecido a Telnet, con la gran diferencia de que en el caso de ssh, la información viaja codificada con lo cual es muchísimo más segura, en el caso de conectarnos a un ordenador que esté en nuestra LAN no es tan importante, pero si nos conectamos a través de Internet es fundamental, casi diría que imprescindible, usar un protocolo seguro como SSH.

Otro de los usos que se le pueden dar y que trataré los próximos post, es el copiado de archivos mediante este protocolo y otros programas como scp, incluso existen algunos paquetes que nos permiten montar una unidad de modo similar a las carpetas compartidas de windows o NFS en un equipo.

El cliente ya viene instalado por defecto, de modo que para instalar el servidor de SSH en nuestro sistema lo único que necesitas es instalar el paquete openssh-server.

apt-get install openssh-server


Los archivos de configuración del servidor ssh son:

/etc/ssh/ssh_config: Archivo de configuración del cliente ssh

/etc/ssh/sshd_config: Archivo de configuración del servidor ssh



Restringir el acceso SSH

Para evitar que todos los usarios de la máquina estén accesibles por SSH tendremos que editar como root el fichero /etc/ssh/sshd_conf, y añadir la línea AllowUsers y a continuación los usuarios que deseamos que se puedan conectar remotamente via SSH:

$ sudo gedit /etc/ssh/sshd_config

Y añadimos la línea:

AllowUsers usuario1 usuario2 usuario3

También podemos restringir el acceso dependiendo de la ip de los equipos que intenten acceder a nuestro servidor. Para ello tendremos que editar los ficheros /etc/hosts.allow y /etc/hosts.deny.

En /etc/hosts.deny añadimos la siguiente línea:

#denegamos el acceso a todos los equipos que no demos de alta en hosts.allow

sshd: ALL

en /etc/hosts.allow ponemos, por ejemplo:
#permitir el acceso a la red 192.168.1.0/24 y al equipo 10.10.1.1
sshd: 192.168.1.0/24 10.10.1.1


Para que los cambios surtan efectos habrá que reiniciar el servidor:

$ sudo /etc/init.d/ssh restart

* Restarting OpenBSD Secure Shell server...


Arranque y parada manual del servidor ssh

El servidor ssh, al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la carpeta /etc/init.d.

// Iniciar o Reiniciar el servidor ssh
root@cnice-desktop:# /etc/init.d/ssh restart
// Parar el servidor ssh
root@cnice-desktop:# /etc/init.d/ssh stop

Arranque automático del servidor ssh al iniciar el sistema.

# update-rc.d ssh defaults
Si queréis montar alguna de las particiones de este servidor en un equipo cliente empleando el servidor ssh recién montado, consultad este enlace.
Para probar que realmente funciona, lo único que tenemos que hacer es teclear en el equipo en el que hemos instalado el servidor:

ssh nombre_de_usuario@localhost

Conexión al servidor mediante ssh

Para conectar desde un PC cliente al servidor mediante ssh, debemos ejecutar el comando ssh seguido del nombre ó dirección IP del servidor. La conexión se realizará con el mismo nombre de usuario que estemos utilizando en el PC cliente. Ejemplo, supongamos que jessica, desde el PC llamado aula5pc3, quiere conectarse al servidor cuya IP es 192.168.1.239:

// Conexión por ssh
jessica@aula5pc3:~$ ssh 192.168.1.239
The authenticity of host '192.168.1.239 (192.168.1.239)' can't be established.
RSA key fingerprint is 51:70:3f:9c:ac:49:52:74:88:f5:45:a6:ae:f0:9c:8a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.239' (RSA) to the list of known hosts.
Password: // Introducir contraseña de jessica
jessica@cnice-desktop:~$ // Ya estámos en el servidor

La primera vez que se conecte alguien desde dicho PC cliente, se instalará el certificado de autentificación del servidor, lo cual es normal si se trata de la primera vez. A la pregunta 'Are you sure you want to continue connecting (yes/no)?' debemos responder 'yes' ya que de lo contrario la comunicación se cortará. Si ya nos hemos conectado anteriormente otras veces y vuelve a realizar ésta pregunta, significa que alguien se está haciendo pasar por el servidor (nuestro servidor ha sido hackeado) o que se ha reconfigurado el servidor (cambio de nombre, IP, etc...)

Si deseamos conectarnos al servidor utilizando un nombre de usuario diferente, debemos incluir el nombre de usuario antes del nombre o IP del servidor y separado por una arroba '@'. Ejemplo, supongamos que jessica, desde el PC llamado aula5pc3, quiere conectarse como miguel al servidor cuya IP es 192.168.1.239:

// Conexión por ssh como otro usuario
jessica@cliente:~$ ssh miguel@192.168.1.239
Password: // Introducir contraseña de miguel en el servidor
miguel@servidor:~$ // Ya estámos en el servidor como miguel

Desde PCs con Windows es posible conectarse por ssh a servidores Linux mediante el programa Putty. Se trata de un cliente ssh para Windows que permite acceder en modo texto al sistema Linux desde sistemas Windows.

Servicios adicionales

El paquete ssh no solamente nos proporciona conexión remota sino que proporciona otros servicios como:

Ejecución remota de aplicaciones gráficas

Mediante ssh existe la posibilidad de ejecutar aplicaciones gráficas en el servidor y manejarlas y visualizarlas en el cliente. El servidor ssh deberá tener activada la redirección del protocolo X, es decir, deberá tener el siguiente parámetro en el archivo de configuración /etc/ssh/ssh_config:

// Habilitar la redirección X en /etc/ssh/sshd_config
X11Forwarding yes

Ejemplo: supongamos que en nuestro terminal tenemos Damn Small Linux (que no dispone del gimp) y deseamos conectarnos a otro PC que sí que tiene instalado el editor gráfico gimp, los pasos que haremos serán:

// Ejecutar aplicaciones gráficas
jessica@cliente:~$ ssh -X cnice@192.168.1.239 // -X para redirigir Xwindows.
cnice@cnice-desktop:~$ gimp // Ejecutamos el gimp

El resultado será que desde nuestro Linux sin gimp estamos manejando el gimp que se está ejecutando en el PC remoto

Desde PCs con Windows es posible conectarse por ssh a servidores Linux de forma gráfica mediante Cygwin. Se trata de un conjunto de programas libres que simulan un 'Unix para Windows' con servidor gráfico X y cliente ssh para Windows entre otras cosas, que permite acceder en modo gráfico al sistema Linux desde sistemas Windows. Otros servidores X gratuitos para Windows son Xming y Mocha.

Servidor de ftp seguro

El paquete ssh también incorpora un servidor ftp seguro y un cliente ftp seguro. Para activar el servidor ftp seguro tan solo hay que tener arrancado el servidor ssh.

El cliente ftp seguro es el comando sftp que funciona igual que el comando ftp. También podemos utilizarlo desde un navegador como Konqueror escribiendo sftp://nombre-del-usuario@nombre-del-servidor por ejemplo en la url: sftp://miguel@www.ieslapaloma.com


Copia remota de archivos

También se dispone de el comando scp que permite copiar archivos desde y hacia el servidor remoto desde el cliente. Ejemplo, si deseamos copiar el archivo /etc/hosts del servidor cuya IP es 192.168.1.239 e identificándonos como jessica en la carpeta actual de nuestro PC, ejecutaremos el siguiente comando:
// Copiar un archivo del servidor a nuestro PC
root@cliente:~# scp jessica@192.168.1.239:/etc/hosts .
Password: // Introducimos la contraseña de jessica en el servidor
hosts 100% 443 0.4KB/s 00:00 // Archivo copiado
root@cliente:~#

// Copiar un archivo de nuestro PC al servidor

// La carpeta de destino debe existir en el servidor
root@cliente:~# scp miarchivo.txt jessica@192.168.1.239:/home/jessica/pruebas/
Password: // Introducimos la contraseña de jessica en el servidor
miarchivo.txt 100% 443 1.6KB/s 00:00 // Archivo copiado
root@cliente:~#

// Copiar una carpeta y subcarpetas de nuestro PC al servidor
root@cliente:~# scp -r /datos/*.* jessica@192.168.1.239:/pruebas/datos/
Password: // Introducimos la contraseña de jessica en el servidor
datos/*.* 100% 443 50.6KB/s 00:03 // Archivos copiados
root@cliente:~#

Desde PCs con Windows es posible utilizar el programa WinSCP que permite copiar archivos desde y hacia el servidor. Se trata de un cliente que utiliza el protocolo ssh para acceder al sistema de archivos del servidor Linux desde sistemas Windows.

Identificación por certificado

Para evitar tener que introducir continuamente la contraseña cuando deseamos conectar con un servidor remoto por ssh, existe la posibilidad de autentificarse por certificado, para ello debemos:

  1. Crear un certificado de usuario en el PC cliente
  2. Copiar el certificado en el PC servidor

Para que el servidor ssh acepte la autentificación por medio de certificado, deberá tener activada la opción PubkeyAuthentication yes, es decir, deberá tener el siguiente parámetro en el archivo de configuración /etc/ssh/sshd_config:

// Permitir autentificación por certificado
PubkeyAuthentication yes

Crear un certificado en el PC cliente

Para crear un certificado que permita autentificar al usuario, debemos ejecutar el comando ssh-keygen. Dicho comando creará dentro de nuestra carpeta home, en una carpeta llamada '.ssh', dos archivos: uno llamado id_rsa que será la clave privada de nuestro certificado y otro llamado id_rsa.pub que será la clave pública de nuestro certificado. Éste último archivo será el que hay que copiar en el servidor remoto.

// Creación de un certificado
miguel@cliente:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/miguel/.ssh/id_rsa):
// Archivo del certificado. Podemos dejar el que viene por defecto
Created directory '/home/miguel/.ssh'.
Enter passphrase (empty for no passphrase): // Opcional
Enter same passphrase again:
Your identification has been saved in /home/miguel/.ssh/id_rsa.
Your public key has been saved in /home/miguel/.ssh/id_rsa.pub.
The key fingerprint is:
c8:a4:fe:0c:19:78:8e:7d:05:5b:13:df:37:17:e8:ea miguel@dsl.ieslapaloma.com
miguel@dsl:~$

Copiar el certificado en el PC servidor

Para poder identificarse en el servidor como miguel desde el cliente, debemos copiar el archivo id_rsa.pub que hemos creado en el cliente, en la carpeta home de miguel en el servidor dentro de una carperta llamada '.ssh' en un archivo llamado authorized_keys. Para copiar dicho archivo del cliente al servidor, podemos hacerlo con scp. Supongamos que el cliente se llama 'cliente' y el servidor se llama 'servidor':


// Copia del certificado y prueba de la conexión
// Nota: el símbolo ~ en Linux es la carpeta home del usuario
miguel@cliente:~$ scp ~/.ssh/id_rsa.pub miguel@servidor:~/.ssh/authorized_keys
Password: // Va a ser la última vez que introduzcamos la contraseña
id_rsa.pub 100% 242 0.2KB/s 00:00 // Copiado
miguel@cliente:~$ ssh miguel@servidor // Probamos la conexión
miguel@servidor:~$ // Ya estamos en el servidor sin necesidad de contraseña

Fuente:
http://www.guia-ubuntu.org/index.php?title=Servidor_ssh#Instalaci.C3.B3n_del_servidor_SSH
Página del isftic : Curso Redes de Área Local. Aplicaciones y servicios en Linux. del isftic http://www.isftic.mepsyd.es/formacion/materiales/85/cd/REDES_LINUX/indice.htm

sábado, 20 de septiembre de 2008

Una de presentes

Hoy me han dado mi primer -espero- regalo virtual, que me llega de parte de ladespeinada. Además de agradecérselo desde aquí, e insistir en que es totalmente inmerecido, como no quiero que se rompa la cadena, me gustaría "reenviarlo" a algunos foros que me parecen interesantes:

DonCesarBlogs: por sus comentarios y consejos.
El mundo de papá Pancho: cualquiera que sea papá lo comprenderá, las mamás más
exnihiloex: porque me encanta y escriben de modo que me sería imposible imitar
As Uvas na Solaina: porque fué el que me "abrió" la ventana de los blogs y al que mando muchos ánimos y fuerzas.
José Luis Fdez Carnicero: además de interesante, su descendencia soporta a la mía, que más puedo decir.

martes, 16 de septiembre de 2008

Crear IP Alias en Ubuntu



A veces necesitamos asignar más de una dirección IP a nuestra tarjeta de red, para ello podemos emplear lo que se conoce como alias de ip, es decir, asignamos varios nombres e ip a una única tarjeta de red. Para hacerlo podemos emplear dos métodos editando los siguientes archivos:

1. /etc/rc.local


En el archivo rc.local colocas la linea con la que configuras la interfaz virtual
ifconfig eth0:0 192.168.1.1
Por ejemplo, asi, cada que se inicie el sistema, esta linea se va a ejecutar (para eso es el rc.local)

2. /etc/network/interfaces
En este archivo podrias tener la siguiente configuración:

auto lo

iface lo inet loopback

iface eth1 inet static

address 192.168.1.1

netmask 255.255.255.0

network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.254

auto eth1


iface eth1:0 inet static

address 192.168.2.1

netmask 255.255.255.0

auto eth1:0


iface eth1:1 inet static

address 192.168.3.1

netmask 255.255.255.0

auto eth1:1

Asi automaticamente al inicio (o cuando se reinicie el servicio de network tecleando: /etc/init.d/networking restart) se configurarán las tarjetas con las ip asignadas

Fuente: https://answers.launchpad.net/ubuntu/+question/13711

sábado, 13 de septiembre de 2008

Dinamización de las TICS en los centros

Os copio un artículo sobre el tema sacado de: http://ticblog.wordpress.com/2008/09/12/regresando-as-orixes/

Regresando ás orixes

Non durou demasiado a emigración virtual. Comentaba nela que cando se desen condicións favorables para as TIC no meu centro, este blogue volvería ser o do coordinador TIC.

Non é que as condicións mellorasen demasiado, pero algo si.

O feito de que se anotasen para dinamización TIC 17 profesoras/es e que contemos con dúas sesións semanais dentro do horario lectivo para dinamizar as TIC representa unha mellora que, se ben noutras comunidades autónomas puidese parecer pouco significativa toda vez que aquí non se incrementaron os medios tecnolóxicos, a min resúltame suficiente como para regresar ás orixes e volver utilizar este blogue para coordinar as TIC no CPI.

Xa que tamén temos aberta a rede Ning, en modo privado, para o profesorado do centro serán dúas referencias fundamentais para coordinar e aprender todo o que poidamos.

O desexo de incorporar as TIC ao ensino é moi forte e agora somos máis profesoras e profesores con ese obxectivo.

Ademais, Román volve estar connosco.

jueves, 11 de septiembre de 2008

Discurso de graduación de Steve Jobs en Stanford


Os dejo a continuación el discurso que pronunció Steve Jobs en la universidad de Stanford con objeto de la graduación de alumnos:

martes, 9 de septiembre de 2008

Cómo instalar Ubuntu desde un Pen Drive o Disco USB

En alguna ocasión deberemos instalar nuestra distribución linux en un equipo que no disponga de lector de cd/dvd para ello podremos emplear un simple pen drive. Otra alternativa sería mediante un lector externo conectado al puerto USB.

Para la preparación del pen drive para su arranque se pueden presentar dos situaciones: la primera, que el equipo desde el que deseamos generar el pen drive de arranque tenga instalado un sistema windows (yo lo he probado desde windows vista con Ubuntu 8.04) y la otra posible que el sistema contenga una distribución linux. A continuación os describo qué hacer en ambos casos.

He de aclarar que yo he probado la de windows y funciona perfectamente; del mismo modo, este manual lo he sacado -copy/paste- tal cual de las fuentes que encontraréis al final del documento y a quienes agradezco su trabajo (mis compañeros de departamento creo que también -un saludo al que lo lea- ya que mañana ya tendremos un pen drive con el ubuntu 8.04):

He escrito posteriormente a este artículo otro en el que empleo un programa con interfaz gráfica para generar el pendrive o USB que os permita instalar Ubuntu -y muchas otras distribuciones- de un modo sencillo, desde el mismo, lo podéis encontrar en el siguiente enlace: http://tecnoloxiaxa.blogspot.com/2008/10/cmo-instalar-linux-desde-un-pendrive.html

1.- Generar Pen drive de arranque desde un sistema Windows:

El proceso se basa en dos apartados: el primero será crear una unidad USB con los archivos de la instalación y el segundo la instalación y puesta a punto del sistema.

Los requisitos necesarios serán:

  • Una imagen ISO de la instalación de Ubuntu 8.04.
  • Un memoria USB de al menos 1GB de capacidad.
  • La aplicación UB8convert para volcar la ISO al pen USB (enlace).
  • Un equipo con puerto USB y posibilidad de arranque desde el mismo configurable en la BIOS.
  • Otro equipo con Windows para preparar el pen USB.

Preparar la memoria USB

Aunque se podría lanzar la instalación directamente desde el CD mediante una unidad externa conectada por USB, en mi caso se me quedaba colgada al pasar del menú inicial al sistema de instalación. Este método en cambio me funcionó sin problemas. Es recomendable que la memoria USB sea tipo flash, es decir, los típicos pen y no los discos duros externos.

Conectamos la memoria USB al ordenador y la formateamos: Mi PC -> Unidad USB -> Botón derecho -> Formatear.

Descargamos la aplicación UB8convert , la ejecutamos y pulsamos en Extract. Nos creará una carpeta llamada Ubuntu8.

Descargamos [si no la tenemos] la ISO de Ubuntu 8.04 y la movemos dentro de la carpeta Ubuntu8.

Entramos en la carpeta Ubuntu8 y hacemos click en el archivo fixu.bat. Nos abrirá una ventana de MS-DOS y pulsamos enter para continuar.
Este proceso volcará todos los archivos de la ISO a una carpeta llamada USB-Ubuntu.

Una vez finalizado el proceso, entramos en la carpeta USB-Ubuntu y copiamos todos los archivos y carpetas que estén ahí dentro a la memoria USB [al raíz].

Vamos a la memoria USB y ejecutamos el archivo makeboot.bat. Esto nos abrirá una ventana de MS-DOS y pulsaremos enter para lanzar ejecutar el script. Esto nos convertirá la unidad USB en autoarrancable. (Puede que os dé un error de permiso de escritura pero al final os dirá que lo ha generado con éxito, de hecho funcionará)

Tras finalizar el script tendrás la memoria USB lista para utilizar en el equipo, tan sólo tendrás que configurar la BIOS del mismo para inciarlo desde el dispositivo USB.

2.- Generar Pen Drive de arranque desde un sistema Linux:

Ian Connor explicaba hace unos meses un método muy sencillo para poder instalarlo desde una memoria o disco USB. Necesitaremos un pc conectado a internet y con grabadora de cd. Vamos a ver que pasos hay que seguir.

  • En primer lugar debemos descargarnos la imagen de Ubuntu Linux, por supuesto, lo que podemos hacer desde el sitio web oficial de Ubuntu. Y la grabamos en un cd de la manera habitual.
  • Despues nos descargaremos la utilidad Syslinux para Windows.
  • Copiaremos el contenido del cd de Ubuntu Linux que hemos grabado a nuestra memoria o disco USB (no es necesario que estén vacios, sólo que haya espacio suficiente).
  • Descomprimimos Syslinux.zip y lo ejecutamos (desde una ventana de DOS) contra nuestro dispositivo USB desde el directorio donde tenemos Syslinux (si nuestro dispositivo USB es F: la instrucción sería syslinux.exe -f F:)
  • Copiamos estos archivos al directorio raíz de nuestro dispositivo USB:
    - vmlinuz (lo encontraremos en el directorio casper\vmlinuz)
    - initrd.gz (lo encontraremos en el directorio casper\initrd.gz)
    - syslinux.cfg (renombraremos el archivo isolinux\isolinux.cfg a syslinux.cfg y lo copiaremos al raiz del USB)
  • Editamos syslinux.cfg de manera que vmlinuz e initrd.gz apunten al directorio root del dispositivo USB:

    DEFAULT /casper/vmlinuz
    GFXBOOT bootlogo
    GFXBOOT-BACKGROUND 0xB6875A
    APPEND boot=casper initrd=/casper/initrd.gz ramdisk_size=1048576 root=/dev/ram
    rw quiet splash –

    ….lo cambiaríamos por….

    DEFAULT vmlinuz
    GFXBOOT bootlogo
    GFXBOOT-BACKGROUND 0xB6875A
    APPEND boot=casper initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram
    rw quiet splash –

  • Expulsamos el dispositivo USB y lo conectamos al portátil. Lo arrancamos y pulsamos F2 para acceder a la BIOS y poder establecer nuestro dispositivo USB como predeterminado en el arranque.


Artículos relacionados:


Fuentes:

1.- Generación desde un equipo con sistema Windows Instalado:

http://www.hnkweb.com/2008/05/16/instalar-ubuntu-804-en-el-eee-pc-900/

En el anterior enlace, además econtraréis un segundo apartado, dónde os cuenta cómo optimizar instalación y drivers para un Asus EeePc 900, así como más enlaces a las fuentes originales que son las siguientes:

Artículos originales y referencias:


sábado, 6 de septiembre de 2008

Inves Junior: el nuevo ultraportátil de "El corte Inglés"



El de la imagen es el último ultraportátil puesto a la venta en nuestro país a través del Corte Inglés.

Las características son similares a las del resto de equipos de estas características salvo por el enfoque que han querido darle al mismo. En este caso creo que se han sentido más atraídos por la idea original del proyecto OLPC y han apostado por un equipo destinado, en principio, a los niños de la casa, ya que entre otras cosas han incluido en el mismo: software de control parental con el que poder controlar contenidos y horarios de acceso a Internet y un teclado supuestamente resistente a líquidos. También incluye, según la información oficial, posibilidad de restaurar el sistema operativo original en caso de fallo de modo sencillo - por cierto han optado por Windows XP-.

Si te ha interesado esta noticia, tal vez te interese esta comparativa de ultraportátiles ya a la venta en España: http://tecnoloxiaxa.blogspot.com/2008/08/ultraporttiles-netbooks-ya-la-venta.html

El precio de venta es de 379€ y el resto de características son las siguientes:

Portátil Inves 8,9'' Junior Intel Atom N270

Ficha Técnica
Marca: Inves
Funcionalidad: Ultra portátil
Procesador: Intel Atom N270
Velocidad del Procesador: 1,6 GHz
Memoria RAM: 512 MB.
Disco Duro: 30 GB.
Audio:
- 2 canales integrado en chipset
- 1 x altavoces estéreo inetgrado
- Micrófono integrado
Tarjeta de Red: LAN Ethernet 10/100M integrada
Conexiones inalámbricas: WLAN 802.11 b/g
Tipo de Batería: Litio-Ion de 4 celdas
Dispositivos Entrada / Salida:
- 1 x conector RJ-45
- 2 x puertos USB 2.0
- Lector de tarjetas de memoria SD
- Cámara CMOS 0,3MP 640x480 integrada en pantalla
Tamaño de Pantalla: 8,9"
Tipo de Pantalla: TFT LCD, WXGA
Resolución máxima: 1024x600 ppp
Tipo de Teclado: Resistente a líquidos. Incluye también teclas de selector de visualización LCD/CRT, control de brillo LCD, teclado numérico, control de volumen, acceso directo a navegador de Internet y correo electrónico.
Tipo de Ratón: Mouse Pad de panel táctil con 2 botones
Dimensiones: 238 x 135 x 42 mm.
Peso: 1,27 Kg.
Alimentación: Adaptador de corriente 19V DC, 65W. 100~240V AC, 50~60Hz universal
Sistema Operativo preinstalado: Windows XP Home
Software preinstalado:
- Antivirus con actualización gratuita via Internet durante 3 meses
- Herramienta de Recuperación del sistema, le permite restaurar de nuevo su sistema operativo en su ordenador Inves
Garantía: 2 años.
Más información:
Software PARENTS CAREFREE:
- Controlar el acceso del menor a los sitios de internet
- Regular el acceso a las aplicaciones instaladas
- Programar el tiempo de acceso en distintos horarios y días
- Supervisar toda la actividad y pasos del menor en internet
- Es fácil de transportar, integra tirador para su transporte. Parece un libro de texto
- Opera en red inalámbrica

Página del producto: http://www.elcorteingles.es/informatica/producto/producto.asp?referencia=15215527191

martes, 2 de septiembre de 2008

Google Chrome ¿el navegador definitivo?


La noticia del día, sin lugar a dudas, en el mundo "tecnológico" ha sido que google, casi sin previo aviso, ha liberado una beta de su nuevo navegador web (la 0.2.149.27). Por lo pronto, y nada más iniciarlo, como podéis ver en la imagen presenta una interfaz muy sencilla y pulcra, totalmente minimalista y con alguna idea nueva como la página de inicio con la imagen de las direcciones más usadas o las últimas incorporaciones a vuestros favoritos.

En este caso, y como sé que estábais deseando ver ya como quedaría esta página en el nuevo navegador os dejo la captura inicial.

Si lo queréis probar vosotros mismos, lo cual además de recomendable, sería lo deseable, ya está disponible su descarga desde http://www.google.com/chrome.

Algo que acabo de descubrir y me parece interesante es que si pulsáis con el botón derecho sobre la barra superior (barra de título) del navegador, entre otras opciones os aparece Administrador de Tareas de Google Chrome, que entre otras cosas os permite conocer cuánta memoria,... ocupa cada una de las pestañas o navegadores que estéis empleando, sus plugs y al igual que cualquier administrador de tareas os permite finalizar los procesos que queráis sin tener que matarlos todos. Podéis ver una imagen en la siguiente captura:



* por cierto le habrán mandado algún regalo los desarrolladores de Microsoft Explorer a los de Chrome como venían haciendo cada vez que sacaban una nueva versión del IE a sus colegas de Firefox. Más bien lo dudo.

** simplemente redactando este post ya se le han visto un par de fallitos, pero la verdad es que tiene buena pinta la nueva amenaza de Microsoft aunque de momento seguiré fiel a mi Firefox. Esto de google parece cada vez más el Gran Hermano,...

Editar imagen online: comparativa pixlr y photoshop express

Interfaz de Pixlr editando una imagen del castro celta de San Cibrao de Las en Orense

Por increíble que parezca la imagen anterior se corresponde con un programa de edición de imágenes albergado en un servidor y totalmente gratuito llamado pixlr. Se suma de este modo a la lista de aplicaciones que podemos ejecutar simplemente teniendo conexión a Internet y sin necesidad de instalar ningún software en el equipo en el que trabajemos ni emplear recursos de nuestra máquina, salvo un sencillo navegador web. Viene a ser a la edición de imágenes lo que Google con su Google docs (editor de textos, hoja de cálculo y presentaciones) a la edición de textos, complementando así lo que podría ser una "suite ofimática online".

Lo que sorprende a primera vista del pixlr es que no se diferencia demasiado de las aplicaciones de edición de imágenes habituales con las que estamos acostumbrados a trabajar, léase Gimp, Paint, Adobe Photoshop,... guardando, además, un sospechoso parecido con la interfaz de esta última. Lo que os sorprenderá más, sin duda, es la rapidez con la que se cargará una vez tecleéis la dirección web en vuestro navegador http://www.pixlr.com/app/ ; o bien www.pixlr.com y pulsando el botón "jump in".

La interfaz como comentaba es muy parecida y funciona de un modo similar a la del citado editor. Resumiendo, desde mi punto de vista es una genial aplicación que nos puede sacar de más de un apuro y que ejecuta, por ejemplo, las operaciones, filtros,... a toda velocidad. Podemos subir imágenes, modificarlas, incluso cargarlas desde una url, hacer las modificaciones que deseemos y cuando finalicemos, al pulsar en guardar, nos mostrará el típico cuadro de diálogo preguntándonos en qué lugar de nuestro equipo la queremos guardar, ya que hasta ese momento sólo estará en el servidor que alberga la aplicación.

Por otro lado -pero que muy al otro lado- y en lo que se supone debería ser la competencia, está el Photoshop Express, que bajo mi punto de vista es una pésima imitación, a mitad de camino entre el picassa y el programa de edición que encontraremos en cualquier cámara digital.

Para que veáis las diferencias entre ambas en cuanto a opciones, apariencia, etc , os dejo aquí debajo una imagen de esta aplicación - que podéis encontrar en: https://www.photoshop.com/express/landing.html -; para "facilitar" todavía mas las cosas tenéis dos opciones de uso ,una de prueba y otra en la cual es necesario registrarse.


Direcciones de las aplicaciones: