# Configuración Servidor Local

El servidor de contenidos Local es una maquina Linux Debian 9 instalado de forma basica con un NetInstall.

Los paquetes que se deben instalar son los siguientes como usuarios root:

- apt install htop screen mc nginx-full php-fpm build-essential git
- apt install php7.0-curl php7.0-gd php7.0-mbstring
- apt install rsync openssh-server 

Los paquetes anteriores son los basicos para tener un servidor web sencillo que vamos a configurar más adelante como herramienta para proveer los servicios locales.

Adicional a este paquete se deben instalar todos los paquetes que aparecen en la carpeta de docs del repositorio en https://code.tupale.co/kleper/redcauca

Para instalar los paquetes de la lista se puede usar el siguiente comando:

`
cat paquetesinstaladosdebian.txt | xargs sudo apt-get install
`

# Dominio RedInc.org

Este dominio fue comprado en Dreamhost y costo 0USD, se compro este dominio para poder generar los certificados SSL y usarlo como dominio de la red local.

El dominio puede ser administrado de forma idependiente.

# Nginx + php7

El servidor web que utilizamos es Nginx + Php7, optamos por este paquete especifico por ser muy ligero y configurable, toda la configuración de nginx se puede encontrar en la carpeta /etc/nginx/sites-enable del servidor, en terminos generales lo que hacemos es crear un archivo de configuración para cada servicio que vamos a instalar de esta forma tenemos un arblos de la siguiente forma:

    - /etc/nginx/sites-enable/
        - default / default-ssl (Para el portal local)
        - wiki / para el wiki
        - matrix / para el servicio de chat
        - conversemos / para el chat web
        - wikipedia / para hacer proxy reverso al servicio de wikipedia
        
        
Los archivose de configuración podran encontrarse en el repositorio de codigo. 

- Algunos ejemplos de configuraciones de Nginx se pueden encontrar en el siguiente enlace: https://github.com/kleper/NuestraRED/tree/master/Servidor/nginx


# Servicios Locales Instaldos

1. Portal con enlaces a los contenidos locales como Wikipedia: https://redinc.org
2. Wiki comunitario instalado con Dokuwiki: https://wiki.redinc.rg
3. Sistema de mensajeria instantanea:
    4. Direccion servidor para usar con aplicacion RIOT.im https://conversar.redinc.org
    5. Dirección WEB para acceder al chat desde el computador: https://conversemos.redinc.org

- Los servicios desde el numeral 2 en adelante permiten que los usuarios se registren de forma sencilla con nombre o contraseña.

## Portal de contenidos

El portal de contenidos esta en el repositorio de codigo en la carpeta que se llama web local.

## Wiki

El wiki se instaló utilizando [Dokuwiki](https://www.dokuwiki.org/dokuwiki), la instalación de dokuwiki es realmente sencialla basta con descargar el paquete, descomprimirlo copiarlo en la carpeta del servidor en donde queremos que quede y listo, desde el navegador previamente configurado en Nginx se llama el dominio elegido para el wiki llamando el archivo install.php

## Matrix::Synapse (Herramienta de chat)

[Matrix::Synapse](https://github.com/matrix-org/synapse) es un nuevo y ambicioso ecosistema para mensajería instantánea federada abierta y VoIP. Los conceptos básicos que debes saber para ponerte en marcha son:

- Todo en Matrix pasa en una habitación (room). Los rooms son distribuidas y no existen en ningún servidor único. 
- Los rooms se pueden ubicar utilizando alias de conveniencia como #matrix: matrix.org o #test: localhost: 8448.
- Los ID de usuario de Matrix se parecen a @matthew: matrix.org (aunque en el futuro normalmente se referirá a usted y a otros con un identificador de terceros (3PID): dirección de correo electrónico, número de teléfono, etc. en lugar de manipular los ID de usuario de Matrix)

En debian la instalación de Matrix::Synapse es relativamente sencilla, para instalarlo siguiendo una guia paso a paso recomiendo la url: https://www.howtoforge.com/tutorial/how-to-install-matrix-synapse-on-ubuntu-1804/

En la guia anterior podemos ver como se configuraron los servicios que corren en **conversar/conversemos/.redinc.org**

