# Instalaciones Tema 6 ## Instalacion Servicios de noticias ### Servidor Ubuntu Primero debemos modificar el fichero ````hosts```` ubicado en ````/etc/hosts```` para agregar el FQDN del equipo a el ![hosts](images/tema6/U/hosttxt.png) Guardamos con **CRTL + O** y cerramos con **CRTL + X** Ahora con la **NAT** activada haremos la instalacion del software usando el comando ````bash apt install leafnode ```` ![install](images/tema6/U/install.png) En el proceso de instalacion, nos pedira el servidor de noticias que queramos usar, usaremos **news.grc.com** ![ServidorNoticia](images/tema6/U/newsgrc.png) Despues nos preguntara el tipo de conexion de red: - **PPP**: para decargar noticias cada vez que el cliente inicia sesion - **Permanente**: Descargara las noticias cada hora - **ninguno**: Necesitaremos decargar de manera manual ![conexion](images/tema6/U/paso.png) ![conexion2](images/tema6/U/ninguno.png) Ahora debemos modificar el fichero ````host.allow```` ubicado de nuevo en ````/etc/host.allow````, para ubicar la direccion IP tanto del cliente como del servidor ![hostallow](images/tema6/U/allow.png) Guardamos con **CRTL + O** y cerramos con **CRTL + X** Aqui podemos ver una comprobacion de la IP del cliente ![comprobacion](images/tema6/U/client.png) Ahora en el cliente con **NAT** activada descargaremos el cliente de noticias **PAN**, usando el comando ````bash apt install pan ```` ![pan](images/tema6/U/pan.png) Localizamos el programa instalado en el menu de aplicaciones, tiene el icono de un periodico ![pan](images/tema6/U/pan2.png) Abriremos el cliente, y en la configuracion inicial nos preguntara la direccion IP de nuestro servidor en este caso es la **192.168.20.1**, despues pulsaremos en aceptar ![pan](images/tema6/U/pan3.png) Se nos cargaran los grupos disponibles, al pulsar en uno nos saltara la configuracion del grupo, en el que podemos seleccionar cuantas cabeceras de noticias descargar, lo dejamos por defecto y pulsamos Ejecutar ![pan](images/tema6/U/pan4.png) Actualmente no tenemos noticias, por que en el servidor no hemos sincronizado con el servidor de noticias ![pan](images/tema6/U/pan5.png) Si hacemos clic derecho en uno de los grupos, nos saldra la opcion de suscribirnos al grupo de noticias ![pan](images/tema6/U/pan6.png) Ahora volveremos al servidor y con la **NAT** activada ejecutaremos el siguiente comando ````bash fetchnews -vv ```` Este comando sincronizara nuestro servidor de noticias con el servidor principal de noticias **news.grc.com** ![fetchnews](images/tema6/U/fetchnews.png) Ahora de vuelta cliente si pulsamos en uno de los grupos de noticias al que nos hemos suscrito podremos ver las noticias ![pan](images/tema6/U/noticias.png) Si en una de estas noticias pulsamos clic derecho encima tendremos la opcion de descargarla, esta opcion es **Guardar articulos...** ![descarga](images/tema6/U/pan7.png) Para finalizar haremos las snapshots correspondientes tanto en el cliente y en el servidor ![snapshots](images/tema6/U/snap1.png) (Solo tengo una captura por que me parecia redundante hacer dos) (He dejado de lado Libvirt y estoy usando Vmware ya que he tenido problemas con los modulos de virtualziacion del kernel de linux, y vmware es el unico software que va a su bola y no da tantos problemas) ### Cliente Windows Copiamos la carpeta de recursos tema 6 a la maquina Windows (Cliente) ![Carpeta](images/tema6/W/1.png) Entramos en la carpeta de **Xnews** y descomprimimos el la carpeta ![Xnews](images/tema6/W/2.png) ![Xnews](images/tema6/W/3.png) Al extraer pulsamos en el ejecutable, y nos saldra una ventana emergente preguntandonos el servidor de noticias a usar en este caso **news.upv.es** y un alias en este caso **NoticiasUPV**. ![imagen](images/tema6/W/4.png) ![imagen](images/tema6/W/5.png) Al terminar nos aparecera un setup con varios menus ![menu](images/tema6/W/6.png) ![menu](images/tema6/W/7.png) ![menu](images/tema6/W/8.png) ![menu](images/tema6/W/9.png) ![menu](images/tema6/W/10.png) ![menu](images/tema6/W/11.png) ![menu](images/tema6/W/12.png) ![menu](images/tema6/W/13.png) Despues al pulsar en **Okay**, nos pregunta si queremos decargar todas las noticias desde el servidor, pulsamos en **Yes** ![menu](images/tema6/W/14.png) Vemos que no aparece ninguna noticia, quizas debido al error que sale en la parte inferior, avisando que no se ha podido conectar al servidor ![menu](images/tema6/W/15.png) ### Servidor Windows En el servidor con la **NAT** activada nos descargamos el servidor classic hamster desde la pagina de Softpedia ![image](images/tema6/W/16.png) ![image](images/tema6/W/17.png) Extraemos y ejecutamos el fichero ejecutable llamado **hamster.exe** ![image](images/tema6/W/18.png) Nos pedira el idioma a usar en este caso seleccionamos **Español** y pulsamos **Ok** ![image](images/tema6/W/19.png) Ahora en configuracion, pulsamos en **Noticias: servidor, grupos, sincron...** ![image](images/tema6/W/20.png) Nos desplazamos a la pestaña de **Grupos de noticias** y pulsamos en **Añadir Grp. local** ![image](images/tema6/W/21.png) Ingresamos el nombre del grupo local (como se llamara nuestro servidor de noticias) ![image](images/tema6/W/22.png) ![image](images/tema6/W/23.png) Despues nos desplazamos a la pestaña de **Servidor de noticias** y pulsamos en **Añadir** ![image](images/tema6/W/24.png) Ingresamos el nombre del servidor en este caso vamos a usar **news.eternal-september.org** y pulsamos en **confirmar** ![image](images/tema6/W/25.png) La configuracion se deja por defecto y pulsamos en **confirmar** ![image](images/tema6/W/26.png) Ahora volvemos a pinchar en configuracion pero esta vez nos desplazamos a **Servidores Locales...**, verificamos que los datos esten puestos de la siguiente forma ![image](images/tema6/W/27.png) ![image](images/tema6/W/28.png) Ahora iniciamos el **cliente** es importante comprobar que tienen conexion de red entre ellas, yo por ello he pasado el ejecutable de thunderbird desde la maquina real, para no activar el NAT y que luego se me olvide quitarlo. Instalaremos el thunderbird ![thunderbird](images/tema6/W/29.png) ![thunderbird](images/tema6/W/30.png) En el menu principal nos vamos a los **tres puntos** > **cuenta** > **Grupos de noticias** ![image](images/tema6/W/31.png) ![image](images/tema6/W/32.png) Se nos abrira un asistente para agregar la cuenta de noticias, rellenamos los datos de nombre y correo con nuestros datos ![image](images/tema6/W/33.png) Pulsamos siguiente y nos pedira el servidor de noticias (noticias.local) ![image](images/tema6/W/34.png) Despues nos pedira el nombre de la cuenta este es como un Alias, he puesto NoticiasASIR ![image](images/tema6/W/35.png) Para finalizar nos mostrara un resumen de la configuracion, pulsaremos en **Finalizar** ![image](images/tema6/W/36.png) Aqui deberian salir noticias, pero por alguna razon no me salen ![images](images/tema6/W/37.png) ## Instalacion servicios de mensajeria instantanea Ya que tenemos libertad de instalar el software que queramos, he decidido alejarme de la instalacion que sale en el temario usando **Psi** y **ejabberd**, voy a usar una opcion mas moderna como es **Matrix** que es la evolucion de XMPP. Para la siguiente instalacion, necesitamos un cliente y un servidor, en este caso el cliente puede ser tanto windows como linux pero el servidor debe ser Linux. Voy a seguir en todo momento los pasos oficiales que podemos encontrar [aqui](https://element-hq.github.io/synapse/latest/setup/installation.html) Para hacer la instalacion en el servidor necesitamos tener activada la **NAT**. Primero actualizaremos los repositorios haciendo uso de ```sudo apt update``` ![update](images/tema6/mensaje/1.png) Despues instalaremos las dependecias necesarias para que todo funcione de manera correcta, usando el siguiente comando ```bash apt install -y lsb-release wget apt-transport-https ``` ![dependecias](images/tema6/mensaje/2.png) Ahora debemos importar en nuestro servidor ubuntu la clave de seguridad del repositorio de matrix ```bash sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg ``` ![keyring](images/tema6/mensaje/3.png) Y despues añadiremos el repositorio en nuestro servidor ```bash echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/matrix-org.list ``` ![repo](images/tema6/mensaje/4.png) Finalmente actualizaremos los repositorios de nuevo e instalaremos el paquete del servidor **matrix-synapse-py3** ```bash apt update && apt install matrix-synapse-py3 ``` ![instalar](images/tema6/mensaje/5.png) En el proceso de instalacion nos preguntara por el nombre del servidor que queramos usar, en mi caso yo le he puesto **servidorujrrg.edu** ![hostname](images/tema6/mensaje/6.png) Despues nos preguntara si queremos enviar analiticas de uso a Matrix, en este caso seleccionaremos **No** ![No](images/tema6/mensaje/7.png) Una vez la instalacion haya finalizado, deberemos modificar el fichero de configuracion del servidor (/etc/matrix-synapse/homserver.yaml) para que escuche solicitudes en todas las direcciones IP, esto se hace cambiando el valor **127.0.0.1** por **0.0.0.0** ![escucha](images/tema6/mensaje/8.png) ![127.0.0.1](images/tema6/mensaje/9.png) ![0.0.0.0](images/tema6/mensaje/10.png) Despues de esto reiniciaremos el servidor para que los cambios surtan efecto ```bash systemctl restart matrix-synapse.service ``` ![systemctl](images/tema6/mensaje/11.png) Ahora modicaremos el fichero **/etc/hosts** para decirle al sistema donde esta **servidorujrrg.edu**. **Esto es importante !!!** ![hosts](images/tema6/mensaje/12.png) Ahora crearemos los usuarios del servidor para luego acceder desde el cliente, en un servidor matrix publico, estos usuarios se crean con una interfaz web, en este caso, lo usuarios necesitan de la creacion en el servidor (por parte de un administrador). Antes de crear usuarios hay que configurar la clave de seguridad. ya que sin esta no funcionara, como me ha pasado a mi ![error](images/tema6/mensaje/13error.png) Para configurar la clave de seguridad podemos usar una que nosotros elijamos o generar una (queda mas profesional). Podemos usar este comando, y copiar su salida que sera una cadena hexadecimal de 32 caracteres ```bash openssl rand -hex 32 ``` ![openssl](images/tema6/mensaje/14.png) Volveremos a abrir el archivo de configuracion (/etc/matrix-synapse/homeserver.yaml), y añadiremos lo siguiente al final del documento ```bash registration_shared_secret: "cadena_de_texto" ``` ![clave](images/tema6/mensaje/15.png) Ahora nos dejara crear usuarios, para crearlos usamos, ```bash sudo register_new_matrix_user -c /etc/matrix-synapse/homserver.yaml http://localhost:8008 ``` Nos pedira el nombre del usuario, la contraseña y si lo queremos hacer administrador. yo he creado dos usuarios, un administrador y uno normal ![admin](images/tema6/mensaje/16.png) ![normal](images/tema6/mensaje/17.png) Como cliente no he usado la maquina virtual ya que el cliente element da muchos problemas si se configura como usuario root, y depende de una conexion a internet para funcionar, por lo que deberia usar la NAT y LAN a la vez, he usado mi maquina host que usa Fedora Linux por lo que sigo usando Linux. Para ello he añadido a la maquina virtual del servidor un adaptador de red nuevo de tipo **host-only** que crea una conexion directa con el host ![host-only](images/tema6/mensaje/27.png) Al igual que en el servidor agregamos al **/etc/hosts** para señalar donde se encuentra **servidorujrrg.edu** ![hots](images/tema6/mensaje/32.png) ![verificar](images/tema6/mensaje/33.png) En la siguiente captura vemos como el servidor y el host tiene conexion haciendo ping (IP: 192.168.206.130) ![ping](images/tema6/mensaje/28.png) Ahora con el gestor de paquetes flatpak instalaremos **element-desktop** ![instalacion](images/tema6/mensaje/29.png) Abrimos el cliente y pulsamos en **Iniciar sesion** ![iniciar](images/tema6/mensaje/30.png) Por defecto nos pone el servidor de matrix para iniciar sesion, pero pulsando en editar lo cambiamos ![server](images/tema6/mensaje/31.png) Ahora escribiremos la direccion de nuestro seridor en el campo **otro servidor base**, aunque el nombre de servidor sea **servidorujrrg.edu** en el campo del servidor base, deberemos poner **http://servidorujrrg.edu:8008** y pulsamos **Continuar** ![servidor](images/tema6/mensaje/35.png) Si todo esta bien, nos pasara al siguiente paso, y nos pedira el usuario y la contraseña, ponemos los datos y pulsamos en **Iniciar sesion** ![user](images/tema6/mensaje/36.png) Nos iniciara sesion en nuestra cuenta, ahora como prueba **Crearemos un grupo** ![grupo](images/tema6/mensaje/37.png) Nos pedira el nombre de la sala y si es publica o privada, elegimos **publica** e introducimos la direccion en este caso **prueba** y pulsamos **Crear sala** ![prueba](images/tema6/mensaje/38.png) Ahora invitaremos a la sala al usuario **Administrador**, para ello hay que insertar su nombre de usuario y el nombre del servidor, de la siguiente forma **@usuario:servidor** y pulsamos **Invitar** ![invitar](images/tema6/mensaje/39.png) ![invitado](images/tema6/mensaje/40.png) Enviamos un mensaje de prueba en el canal ![mensaje](images/tema6/mensaje/41.png) Ahora haremos el cambio de usuario, pulsamos en la esquina superior izquierda sobre el logo del usuario > **Cerrar sesion** ![sesion](images/tema6/mensaje/42.png) Ahora los pasos son los mismos pero ponemos el usuario **administrador** ![admin](images/tema6/mensaje/43.png) Vemos que nos sale el mensaje de que el usuario juanra nos ha invitafo a una sala, podemos **aceptar**, **rechazar** o **rechazar y bloquear** ![unirse](images/tema6/mensaje/44.png) Vemos que nos salen los mensajes enviados anteriormente ![mensajes](images/tema6/mensaje/45.png) Y ya hemos acabado