CONEXION REMOTA CON SESIONES INDEPENDIENTES

Asignado a: (APLICACIONES GRAFICAS, CLIENTES Y SERVIDORES) por Michael Garcia en 23-09-2007

nxlogo

FreeNX es un software que permite acceder remotamente y de forma gráfica a nuestro PC. Al contrario que VNC, en vez de usar el protocolo RFB (Remote Frame Bufer), FreeNX usa un nuevo esquema de compresión del entorno X-Window, que permite controlar un escritorio remoto incluso con una conexión de módem de 56 Kbps. El tráfico del servidor X se comprime y transmite por SSL usando una conexión SSH que puede ser resumida automáticamente en caso de ser interrumpida.

Además tiene la ventaja de que el programa guarda en caché los elementos gráficos ya mostrados (menús, iconos, decoraciones de ventanas…) por lo que en lugar de hacer una segunda petición para mostrar esos elementos, se muestran desde local.

Instalar FreeNX

Lo primero es descarga los .deb:

.deb cliente 32 bits
.deb node 32 bits
.deb servidor 32 bits
.deb manager 32 bits

En el orden que se presentan serán instalados dado que tiene sus razones…el cliente instala varias librerías indispensable y el node instala librería necesarias para el servidor. La instalación debe hacerse con root y no un usuario sudoer por que cada .deb debe llevar con sigo los permisos de una instalación de root, sino tendremos que dar permisos a mucho archivos independiente de NX.

Recuerda sudo -s (enter) y luego tu pass… y ya serás root solo lo sabrás si cambia el símbolo de usuario a # además para hacer el siguiente paso deberás posicionar el terminal en el directorio donde se encuentran los .deb

la instalación sera:

#sudo dpkg -i nxclient_3.0.0-78_i386.deb
#sudo dpkg -i nxnode_3.0.0-83_i386.deb
#sudo dpkg -i nxserver_3.0.0-69_i386.deb
#sudo dpkg -i nxmanager_3.0.0-28_i386.deb

Una vez terminado revisamos lo siguiente:

NX necesita por defecto tener el demonio sshd escuchando en el puerto 22 y con las claves públicas activadas. Para ello debemos comprobar que en el fichero /etc/ssh/ssh_config tengamos las siguientes líneas:

Pero antes tendremos que instalarlo si no lo tenemos

sudo apt-get install ssh

ahora revisamos el archivo /etc/ssh/ssh_config y nos cercioramos que estén las siguientes lineas

Port 22

PubkeyAuthentication yes

Si por el contrario preferimos tener ssh en otro puerto, debemos indicárselo a NX. Para ello editamos el siguiente fichero:

sudo gedit /usr/NX/etc/node.cfg

Editamos la línea:

#SSHD_PORT=22

Y ponemos el puerto que queramos. Por ejemplo 1234:

SSHD_PORT=1234

Firewall: NX utiliza el puerto del ssh y además el puerto 5000, por lo que si disponemos de firewall, tendremos que abrir dichos puertos. De aqui en adelante el servidor no necesitara ser modificado para una configuracion basica

Configurar el cliente NX

Lo podremos localizar en el menú Aplicaciones –> Internet –> NX Client for Linux –> NX Connection Wizard

Esto nos mostrara la siguiente ventana:

Paso1

Le damos next y tendremos la siguiente ventana:

Paso2

 

Ponemos un nombre de sesión que identifique la conexión, el IP donde está el servidor en este caso uso el IP de localhost el puerto de ssh y el tipo de conexión fundamental para el medio donde se creara la conexión, le damos next y tendremos lo siguiente:

Paso3

 

Seleccionamos el tipo de entorno grafico donde nos vamos a conectar y su sistema así como la resolución de la ventana, luego en la siguiente ventana tendremos:

Paso4

 

Creamos el icono de acceso a esa sesión específica y le pedimos que nos muestre la configuración avanzada solamente para acomodar lo siguiente:

Paso5

 

Verificamos que las direcciones sean las mismas que en la foto menos por el nombre de usuario, luego le damos doble click sobre el siguiente icono que tendrás en el escritorio:

Paso6

 

Y te saldrá una ventana donde pondrás el usuario del sistema que deseas usar y su contraseña recuerda en mi caso me estoy conectando a la sesión que tengo abierta aunque podría usar otro usuario del sistema dentro de mío… la cuestión está en que la sesión que veras a continuación será la misma donde estas, aunque independiente gráficamente, pero si creas o modificas algún dato este se verá al momento modificado en la sesión de usuario a la que te conectaste.

La primera pantalla de carga es esta:

inicio

 

Luego veras una barra de carga… la típica de Ubuntu cuando arranca y entraras en otra sesión grafica basada en el usuario que pusiste el login del icono, cuando la sesión esta completamente cargada se verá algo así:

normal

 

Lo que más me gusto es que cada usuario puede entra independientemente en su cuenta este activa o no, sin molestar el terminal visual activo si ese fuese el caso, solo les tengo una mala noticia el Compiz no se trasmite por este tipo de configuración así que no lo podremos virtualizar remotamente en nuestra sesión, lo bueno es que el Compiz puede corre con este sistema activo (me refiero a el ordenador ósea podría tener una sesión distinta en cada cara del cubo , puestas en pantalla completa y seria y sistema muy muy multi escritorio, bueno les dejo una foticos del Compiz y NX trabajando juntos:

todo compizsazo cubitox

FREENX

Asignado a: (CLIENTES Y SERVIDORES) por Michael Garcia en 25-06-2007

Que es! y como instalar FreeNX

FreeNX es un software que permite acceder remotamente y de forma gráfica a nuestro PC. Al contrario que VNC, en vez de usar el protocolo RFB (Remote Frame Bufer), FreeNX usa un nuevo esquema de compresión del entorno X-Window, que permite controlar un escritorio remoto incluso con una conexión de módem de 56 Kbps. El tráfico del servidor X se comprime y transmite por SSL usando una conexión SSH que puede ser resumida automáticamente en caso de ser interrumpida.

Además tiene la ventaja de que el programa guarda en caché los elementos gráficos ya mostrados (menús, iconos, decoraciones de ventanas…) por lo que en lugar de hacer una segunda petición para mostrar esos elementos, se muestran desde local.

Instalar FreeNX (servidor)

Para instalar FreeNX en Ubuntu debemos añadir el repositorio necesario:

$ sudo gedit /etc/apt/sources.list

Al final de dicho archivo añadimos la siguiente línea:

Para Dapper:
deb http://mirror.ubuntulinux.nl/ dapper-seveas custom extras freenx java seveas-meta all

Para Edgy:
deb http://mirror.ubuntulinux.nl/ edgy-seveas custom extras freenx java seveas-meta all

Para Feisty:
deb http://mirror.ubuntulinux.nl/ feisty-seveas custom extras freenx java seveas-meta all

Instalamos la claves de autenticación:

$ sudo gpg --keyserver subkeys.pgp.net --recv-keys 1135D466

$ sudo gpg --export --armor 1135D466 | sudo apt-key add -

Instalamos el servidor:

$ sudo apt-get update

$ sudo apt-get install freenx

Configuración del Servidor:

Si queremos usar las no-machine keys ejecutamos:

$ sudo nxsetup --install --setup-nomachine-key --clean --purge

Si por el contrario, preferimos usar nuestras propias claves (mucho más seguro, pero con el inconveniente de que tenemos que llevarnos las claves haya donde vayamos):

$ sudo nxsetup --install --clean

NX necesita por defecto tener el demonio sshd escuchando el el puerto 22 y con las claves públicas activadas. Para ello debemos comprobar que en el fichero /etc/ssh/sshd_config tengamos las siguientes líneas:

Port 22

PubkeyAuthentication yes

Si por el contrario preferimos tener ssh en otro puerto, debemos indicárselo a NX. Para ello editamos el siguiente fichero:

$ sudo gedit /etc/nxserver/node.conf

Editamos la línea:

#SSHD_PORT=22

Y ponemos el puerto que queramos. Por ejemplo 1234:

SSHD_PORT=1234

Firewall: NX utiliza el puerto del ssh y además el puerto 5000, por lo que si disponemos de firewall, tendremos que abrir dichos puertos.

Instalar el cliente NX

Para instalar el cliente abrimos un terminal y escribimos:

$ sudo apt-get install nxclient

Lo podremos localizar en el menú Aplicaciones >> Internet >> NX Client for Linux >> NX Client for Linux.

Si no aparece en el menú, reinstala nxclient desde Synaptic, y listo.

SERVIDOR DNS Y DHCP

Asignado a: (CLIENTES Y SERVIDORES) por Michael Garcia en 07-06-2007

DNS

El Domain Name System (DNS) es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar distintos tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio.

Encontramos 3 tipos de DNS:

1.- DNS Primario: el dns primario solo otorga nombres de dominio, no consulta con otros dns.

2.- DNS Secundario: el dns secundario otorga, al igual que el primario, nombres de dominio, pero cuando no se encuentra el nombre de dominio preguintado por el cliente en su servidor consulta a otro dns.

3.- DNS caché: el dns cache consulta a otros servidores nombres de dominio.

Pasos para crear un servidor primario DNS ( los links estan rotos estoy en ello )


DHCP

DHCP (Dynamic Host Configuration Protocol) es un protocolo de red que permite a los nodos de una red IP obtener sus parámetros de configuración automáticamente. Se trata de un protocolo de tipo cliente/servidor en el que generalmente un servidor posee una lista de direcciones IP dinámicas y las va asignando a los clientes conforme estas van estando libres, sabiendo en todo momento quien ha estado en posesión de esa IP, cuanto tiempo la ha tenido, a quien se la ha asignado después.

Existe 2 tipos de otorgacion de ips que entrega dhcp, ips estáticas e ips dinámicas

Pasos a seguir para un servidor DHCP (básico)( los links estan rotos estoy en ello )

DISKLESS BOOTING ( EN ESPAÑOL )

Asignado a: (CLIENTES Y SERVIDORES) por Michael Garcia en 06-06-2007

DISKLESS BOOTING
o Servidor de Terminales Pesados -STP-

Este sistema nos permite servir a otros ordenadores lo necesario para que arranquen un sistema operativo sin tener ni siquiera Disco duro. Sino tan solo con acceso a la red donde esta el servidor y posibilidad de arranque por red en la BIOS del cliente.

De que se trata todo esto … pues simplemente de tener un solo sistema operativo y poder trasmitirlo a otro ordenador vía red LAN para que cargue los ficheros y configuración de un S.O predefinido en el servidor . Una vez hecho esto tener toda la autonomía de un sistema operativo como si estuviese instalado en dicho ordenador , únicamente la función principal del servidor sera pasar todo el sistema de archivos y luego de ello mantenerse conectado con el cliente únicamente par actualizar los datos que el modifique del S.O otorgado por el servidor .

Ahora mas técnicamente , esto sucede de la siguiente manera:

El BOOTING DISKLESS requiere un servidor de DHCP para determinar de una MAC suministrada su ubicación en la red y darle una IP fija. Además se requiere una placa base que permita BOOTEO PXE por red. Un servidor TFTP para poder trasmitir el ROOM de arranque PXE y posteriormente pasar por el mismo servidor el kernel del sistema (el núcleo del mismo) el cual se configurara según los argumentos especificados en la configuración del PXE , para que después de esto el kernel sepa donde buscar los ficheros de sistema en el servidor . Los cuales se trasmitirán por NFS.

Por que PXE,DHCP,TFTP y NFS?

La primera vez que se inicia un nuevo equipo cliente habilitado para inicio remoto PXE, éste utiliza el protocolo DHCP para solicitar una dirección de Protocolo Internet (IP) y la dirección IP de un servidor DISKLESS BOOTING . Como parte de la solicitud inicial el servidor DHCP le facilita la conexión con el servidor TFTP un protocolo utilizado para trasmisión de datos en red , una vez es pasado el ROOM PXE se genera un micro entorno el cual es capaz de cargar el kernel también pasado por TFTP y luego a su vez el kernel ya es capaz de por NFS solicitar todos los archivos del S.O y completar el arranque del mismo.

Que se requiere?

-Un sistema ( Ubuntu en este caso )
-Una placa base que tenga arranque PXE
-Espacio en disco para el sistema del servidor y el sistema que se va a trasmitir
Una red rápida entre cliente y servidor
Servidores NFS,TFTP,DHCP
Y un buen entendimiento de Linux . jiji

Pasos a seguir para lograr montar un servidor de terminales pesados

1 - hacer <<ifconfig>> y sacar tu IP ( anotala te va a ser util ).

2 - Crear una carpeta en /mnt con :

<<sudo mkdir -p /mnt/nfsroot/ubuntu-feisty/dev>>

3 - Instalar todos los servidores :

<< sudo apt-get install dhcp3-server >>
<< sudo apt-get install tftpd-hpa >>
<< sudo apt-get install nfs-kernel-server >>
luego

4 - Para generar el pxe que se va a cargar por red hay que descargar el syslinux .

<< sudo apt-get install syslinux >>

5 -Creamos las carpetas necesarias.

<< sudo mkdir -p /tftpboot/pxelinux.cfg >>
<< sudo mkdir /tftpboot/ubuntu-feisty >>

6 - Copiamos el pxe de sistema en la carpeta creada .

<< sudo cp /usr/lib/syslinux/pxelinux.0 /tftpboot >>

7 - buscamos nuestro kernel con .

<< ls -ltr /boot/vmlinuz-* >>

8 - y lo copiamos a nuestra carpeta /tftpboot.

<< sudo cp /boot/vmlinuz-* /tftpboot/ubuntu-feisty >>

9 - Copiamos la herramienta del sistema que crea la imagen de arranque del kernel y le
ponemos otro nombre.

<< sudo cp -Rp /etc/initramfs-tools /etc/initramfs-tools-pxe >>

10- luego modificamos un archivo de esa carpeta nueva para que bootee desde nfs con

<< sudo gedit /etc/initramfs-tools-pxe/initramfs.conf >>
(cambiamos BOOT=local por BOOT=nfs)

11 - Creamos una nueva imagen

<<sudo mkinitramfs -d /etc/initramfs-tools-pxe -o /tftpboot/ubuntu-feisty/initrd.img-2.6.20-15-generic>> revisar los
números de versión para que todos coincidan con el kernel

12 - Creamos un archivo en /tftpboot/pxelinux.cfg/ que se llame default una forma de hacerlo
es:

<< sudo gedit /tftpboot/pxelinux.cfg/default >> y pegamos esto

LABEL ubuntufeisty
kernel ubuntufeisty/
vmlinuz2.6.2015generic
append root=/dev/nfs nfsroot=***SERVERIP****:/
mnt/nfsroot/ubuntufeisty
ip=dhcp
initrd=ubuntufeisty/
initrd.img2.6.2015generic
rw
PROMPT 0
TIMEOUT 0
DEFAULT ubuntufeisty

13 - modificamos
la configuración del servidor dhcp para que sirva solo a el cliente una ip
fija y le pase el pxe correspondiente el archivo a configurar es /etc/dhcp3/dhcpd.conf y se
hace con :
<< sudo gedit /etc/dhcp3/dhcpd.conf >>
y agregamos lo siguiente:

# ltsp server network
subnet 192.168.80.0 netmask 255.255.255.0 { <--LAMASCARA DE LA RED Y LA SUB NET range 192.168.80.55 192.168.80.55; <--EL RANGO DE IPS A SERVIR option routers 192.168.80.1; filename "pxelinux.0"; nextserver 192.168.80.10; << sudo gedit /etc/default/tftpd-hpa>>
y lo cambiamos por:

#Defaults for tftpdhpa
RUN_DAEMON=”yes”
OPTIONS=”ls/tftpboot”

14.1 - procedemos a dar permisos a la carpeta nfsroot con
<< sudo gedit /etc/exports>>
y agregamos:

/mnt/nfsroot/ubuntufeisty * (rw,no_root_squash,async)

14.2 - luego ponemos :
<< exportfs -rv >> para actualizarlo

15 - MAS TARDE EN EL CLIENTE ponemos:
<< sudo apt-get install nfs-client >>

15.1 En el CLIENTE creamos
<< sudo mkdir -p /mnt/nfsroot/ubuntu-feisty/ >>

16 - montamos en el cliente el enlace con la carpeta del servidor con:

<< sudo mount *****IP SERVER*****:/mnt/nfsroot/ubuntu-feisty /mnt/nfsroot/ubuntu-feisty>>

17 -y luego de montarla copiamos los contenidos del cliente en el servidor
con:

<<sudo cp -ax /. /mnt/nfsroot/ubuntu-feisty/.>>
y
<< sudo cp -ax /dev/. /mnt/nfsroot/ubuntu-feisty/dev/.>>

18 - Una vez copiado todo en el servidor solo tenemos que cambiar el archivo de los
contenidos de montaje /etc/fstab que estara en la carpeta de ubuntufeisty
de nfsroot con:

<< sudo gedit /mnt/nfsroot/ubuntu-feisty/etc/fstab >>
( en la que dejaremos nada mas que las unidades externas montadas y lo demas lo
comentaremos MENOS la swap )

19 - luego
tendremos que cambiar un ultimo fichero en nfsroot y estara listo nuestro servidor
el ultimo comando sera

<< sudo gedit /mnt/nfsroot/ubuntu-feisty/etc/network/interfaces >>
( y comentamos de este archivo todo para que el cliente no genere interfaces de red y
termine por desconectarse del servidor de terminales pesados )

20 -Por ultimo arrancamos todo los servidores con

<< sudo /etc/init.d/dhcp3-server stop >>
<< sudo /etc/init.d/dhcp3-server start >>
<< sudo /etc/init.d/tftpd-hpa stop >>
<< sudo /etc/init.d/tftpd-hpa start >>
<< sudo /etc/init.d/nfs-kernel-server start >>
<< sudo /etc/init.d/nfs-kernel-server stop >>

21 - Y listo solo queda arrancar el cliente en modo de BOOT de LAN y tenemos nuestro
servidor funcionado como servidor de terminales pesados .

Espero que les funcione ya que esto lo e montado yo y a funcionado a la perfeccion hasta con 20 ordenadores … Atentamente Michael García Zurilla.

Sabes por que me gusta ubuntu por esto ——>>>



Creative Commons License
Esta obra está bajo una
licencia de Creative Commons.


El canal LPSH en youtubeEl perfil de LPSH en Technorati La gente que agrega enlaces de mi blog en DeliciousMi cuenta en TwiterEntradas RSS por Feed Burner Una manera para que todos ganemos dinero facil...


ACERCA DE:

Este blog habla de todo pero se centra en Ubuntu, los temas que tratamos son: Internet, Actualidad, Gadgets, Hardware, Software, Ciencia, Muscia, Cine y muchos mas... siempre un poco de humor no cae mal.

Ver Licencia...