sábado, 8 de marzo de 2014

Apt-Cacher NG



Buenas a todos.

Para el examen del próximo martes utilizaremos una nueva forma para instalar los repositorios. En vez de descargar todos los pc los mismos paquetes, dichos paquetes ya estarán descargados en una única máquina y nuestros pc cogerán dichos paquetes a través de la red.

Vamos a ver cómo funciona y cómo se configura. En la máquina servidor de paquetes,  tenemos que tener lógicamente una IP fija e instalaremos los paquetes "apt-cacher-ng" y "apache2".
$ sudo apt-get install apt-cacher-ng apache2

Y con esto ya quedaría terminada la parte del servidor, fácil ¿verdad?.
Funciona por defecto perfectamente, pero si fuera necesario, las opciones de configuración  las encontraríamos en el fichero acng.conf dentro de /etc/apt-cacher-ng/


Como vemos en la captura podríamos variar la carpeta por defecto donde almacena los paquetes, donde guarda los log o el puerto que utiliza por defecto.
En la carpeta por defecto de caché veremos algo de estilo


Para ver si funciona correctamente el servidor, ponemos en un navegador:
http://localhost:3142


Vamos a configurar ahora nuestros clientes. Creamos un fichero /etc/apt/apt.conf.d/02proxy con el siguiente contenido:
Acquire::http { Proxy "http://IP_servidor_paquetes:3142"; };

Para comprobar que funciona como es debido, puedes asignar una IP fija a tu cliente y no utilizar ningún gateway:


Verás que tienes ping con la IP de tu servidor de paquetes pero no tienes con el "exterior". Por lo tanto, si eres capaz de actualizar, tienes la seguridad al 100% de que los paquetes los está cogiendo de tu servidor.



En el servidor también es recomendable crearlo, pero con el contenido ligeramente modificado. Con esto, todas las actualizaciones que se realicen en el servidor, estarán "cacheadas" para todos los usuarios.


Después de realizar un "sudo apt-get update" en el servidor y en el cliente ya podremos empezar a instalar los distintos paquetes . Vamos a instalar nuestro xubuntu-desktop usando este sistema.


Vemos como la velocidad de descarga es otra cosa a lo que nos suele tener acostumbrado. Ojo, la velocidad de descarga, porque la instalación sigue siendo igual de lenta. En mis pruebas durante estas últimas horas, más de 120 minutos!!!! (*)
O algo cambia radicalmente o el día del examen, lo veo muy, muy negro.

Un saludo para todos.

(*) Casi 180 minutos en un ordenador y unos 30 en otra con la misma configuración de mv. Raro, raro. Algo causa que el rendimiento caiga a niveles lamentables, pero el el problema es averiguar qué está causando esa instalación tan lenta en algunos casos...



jueves, 6 de marzo de 2014

Conectar a un dominio en Linux desde Windows (2ª Parte)

Buenas a todos de nuevo.

Después de unas pocas horas de descanso volvemos a la carga y vamos a aplicar los consejos facilitados por Rafa para intentar localizar el error. Vamos a la carga.

Volvemos a iniciar las mismas máquinas que dejamos en reposo hace unas pocas horas y verificamos que el Linux tenga su IP fija y que el XP "vea" dicha IP


El resultado es correcto. Vamos a la segunda prueba. ¿Puede navegar nuestro XP?


Vemos que el navegador abre correctamente la página de "Apple" por lo que deducimos que el servidor DNS está funcionando correctamente.
Vamos a volver a intentar la conexión al dominio.


Ponemos nuestro usuario perico y su clave...


Y ahora funciona correctamente. Se ha logueado en el sistema sin problema y sin realizar ningún cambio. ¿Qué hemos cambiado? Pues salvo que he dormido unas horas, poco más. Quizás el ordenador estaba también cansado y necesitaba descansar unas horas.
Al volver al loguearnos en Windows, debemos tener cuidado y seleccionar el dominio correcto en el campo "Conectarse a:"


Introducimos la contraseña y vemos como accedemos sin problema y vemos nuestros datos compartidos en el administrador de archivos.



Poco más puedo decir de este ejercicio. Tengo muy claro que algún "duende" afecta mis pruebas. Ya que los ficheros en cuestión son los mismo siempre. Están almacenados en un pen y sólo se modifican los valores de IP usando un editor tipo nano por lo que no existen caracteres extraños en el mismo. Bueno. Seguiremos haciendo pruebas y pruebas y pruebas y ...

Un saludo para todos.

Conectar a un dominio en Linux desde Windows (1ª Parte)

Buenas a todos.

Aunque ya hace tiempo que tendría que haber subido este post, por distintos motivos me ha sido imposible. El exceso de trabajo en las últimas semanas ha sido una de ellas y mi incapacidad para realizar el ejercicio ha sido la otra. Como tengo la conciencia súper tranquila en cuanto al tiempo dedicado al ejercicio de marras, no voy a entrar más al tema. Vamos manos a las teclas y a intentar reproducir el ejercicio. 

Como siempre necesitamos dos máquinas totalmente limpias para evitar problemas:
Server 12.04 LTS


Windows XP Pro.


Una cosa que tenemos que tener claro, es que el servidor debe de tener una IP fija así que lo primero que haremos, será modificar nuestro fichero interfaces para añadirle los datos necesarios.


Una vez guardado los datos reiniciar el servicio con:
$ sudo /etc/init.d/networking restart

Realmente tenemos que modificar 4 ficheros por lo que es muy interesante llevar dichos ficheros en un pendrive y personalizar los mismos en nuestro Linux para adaptar nuestro dominio. No voy a explicar ahora de nuevo como montar un pendrive en nuestra máquina virtual, así que directamente omito el paso y vamos a la carpeta donde tengo alojado dichos ficheros.


Otra cosa interesante antes de empezar a sobreescribir ficheros o similar es realizar una copia de respaldo del fichero en cuestión. Más que nada por si la liamos, podamos volver al punto inicial. Yo no voy a realizarlo tampoco ahora. Lo primero es que esto es una máquina virtual y tengo realizada la instantánea para volver al punto inicial tantas veces como quiera, pero en caso de ser una máquina definitiva, siempre, repito, siempre se debe realizar una copia de seguridad.
Copiamos el fichero smb.conf en la carpeta /etc/samba/ y lo editamos con nano ya que en un principio os recuerdo que no tenemos ningún entorno gráfico y por lo tanto no tenemos muchos más editores entre los que elegir. Dejo el vi para masoquistas. ;-)


Ahora creamos la carpeta donde se grabarán los perfiles y a continuación, reiniciamos el servicio SAMBA:
$ sudo mkdir -p /srv/samba/profiles
$ sudo service smbd restart



Ahora vamos con la primera prueba de fuego. Ejecutaremos el comando sudo testparm e intentamos localizar entre el texto que nos muestre en pantalla el mensaje "ROLE_DOMAIN_PDC". Si lo has conseguido, vas por el buen camino.


Vamos a crear ahora el usuario SAMBA con el que accederemos a nuestro servidor.
$ sudo adduser perico
Le ponemos una contraseña. Para evitar problemas le pondremos la misma clave en Linux y en Samba
$ sudo smbpasswd -a perico


Creamos el dominio y posteriormente creamos la cuenta confianza del equipo desde el que nos vamos a conectar poniendo su nombre NetBIOS terminado en $
$ sudo groupadd dominio
$ sudo adduser -force-badname xpsp3$

La contraseña que le pondremos será la misma que hemos introducido previamente.


Agregamos el equipo al dominio creado:

$ sudo adduser xpsp3$ dominio
$ sudo smbpasswd -a -m xpsp3

Por último reiniciamos SAMBA con sudo service smbd restart


Antes de probar si ya conectamos desde nuestro XP al nuevo dominio creado vamos a instalarnos el servidor de DNS
$ sudo apt-get install bind9

Y copiamos el fichero named.conf.local y db.dominio dentro de la carpeta /etc/bind/


Tenemos que editar este último fichero grabado, por lo tanto lo editamos con nano y cambiamos las IP que nos aparecen por la IP que le hayamos asignado a nuestro servidor.


En esta prueba sólo tengo que cambiar las IP, pero si el nombre de dominio fuera otra, también debería cambiarlo en el fichero.
Ya por último debemos de copiar el fichero named.conf.options dentro de /etc/bind/ y reiniciar el servicio de DNS con sudo service bind9 restart.


Dejemos por ahora nuestro Linux en segundo plano y vamos a nuestro XP. Lógicamente tenemos que crearnos el mismo usuario con el queremos entrar en nuestro servidor de dominio. Así que lo hacemos desde el panel de control poniendo la misma clave que hemos puesto en nuestro servidor.


Ya que tenemos nuestro usuario "perico" creado, vamos a realizar una pequeña modificación en los datos de nuestra tarjeta de red. Pondremos como DNS primario, la IP de nuestro servidor. Y ahora vamos a intentar loguearnos en el dominio.



Pues debería conectar sin ningún problema, pero como yo estoy totalmente "negado" con este ejercicio, no soy capaz de reproducirlo de nuevo. Por lo menos os voy a quedar con la captura de la única vez que he conseguido hacerlo funcionar.



Más de 50 repeticiones y sólo 1 una vez ha funcionado. Estoy seguro que le estoy dedicando poco tiempo...

Mañana más y espero que mejor, porque peor lo dudo.







martes, 25 de febrero de 2014

SAMBA


A pocos días de empezar los carnavales, hoy toca hablar de SAMBA, pero no la que la mayoría nos gustaría conocer, sino del programa que nos permitirá compartir archivos e impresoras desde nuestra máquina Linux a otra máquina equipada con un sistema Windows. Es por ello que la imagen que abre este post debería ser esta otra.


Vamos a ponernos manos a la obra. Lo primero que debemos tener lógicamente para realizar este ejercicio, son dos máquinas virtuales listas. La primera de ella la vamos a preparar con un Ubuntu 12.04 Server y la segunda con un Windows 7 Pro.
En nuestra máquina linux instalaremos el Xubuntu-desktop. Os recomiendo que tengáis los ficheros de la carpeta "archives" en un pendrive y hagáis la instalación desde el mismo, pues la instalación desde Internet es lenta "como el caballo del malo" (para esta prueba más de tres horas).

Una vez que haya terminado la instalación del entorno gráfico, entramos en el mismo y mi recomendación para ahorrarte futuros problemas, sería actualizar el sistema. Nos ahorraremos problemas con instalaciones que no funcionan correctamente por no estar correctamente actualizado el sistema. Tranquilo, esta actualización sólo llevara 30 minutos más. Puedes aprovechar para comer algo o leer un poco por darte un par de ideas. Desde una ventana de terminal instalamos los paquetes necesarios con el comando:
$ sudo apt-get install samba smbfs
Con esta orden instalaremos dos paquetes necesarios. A continuación nos haremos una copia del fichero de configuración (/etc/samba/smb.conf) por si metemos la pata y tenemos que volver al estado original del mismo. Para ello usaremos la siguiente orden:
$ sudo cp -p /etc/samba/smb.conf /etc/samba/smb_backup.conf


Editamos dicho fichero con nuestro editor preferido y cambiamos el valor de "workgroup" por el que tengamos configurado en nuestro Windows 7.



Tenemos que crearnos en linux los usuarios que queramos que tengan acceso desde Windows. Por ello, si tenemos un usuario con el nombre "remoto" por poner un ejemplo la crearemos usando el terminal.
$ sudo adduser remoto



Ejecutaremos ahora el siguiente comando para crear nuestro usuario en samba:
$ sudo smbpasswd -a remoto


A continuación creamos un fichero con los usuarios que tendrán acceso a nuestro servidor samba. El fichero se llamará smbusers y estará situado en /etc/samba/
Dentro pondremos el equivalente del usuario linux con el usuario Windows


Por último volvemos a editar el fichero principal de configuración de nuestro samba y añadimos y/o modificamos las siguientes líneas que verás remarcadas en las capturas.



Una vez salvados los cambios usamos el comando testparm para verificar que el fichero esté con la sintaxis correcta y que no nos genere ningún error.


Reiniciamos el servicio con sudo service smbd restart. Nos creamos una carpeta donde vamos a compartir y le damos permisos totales.


Volvemos a editar el fichero de configuración y añadimos al final del mismo las siguientes líneas.


Guardamos, verificamos el mismo y volvemos a reiniciar el sistema.


Este tema del samba tiene más "tela" pero lo dejaremos para otros post.

Un saludo para todos.

miércoles, 29 de enero de 2014

Compartir carpetas entre distintos equipos usando NFS

Buenas a todos.

Hoy vamos a aprender como configurar nuestro servidor para tener carpetas compartidas para que otras máquinas accedan a la misma puntual o habitualmente.

Para realizar esta práctica, necesitamos obviamente dos máquinas por lo que procedemos a levantar un Server 12.04 LTS y un Desktop 12.04 LTS para realizar las operaciones oportunas.


Lo primero que tenemos que hacer es instalar un nuestro servidor el nfs y lo haremos con el siguiente comando desde una ventana de terminal:
$ sudo apt-get install nfs-kernel-server



Una vez terminada la instalación, configuramos nuestro servidor nfs. Para hacerlo debemos editar el fichero /etc/exports y añadir una línea del tipo:
/home/carpeta 192.168.0.0/24(rw,sync,fsid=0,no_root_squash,no_subtree_check)
Siendo /home/carpeta  la carpeta compartida en nuestro servidor.
Siendo 192.168.0.0/24 la IP o rango de IP's a la queremos compartir.
Siendo (rw,sync,fsid=0,no_root_squash,no_subtree_check) los parámetros óptimos respecto a velocidad y fiabilidad de dicha carpeta compartida. El parámetro rw se sustituiría por ro si sólo nos interesara la lectura de dicha carpeta en vez de la lectura/escritura.

En mi caso voy a compartir una carpeta llamada "paso" en mi escritorio y la IP de la máquina desktop es la 192.168.1.51.


Una vez salvados los cambios y desde la consola escribimos el siguiente comando para reiniciar el servicio:
$ sudo /etc/init.d/nfs-kernel-server restart


Vamos ahora a nuestra máquina desktop y procedemos a instalar el cliente de nfs. Para ello abrimos una ventana de terminal y escribimos desde la misma el comando:
$ sudo apt-get install nfs-common


Vamos ahora a realizar el montaje de la carpeta compartida del servidor en nuestra máquina. Para ello vamos a crearnos previamente una carpeta donde montaremos la carpeta compartida. Por ejemplo una carpeta mount dentro de la carpeta tmp. Abrimos una ventana de terminal y usamos el comando:
$ sudo mkdir /tmp/mount
Ahora usamos el siguiente comando:
$ sudo mount -t nfs ip_server:/carpeta_compartida /carpeta_donde_realizamos_el_montaje
Siendo ip_server/carpeta  la dirección IP y la carpeta compartida de nuestro servidor.
Siendo /carpeta_donde_realizamos_el_montaje la carpeta previamente creada para realizar el montaje.

En mi caso la IP del servidor es 192.168.1.50 por lo que el comando sería el siguiente:
$ sudo mount -t nfs 192.168.1.50:/home/roberto/Escritorio/paso /tmp/mount

Si no vemos ninguna advertencia extraña en nuestro terminal seguramente el montaje se haya realizado sin problema. Procedemos a realizar un ls  a la carpeta donde hemos realizado el montaje y veremos si realmente podemos acceder a la información que almacena la carpeta almacenada en nuestro servidor.



Por último vamos a ver la forma de realizar el montaje de forma automática y no tener que hacer el montaje manual cuando arranquemos nuestro desktop. Para ello tenemos que editar el fichero /etc/fstab y añadirle la siguiente línea:
ip_server:/carpeta_compartida /carpeta_donde_realizamos_el_montaje nfs defaults 0 0
Siendo ip_server/carpeta  la dirección IP y la carpeta compartida de nuestro servidor.
Siendo /carpeta_donde_realizamos_el_montaje la carpeta creada para realizar el montaje.


Si todo está correcto, cuando se inicie nuestro sistema, no será necesario crear un montaje manual siendo que tendremos ya disponible nuestra carpeta.

Un saludo para todos.