Diferencia entre revisiones de «FESOL/201801/Especializacion/proyectos/Intranet»

De FESOL. Proyectos de Software Libre ULS
Saltar a: navegación, buscar
(Cron)
(Introducción)
 
(No se muestran 83 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
== INTRODUCCIÓN ==
+
== Palabras Claves ==
 +
Nateo, Interfaces, Repositorios, Router, Dominios, Red WAN, Proxy, Ldap, Script bash, IP estática
 +
 
 +
== Introducción ==
 
La implementación de la informática en las instituciones educativas  tuvo como punto de partida, la aplicación de las nuevas tecnologías en el área de enseñanza-aprendizaje.  La información que genera una escuela forma parte de su patrimonio, la misma debe de ser cuidada, almacenada y estar disponible para su uso en beneficio de la misma. Una solución es la creación de Intranets.
 
La implementación de la informática en las instituciones educativas  tuvo como punto de partida, la aplicación de las nuevas tecnologías en el área de enseñanza-aprendizaje.  La información que genera una escuela forma parte de su patrimonio, la misma debe de ser cuidada, almacenada y estar disponible para su uso en beneficio de la misma. Una solución es la creación de Intranets.
 
Una Intranet permite tener acceso rápido a cualquier documento de la escuela, siempre que se tenga el nivel de privilegios adecuado para poder acceder a ellos.
 
Una Intranet permite tener acceso rápido a cualquier documento de la escuela, siempre que se tenga el nivel de privilegios adecuado para poder acceder a ellos.
Línea 7: Línea 10:
 
Es por eso que como grupo decidimos  desarrollar el tema : Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP, DNS, LDAP, Web y Almacenamiento de fácil instalación para escuelas. Para la realización del proyecto realizamos investigaciones que nos permiten facilitar la instalación de servidores y herramientas, logrando desarrollar un scrip que nos permite automatizar todos los procesos de instalaciones y actualizaciones necesarias tanto en la PC Servidor y las PC Clientes. Y de este modo, permitir optimizar los procesos de enseñanza-aprendizaje, agilizar la información, disponibilidad de información oportuna, poniéndola a disposición de quienes lo requieran.
 
Es por eso que como grupo decidimos  desarrollar el tema : Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP, DNS, LDAP, Web y Almacenamiento de fácil instalación para escuelas. Para la realización del proyecto realizamos investigaciones que nos permiten facilitar la instalación de servidores y herramientas, logrando desarrollar un scrip que nos permite automatizar todos los procesos de instalaciones y actualizaciones necesarias tanto en la PC Servidor y las PC Clientes. Y de este modo, permitir optimizar los procesos de enseñanza-aprendizaje, agilizar la información, disponibilidad de información oportuna, poniéndola a disposición de quienes lo requieran.
  
 +
'''Repositorio del Proyecto'''
 +
https://github.com/elmergmaradiaga/eduintranet
  
== OBJETIVOS ==
+
== Objetivos ==
  
=== OBJETIVO GENERAL ===
+
=== Objetivo General ===
 
Crear un script de instalación automática de herramientas para mejorar el proceso de enseñanza-aprendizaje, aumentar la eficiencia, creatividad e innovación en los alumnos con la implementación de Intranet en la escuela, permitiendo interactuar y acceder rápidamente a contenido almacenado en el servidor.
 
Crear un script de instalación automática de herramientas para mejorar el proceso de enseñanza-aprendizaje, aumentar la eficiencia, creatividad e innovación en los alumnos con la implementación de Intranet en la escuela, permitiendo interactuar y acceder rápidamente a contenido almacenado en el servidor.
  
=== OBJETIVOS ESPECÍFICOS ===
+
=== Objetivos Específicos ===
Demostrar la importancia de usar una Intranet en las escuelas para mejorar el proceso de enseñanza y aprendizaje.
+
*Demostrar la importancia de usar una Intranet en las escuelas para mejorar el proceso de enseñanza y aprendizaje.
  
Describir los múltiples beneficios que conlleva la implantación de una intranet en las escuelas.
+
*Describir los múltiples beneficios que conlleva la implantación de una intranet en las escuelas.
  
 +
== Marco Teórico ==
  
== Marco Teórico ==
 
=== Tema: ===
 
==Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP,DNS, LDAP, Web y Almacenamiento de fácil instalación para escuelas.==
 
  
 +
'''Tema:'''
 +
 +
'''Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP,DNS, MYSQL, Web y Almacenamiento de fácil instalación para escuelas
 +
'''
 +
[[Archivo:EXPLICADO.jpg|500px|thumb|right|Intranet]]
 
Una Intranet es una red privada accesible solo para el personal de una organización.  A menudo, una amplia gama de información y servicios están disponibles en la intranet interna de una organización que no están disponibles para el público, a diferencia de Internet . Una intranet para toda la empresa puede constituir un importante punto focal de comunicación interna y colaboración, y proporcionar un único punto de partida para acceder a los recursos internos y externos. En su forma más simple, se establece una Intranet con las tecnologías para redes de área local (LAN) y redes de área amplia (WAN).
 
Una Intranet es una red privada accesible solo para el personal de una organización.  A menudo, una amplia gama de información y servicios están disponibles en la intranet interna de una organización que no están disponibles para el público, a diferencia de Internet . Una intranet para toda la empresa puede constituir un importante punto focal de comunicación interna y colaboración, y proporcionar un único punto de partida para acceder a los recursos internos y externos. En su forma más simple, se establece una Intranet con las tecnologías para redes de área local (LAN) y redes de área amplia (WAN).
  
Línea 37: Línea 45:
  
 
=== Firewalls ===
 
=== Firewalls ===
[[Archivo:firewall.gif|600px|thumb|right|Control de trafico Firewall]]
+
[[Archivo:firewall.gif|400px|thumb|right|Control de trafico Firewall]]
 
Un cortafuego es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella. Los cortafuegos pueden ser implementados en hardware o software separadamente, o en una combinación de ambos.  
 
Un cortafuego es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella. Los cortafuegos pueden ser implementados en hardware o software separadamente, o en una combinación de ambos.  
  
Línea 54: Línea 62:
 
Lo cierto es que no hay una gran diferencia en el papel que realizan o en su funcionamiento. De hecho, en muchos casos suelen ser la misma máquina. La mayor diferencia es que con un Proxy transparente, no tienes que hacer configuraciones de red para que el tráfico http sea capturado. Al estar construido como parte de la arquitectura de red, todo el tráfico del puerto 80 tiene que pasar por este Proxy transparente.
 
Lo cierto es que no hay una gran diferencia en el papel que realizan o en su funcionamiento. De hecho, en muchos casos suelen ser la misma máquina. La mayor diferencia es que con un Proxy transparente, no tienes que hacer configuraciones de red para que el tráfico http sea capturado. Al estar construido como parte de la arquitectura de red, todo el tráfico del puerto 80 tiene que pasar por este Proxy transparente.
 
Un pequeño inconveniente que ha sido motivo de muchas quejas por parte de usuarios, es que en ocasiones no vemos la página actualizada, y esto se nota sobre todo si la Web a la que estamos accediendo, cambia cada poco tiempo. Si la página a sido modificada con respecto a la que el proxy transparente tiene en caché, no veremos ese cambio a no ser que hagamos un “refresco” de página con la tecla F5, o la opción “Actualizar” en el propio navegador.
 
Un pequeño inconveniente que ha sido motivo de muchas quejas por parte de usuarios, es que en ocasiones no vemos la página actualizada, y esto se nota sobre todo si la Web a la que estamos accediendo, cambia cada poco tiempo. Si la página a sido modificada con respecto a la que el proxy transparente tiene en caché, no veremos ese cambio a no ser que hagamos un “refresco” de página con la tecla F5, o la opción “Actualizar” en el propio navegador.
 
=== Squid ===
 
Squid es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL. Entre sus utilidades está la de mejorar el rendimiento de las conexiones de empresas y particulares a Internet guardando en caché peticiones recurrentes a servidores web y DNS, acelerar el acceso a un servidor web determinado o añadir seguridad realizando filtrados de tráfico.
 
 
==== Características ====
 
* Caché transparente:
 
:Squid se puede configurar para ser usado como proxy transparente empleando un cortafuegos que intercepte y redirija las conexiones sin configuración por parte del cliente, e incluso sin que el propio usuario conozca de su existencia.
 
* Control de acceso
 
:Ofrece la posibilidad de establecer reglas de control de acceso. Esto permite establecer políticas de acceso en forma centralizada, simplificando la administración de una red.
 
* Gestión de tráfico
 
:Permite categorizar el tráfico y limitarlo de manera individual o agrupada para conseguir un mejor aprovechamiento del ancho de banda disponible en la conexión a Internet.
 
* Caché de resolución DNS
 
:Squid incorpora el programa dnsserver, que se encarga de las búsquedas de nombres de dominio. Cuando Squid se ejecuta, produce un número configurable de procesos dnsserver, y cada uno de ellos realiza su propia búsqueda en DNS. De este modo, se reduce la cantidad de tiempo que la caché debe esperar a estas búsquedas DNS.
 
  
 
=== Servidor DHCP ===
 
=== Servidor DHCP ===
Línea 87: Línea 82:
 
El servidor DHCP proporciona una configuración de red TCP/IP segura y evita conflictos de direcciones repetidas. Utiliza un modelo cliente-servidor en el que el servidor DHCP mantiene una administración centralizada de las direcciones IP utilizadas en la red. Los clientes podrán solicitar al servidor una dirección IP y así poder integrarse en la red.
 
El servidor DHCP proporciona una configuración de red TCP/IP segura y evita conflictos de direcciones repetidas. Utiliza un modelo cliente-servidor en el que el servidor DHCP mantiene una administración centralizada de las direcciones IP utilizadas en la red. Los clientes podrán solicitar al servidor una dirección IP y así poder integrarse en la red.
  
==== Funcionamiento de una petición DHCP ====
+
'''Funcionamiento de una petición DHCP'''
 +
 
 
[[Archivo:dhcp.jpg|600px|thumb|right|Como Funciona un DHCP]]
 
[[Archivo:dhcp.jpg|600px|thumb|right|Como Funciona un DHCP]]
 
El servidor solo asigna direcciones dentro de un rango prefijado. Si por error hemos configurado manualmente una IP estática perteneciente al rango gestionado por nuestro servidor DHCP, podría ocurrir que dicha dirección sea asignada dinámicamente a otro PC, provocándose un conflicto de IP. En ese caso el cliente solicitará y comprobará, otra dirección IP, hasta que obtenga una dirección IP que no esté asignada actualmente a ningún otro equipo de nuestra red.
 
El servidor solo asigna direcciones dentro de un rango prefijado. Si por error hemos configurado manualmente una IP estática perteneciente al rango gestionado por nuestro servidor DHCP, podría ocurrir que dicha dirección sea asignada dinámicamente a otro PC, provocándose un conflicto de IP. En ese caso el cliente solicitará y comprobará, otra dirección IP, hasta que obtenga una dirección IP que no esté asignada actualmente a ningún otro equipo de nuestra red.
Línea 97: Línea 93:
 
#Si la concesión de alquiler no ha caducado en el momento del inicio, el cliente intentará renovar su concesión en el servidor DHCP, es decir, que le sea asignada la misma dirección IP.
 
#Si la concesión de alquiler no ha caducado en el momento del inicio, el cliente intentará renovar su concesión en el servidor DHCP, es decir, que le sea asignada la misma dirección IP.
  
=== SERVIDOR DNS ===
+
=== Servidor DNS ===
 
¿Qué es un servidor DNS?
 
¿Qué es un servidor DNS?
Un servidor DNS (Domain Name System - Sistema de nombres de dominio) es un servidor que traduce nombres de dominio a IPs y viceversa. En las redes TCP/IP, cada PC dispone de una dirección IP para poder comunicarse con el resto de PCs.
+
 
 +
Un servidor DNS (Domain Name System - Sistema de nombres de dominio) es un servidor que traduce nombres de dominio a IPs y viceversa. En las redes TCP/IP, cada PC dispone de una dirección IP para poder comunicarse con el resto de PCs. [[Archivo:server-dns.jpg|400px|thumb|right|Función de un DNS]]
 
Trabajar con direcciones IP es incómodo para las personas, ya que requeriría conocer en todo momento las direcciones IP de los equipos a los que queremos conectarnos. En su lugar utilizamos nombres de dominio que son más fáciles de recordar y utilizar como por ejemplo www.google.es, www.educacion.gob.es, etc...
 
Trabajar con direcciones IP es incómodo para las personas, ya que requeriría conocer en todo momento las direcciones IP de los equipos a los que queremos conectarnos. En su lugar utilizamos nombres de dominio que son más fáciles de recordar y utilizar como por ejemplo www.google.es, www.educacion.gob.es, etc...
[[Archivo:server-dns.jpg|600px|thumb|right|Función de un DNS]]
 
  
 
Cada equipo y cada servidor conectado a Internet, dispone de una dirección IP y de un nombre perteneciente a un dominio. Internamente, la comunicación entre los PCs se realiza utilizando direcciones IP por eso es necesario algún sistema que permita, a partir de los nombres de los PCs, averiguar las direcciones IPs de los mismos.
 
Cada equipo y cada servidor conectado a Internet, dispone de una dirección IP y de un nombre perteneciente a un dominio. Internamente, la comunicación entre los PCs se realiza utilizando direcciones IP por eso es necesario algún sistema que permita, a partir de los nombres de los PCs, averiguar las direcciones IPs de los mismos.
  
Ejemplo: Cuando queremos acceder a la página web del Ministerio de Educación, en la barra de direcciones del navegador escribimos:
+
'''Ejemplo:'''
 +
 
 +
Cuando queremos acceder a la página web del Ministerio de Educación, en la barra de direcciones del navegador escribimos:
 
http://www.educacion.gob.es
 
http://www.educacion.gob.es
 
Nuestro PC tendrá que averiguar cual es la IP correspondiente a www.educacion.gob.es y una vez que ha averiguado que su IP es 193.147.0.112, se conecta con el servidor para adquirir la página web principal y mostrarla al usuario. Si en el navegador escribimos:
 
Nuestro PC tendrá que averiguar cual es la IP correspondiente a www.educacion.gob.es y una vez que ha averiguado que su IP es 193.147.0.112, se conecta con el servidor para adquirir la página web principal y mostrarla al usuario. Si en el navegador escribimos:
Línea 111: Línea 109:
 
Ahorraremos el paso de averiguar la IP y directamente nos mostrará la página web del Ministerio de Educación.
 
Ahorraremos el paso de averiguar la IP y directamente nos mostrará la página web del Ministerio de Educación.
  
=== OpenLDAP ===
+
=== MySQL  ===
[[Archivo:ldap.png|600px|thumb|right|]]
+
Es un potente administrador de bases de datos utilizado para organizar y recopilar información. MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual: Licencia pública general/Licencia comercial por Oracle  y está considerada como la base datos de código abierto más popular del mundo, y una de las más populares en general junto a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web.
Un servidor LDAP :
+
 
Es un servidor de datos optimizado para la realización rápida de consultas de lectura y orientado al almacenamiento de datos de usuarios a modo de directorio.
+
MySQL es muy utilizado en aplicaciones web, como Joomla, Wordpress, Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL.
La principal utilidad de un directorio LDAP es como servidor de autentificación para los distintos servicios de un sistema informático como puedan ser: autentificación para entrar en un PC, para entrar en una aplicación web, para acceder a un servidor ftp, para acceder a servidores de correo entrante POP3 y saliente SMTP, etc.
+
 
 +
=== Xoolar Lite: Sistema de Control de Alumnos Para Profesores ===
 +
 
 +
Xoolar Lite es un completo sistema de control de alumnos, se puede controlar diferentes grupos, listas de alumnos, asistencia, conducta/comportamiento y calificaciones, ideal para profesores públicos y privados de todos los niveles educativos.
 +
Xoolar Lite es una herramienta desarrollada para profesores que desean tener un control sistematizado de sus actividades en el salón de clases y sus alumnos.
 +
 
 +
'''Caracteristicas'''
 +
 
 +
'''Usuarios'''
 +
*Sistema multi usuario
 +
'''Grupos'''
 +
*Cada usuario puede gestionar sus propios grupos
 +
*Registrar alumnos en uno o más grupos
 +
*Exportación en Formato Word de la lista de alumnos
 +
'''Alumnos'''
 +
*Registro de alumnos y tutor o persona de contacto
 +
*Historial de Actividades del Alumno
 +
'''Asistencia'''
 +
*Tipo de asistencia: asistencia, falta, retardo y justificación
 +
*Modo de Edición de asistencia
 +
*Lista y consulta de asistencia por rango de fecha
 +
*Exportación en Formato Word de la lista de asistencia en un rango no mayor a 30 días
 +
'''Comportamiento o Conducta'''
 +
*Tipo de comportamiento: bueno, excelente, malo y muy malo
 +
*Modo de Edición de comportamiento
 +
*Lista y consulta de comportamiento por rango de fecha
 +
*Exportación en formato Word de la lista de comportamiento no mayor a 30 días
 +
'''Calificaciones'''
 +
*Manejo de bloques de calificaciones por grupo
 +
*Modo de Edición de calificaciones
 +
*Lista y consulta de calificaciones por bloques
 +
*Exportación en formato Word de la lista de calificaciones
 +
 
 +
=== Servidor FTP ===
 +
(Protocolo de Transferencia de Archivos) lleva su acrónimo por sus siglas en inglés: File Transfer Protocol, es un tipo de protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), el FTP permite, por ejemplo, que de un equipo que sea cliente pueda conectarse a un servidor para descargar archivos desde él o para enviarle archivos a un servidor.
 +
 
 +
Las innovaciones del FTP (Protocolo de Transferencia de Archivos) están fundamentadas en la manera de definir cómo se transferirán los archivos a través de una red TCP/IP (transporte y red). Así mismo, con este protocolo se puede permitir qué equipos remotos compartan archivos, además de la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor y por último, una transferencia de datos eficaz.
 +
 
 +
'''vsftpd, (o daemon FTP muy seguro )''',  es un servidor FTP para sistemas tipo Unix, incluido Linux . Está licenciado bajo la Licencia Pública General de GNU .
 +
 
 +
=== Servidor Samba ===  
 +
[[Archivo:servidor samba.png|200px|thumb|right|Función de Samba]]
 +
Samba son un conjunto de aplicaciones para Linux, que implementan el protocolo de comunicación SMB utilizado por los sistemas operativos Microsoft Windows para compartir carpetas e impresoras.
 +
 
 +
Básicamente samba permite a PCs que utilizan Linux, conectarse a carpetas compartidas en PCs con Windows y compartir carpetas como si de un sistema Windows se tratara. Gracias a samba, en una red podemos tener PCs con Windows y PCs con Linux de forma que puedan intercambiar información en carpetas compartidas de la misma forma que se haría si todos los PCs fueran Windows.
 +
 
 +
Cuando en una misma red conviven sistemas Unix con equipos Windows, se utiliza samba para integrarlos y poder intercambiar información. Como alternativa, sería posible utilizar protocolos estándar como el ftp que es utilizado tanto equipos Windows como equipos Linux.
 +
 
 +
'''Red mixta con sistemas Windows y Linux'''
 +
 
 +
Las funcionalidades de samba no se quedan solo en una simple compartición de archivos e impresoras sino que permite a un PC con Linux comportarse como un controlador de dominio de Windows para redes Microsoft con prestaciones superiores a las que nos ofrecería un servidor con Windows NT Server 4.0. En las páginas siguientes veremos como hacer que un PC con Linux haga las veces de controlador de dominio de nuestra red Windows.
 +
 
 +
== Tecnologías a Utilizar ==
 +
 
 +
=== Debian ===
 +
Debian es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.
 +
 
 +
Debian ofrece más que un S.O. puro; viene con 51000 paquetes, programas precompilados distribuidos en un formato que hace más fácil la instalación en su computadora
 +
 
 +
=== Interprete de comando BASH ===
 +
Una de las ventajas de Linux es la cantidad de opciones a la hora de personalizar el sistema. Una de las más interesantes es la automatización de tareas en Linux con Bash.
 +
 
 +
Los comandos Bash son conjunto de parámetros utilizados para la administración y configuración del sistema, así como un conjunto de combinaciones especiales de teclas para realizar tareas específicas en entornos Linux/Unix mediante un intérprete de comandos Bash.
 +
Para automatizar las tareas en Linux la mejores herramienta es Bash. Lo primero que tienes que hacer es crear un ‘script’. (Un ‘script’ es un fichero de texto plano que contiene una lista de comandos de un intérprete, en este caso Bash.)
 +
 
 +
Cuando abres el fichero ejecutable, automáticamente Linux procesa cada uno de los comandos dentro del ‘script’ ahorrándote tener que escribir dichos comandos una y otra vez.
 +
Para ejecutar programas de Bash puedes hacerlo directamente desde la consola o terminal de Linux, sin embargo, su mayor potencia radica en que puedas escribir ‘scripts’ y ejecutar piezas de código para automatizar tus tareas.
 +
 
 +
=== Squid ===
 +
Squid es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL. Entre sus utilidades está la de mejorar el rendimiento de las conexiones de empresas y particulares a Internet guardando en caché peticiones recurrentes a servidores web y DNS, acelerar el acceso a un servidor web determinado o añadir seguridad realizando filtrados de tráfico.
 +
 
 +
Características
 +
* Caché transparente:
 +
:Squid se puede configurar para ser usado como proxy transparente empleando un cortafuegos que intercepte y redirija las conexiones sin configuración por parte del cliente, e incluso sin que el propio usuario conozca de su existencia.
 +
* Control de acceso
 +
:Ofrece la posibilidad de establecer reglas de control de acceso. Esto permite establecer políticas de acceso en forma centralizada, simplificando la administración de una red.
 +
* Gestión de tráfico
 +
:Permite categorizar el tráfico y limitarlo de manera individual o agrupada para conseguir un mejor aprovechamiento del ancho de banda disponible en la conexión a Internet.
 +
* Caché de resolución DNS
 +
:Squid incorpora el programa dnsserver, que se encarga de las búsquedas de nombres de dominio. Cuando Squid se ejecuta, produce un número configurable de procesos dnsserver, y cada uno de ellos realiza su propia búsqueda en DNS. De este modo, se reduce la cantidad de tiempo que la caché debe esperar a estas búsquedas DNS.
  
Si en nuestra red disponemos de un servidor LDAP y configuramos todos los PCs y todos los servicios de la red para que se autentifiquen en él, bastará con crear las cuentas de usuario y grupos de usuarios en nuestro servidor LDAP para que los usuarios puedan hacer uso del sistema y de sus servicios desde cualquier puesto de la red. Es un sistema ideal para centralizar la administración de usuarios en un único lugar.
+
=== Apache ===
 +
'''¿Qué es Apache?'''
  
=== APACHE ===
 
¿Qué es Apache?
 
 
El servidor HTTP Apache2 es un servidor web de software libre desarrollado por la Apache Software Foundation (ASF). El producto obtenido de este proyecto es un servidor de código fuente completo, descargable y gratuito.
 
El servidor HTTP Apache2 es un servidor web de software libre desarrollado por la Apache Software Foundation (ASF). El producto obtenido de este proyecto es un servidor de código fuente completo, descargable y gratuito.
 
   
 
   
Línea 134: Línea 210:
 
* Multiplataforma ya que está disponible para diferentes plataformas como GNU/Linux, Windows, MacOS.
 
* Multiplataforma ya que está disponible para diferentes plataformas como GNU/Linux, Windows, MacOS.
  
=== Tecnologías a Utilizar ===
+
=== PHP7 ===
== Debian ==
+
'''¿Qué es PHP? (procesador de hipertexto)'''
Debian es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.
 
  
Debian ofrece más que un S.O. puro; viene con 51000 paquetes, programas precompilados distribuidos en un formato que hace más fácil la instalación en su computadora
+
PHP es un lenguaje de programación muy popular utilizado especialmente para la creación de páginas web dinámicas. Es de código abierto y distribuido bajo la licencia PHP, lo que hace posible reutilizar o modificar el código fuente sin costes adicionales. La función básica de PHP es leer datos de formularios y convertirlos en variables PHP. Posteriormente, las variables pueden, por ejemplo, ser introducidas en una base de datos o enviadas por correo electrónico.
  
== Interprete de comando BASH ==
+
Las ventajas de PHP incluyen su integración con el protocolo de Internet y un amplio soporte de diferentes modelos de bases de datos. Este lenguaje de programación es usado por más de un 82% de las páginas web del mercado y suele ser, por lo tanto, preinstalado por la mayoría de proveedores de alojamiento web.
Una de las ventajas de Linux es la cantidad de opciones a la hora de personalizar el sistema. Una de las más interesantes es la automatización de tareas en Linux con Bash.
 
  
Los comandos Bash son conjunto de parámetros utilizados para la administración y configuración del sistema, así como un conjunto de combinaciones especiales de teclas para realizar tareas específicas en entornos Linux/Unix mediante un intérprete de comandos Bash.
+
=== phpMyAdmin  ===
Para automatizar las tareas en Linux la mejores herramienta es Bash. Lo primero que tienes que hacer es crear un ‘script’. (Un ‘script’ es un fichero de texto plano que contiene una lista de comandos de un intérprete, en este caso Bash.)
+
PHPMyAdmin es una herramienta escrita en PHP que nos va a permitir gestionar y administrar bases de datos MySQL fácilmente a través de su sencilla interfaz web., utilizando Internet. Actualmente puede crear y eliminar Bases de Datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 72 idiomas. Se encuentra disponible bajo la licencia GPL Versión 2.
 
 
Cuando abres el fichero ejecutable, automáticamente Linux procesa cada uno de los comandos dentro del ‘script’ ahorrándote tener que escribir dichos comandos una y otra vez.
 
Para ejecutar programas de Bash puedes hacerlo directamente desde la consola o terminal de Linux, sin embargo, su mayor potencia radica en que puedas escribir ‘scripts’ y ejecutar piezas de código para automatizar tus tareas.
 
  
== VirtualBox ==
+
=== VirtualBox ===
 
Virtualbox es un software de virtualización para arquitecturas x86/amd64. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual. Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.
 
Virtualbox es un software de virtualización para arquitecturas x86/amd64. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual. Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.
  
== Cron ==
+
=== Cron ===
 
El nombre cron viene del griego chronos que significa “tiempo”. En el sistema operativo Unix, cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes). Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican en el fichero crontab.
 
El nombre cron viene del griego chronos que significa “tiempo”. En el sistema operativo Unix, cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes). Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican en el fichero crontab.
  
Línea 158: Línea 229:
 
El demonio cron inicia de /etc/rc.d/ o /etc/init.d dependiendo de la distribucion. Cron se ejecuta en el background, revisa cada minuto la tabla de tareas crontab /etc/crontab o en /var/spool/cron en búsqueda de tareas que se deban cumplir. Como usuario podemos agregar comandos o scripts con tareas a cron para automatizar algunos procesos. Esto es util por ejemplo para automatizar la actualizacion de un sistema o un buen sistema de respaldos.
 
El demonio cron inicia de /etc/rc.d/ o /etc/init.d dependiendo de la distribucion. Cron se ejecuta en el background, revisa cada minuto la tabla de tareas crontab /etc/crontab o en /var/spool/cron en búsqueda de tareas que se deban cumplir. Como usuario podemos agregar comandos o scripts con tareas a cron para automatizar algunos procesos. Esto es util por ejemplo para automatizar la actualizacion de un sistema o un buen sistema de respaldos.
  
== ¿Qué es Crontab? ==
+
=== ¿Qué es Crontab? ===
 
Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. Crontab verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background. Cada usuario puede tener su propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces utilizaremos el comando crontab.
 
Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. Crontab verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background. Cada usuario puede tener su propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces utilizaremos el comando crontab.
 +
 
Crontab es la manera mas sencilla de administrar tareas de cron en sistemas multiusuario, ya sea como simple usuario de sistema o usuario root.
 
Crontab es la manera mas sencilla de administrar tareas de cron en sistemas multiusuario, ya sea como simple usuario de sistema o usuario root.
https://blog.desdelinux.net/cron-crontab-explicados/
 
  
 +
=== Epoptes ===
 +
Es la herramienta que nos permite controlar todos los ordenadores del aula desde un único punto, entre estas funciones de control tenemos todo el privilegio, permite ver las computadoras de los alumnos, compartir la pantalla del docente con los alumnos, enviar mensajes, abrir programas de forma remota en la máquina de los alumnos, apagar o reiniciar las máquinas de manera remota, bloquear o desbloquear las maquinas o el silenciamiento del sonido de los clientes entre otras.
  
== Materiales ==
+
Este software es Open Source y se creó inicialmente para sistemas Ubuntu, Debian y openSUSE, pero ahora se  puedes instalar en cualquier sistema Gnu Linux, como también en archLinux o Fedora. Además esta traducido a más de 40 idiomas.
 +
La utilidad de esta herramienta puede ser para clases, cursos, etc, ya que podemos monitorizar el uso de todos sus participantes y ayudarles si tienes algún problema o incluso darle un aviso personal por medio de la aplicación.
  
== Métodos ==
+
== Materiales ==
 +
Para la construcción del proyecto de intranet se utilizaron herramientas como Firewall, filtro web, Proxy web transparente, DHCP, DNS, y lo más importante, la aplicación es de fácil instalación y está dirigido para escuelas.
 +
 
 +
Se crearon algunos scripts el cual cada uno contiene configuraciones para la instalación automática de la aplicación de intranet.  A continuación, se muestra el directorio de los scripts:
 +
 
 +
[[Archivo:intranet-directorio.jpg|400px]]
 +
 
 +
A continuación, se hace referencia a grandes rasgos sobre los pasos que se realizaron para el desarrollo de la aplicación intranet automática.
 +
 
 +
'''* FUNCIÒN DE COMPROBACIÒN'''
 +
# CAPTURA DE INFORMACION PARA ASIGNAR IP ESTATICA
 +
# FUNCION PARA VALIDAR IP
 +
# ESCRITURA DE ARCHIVO INTERFACES
 +
## SE COMPRUEBA SI EL ARCHIVO INTERFACES EXISTE, SI NO LO CREA.
 +
## MUESTRA EN PANTALLA LA INFORMACION QUE SE VA A ESCRIBIR EN EL ARCHIVO.
 +
## SE GUARDAN LOS NOMBRES DE LA INTERFACES DE RED QUE TIENE EL SERVIDOR EN UNA ARCHIVO TEMPORAL.
 +
## PIDE SELECCIONAR LA INTERFACE PARA RED INTERNA.
 +
## PIDE SELECCIONAR LA INTERFACE PARA RED EXTERNA (WAN).
 +
# FUNCION PARA CONFIRMACION DE LA INFORMACION INGRESADA.
 +
# SE CREAR ARCHIVOS TEMPORALES.
 +
# SE CREAR EL SCRIPT PARA NAT Y SE GUARDA EN EL DIRECTORIO /HOME
 +
# SE COMPRUEBA SI EL SCRIT DE NAT ESTA AGREGADO AL CRON SI NO LO AGREGA.
 +
# SE EJECUTAN LOS ECRIPTS DE CADA HERRAMIENTA DE SOFTWARE.
 +
 
 +
'''* Script repo.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT QUE INCLUIRÁ LOS REPOSITORIOS (chmod +x repos.sh).
 +
#SE EJECUTA EL SCRIPT QUE AGREGA LOS REPOSITORIOS OFICIALES DE DEBIAN (./repos.sh).
 +
 
 +
 
 +
'''*Script apache2.sh'''
 +
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE APACHE (chmod +x apache.sh)
 +
#SE EJECUTA EL SCRIPT PARA LA INSTALACIÓN DEL SERVIDOR APACHE (./apache.sh).
 +
 
 +
'''*Script sed.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE EDITOR SED (chmod +x sed.sh).
 +
#SE EJECUTA EL SCRIPT SED (./sed.sh).
 +
 
 +
 
 +
'''*Script dnsmasq.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE DNS (chmod +x dnsmasq.sh).
 +
#SE EJECUTA EL SCRIPT DNS (./dnsmasq.sh).
 +
 
 +
 
 +
'''*Script samba.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCION AL SCRIPT de samba (chmod +x samba.sh)-
 +
#SE EJECUTA EL SCRIPT samba (./samba.sh).
 +
 
 +
 
 +
'''*Script route.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DEL ROUTER (chmod +x /home/route.sh).
 +
#SE EJECUTA EL SCRIPT UTILIZANDO LA RUTA COMPLETA (sh /home/route.sh).
 +
 
 +
'''*Script squid.sh'''
 +
 
 +
#SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DEL PROXY TRANSPARENTE DE SQUID (chmod +x squid).
 +
#SE EJECUTA EL SCRIPT (./squid.sh).
 +
 
 +
 
 +
'''Costo del Proyecto'''
 +
 
 +
A continuación, se presenta los costos de los recursos, que se determinaron se utilizaron para el desarrollo del proyecto.
 +
 
 +
[[Archivo:intranet-costo.JPG]]
 +
 
 +
Es muy importante destacar que el Sistema Operativo es bajo la licencia GNU/Linux, así que
 +
no ocasiona ningún costo y es beneficioso ya que no incrementa el costo del desarrollo del
 +
proyecto.
  
 
== Resultados ==
 
== Resultados ==
 +
A continuación, se muestran algunas capturas que el proyecto realmente funciona:
 +
*El primer paso para la instalación de las herramientas mediante el script es otorgar permisos de ejecución al script “start.sh”
 +
 +
[[Archivo:intranet-st1.jpg]]
 +
 +
*Luego se ejecuta el script
 +
*Seleccionamos la interfaz para la red interna y red puente (WAN)
 +
 +
[[Archivo:intranet-2.jpg]]
 +
 +
*Se ingresan los datos de configuración para ip estática
 +
*Se validará la dirección ip, si la ip es correcta tecleamos la tecla s (SI)
 +
 +
[[Archivo:intranet-3.jpg]]
 +
 +
*Se realiza el proceso de configuración del archivo /etc/network/interfaces
 +
 +
[[Archivo:intranet-4.jpg]]
 +
 +
*Se renueva la ip de la interface puente
 +
 +
[[Archivo:intranet-5.jpg]]
 +
 +
*Se configuran los repositorios en el archivo /etc/apt/sources.list
 +
 +
[[Archivo:intranet-6.jpg]]
 +
 +
*Se comprueba si los paquetes están instalados, sino están instalados los instala
 +
 +
[[Archivo:intranet-7.jpg]]
 +
 +
'''Configura el DHCP y DNS'''
 +
 +
[[Archivo:intranet-8.png]]
 +
 +
*Se agrega una dirección dns local apuntando a la ip del servidor
 +
 +
[[Archivo:intranet-9.jpg]]
 +
 +
*Se instala y configura el SAMBA
 +
 +
[[Archivo:intranet-10.jpg]]
 +
 +
[[Archivo:intranet-11.jpg]]
 +
 +
[[Archivo:intranet-12.jpg]]
 +
 +
*Se instala y configura SQUID
 +
 +
[[Archivo:intranet-13.jpg]]
 +
 +
[[Archivo:intranet-14.jpg]]
 +
 +
'''Configuración proxy'''
 +
 +
[[Archivo:intranet-15.jpg]]
 +
 +
*Se instala el proftpd y se configura el directorio /home
 +
 +
[[Archivo:intranet-16.jpg]]
 +
 +
 +
'''Compartir internet con las PC’s clientes'''
 +
 +
[[Archivo:intranet-17.jpg]]
 +
 +
 +
*Se agrega el script de Nateo al CRON
 +
 +
[[Archivo:intranet-18.jpg]]
 +
 +
 +
'''Pruebas de funcionamiento en maquina cliente'''
 +
 +
'''Comprobamos los servicios y los puertos ofrecidos con el comando NMAP'''
 +
 +
[[Archivo:intranet-19.jpg]]
 +
 +
 +
'''DHCP'''
 +
 +
[[Archivo:intranet-20.jpg]]
 +
 +
 +
'''APACHE'''
 +
 +
[[Archivo:intranet-21.png]]
 +
 +
 +
'''DNS global y local'''
 +
 +
[[Archivo:intranet-22.jpg]]
 +
 +
[[Archivo:intranet-23.jpg]]
 +
 +
[[Archivo:intranet-24.jpg]]
 +
 +
 +
'''FTP'''
 +
 +
[[Archivo:intranet-25.jpg]]
 +
 +
[[Archivo:intranet-26.jpg]]
 +
 +
 +
'''SAMBA red con Windows 10'''
 +
 +
 +
[[Archivo:intranet-27.jpg]]
 +
 +
'''Repositorio del Proyecto'''
 +
 +
https://github.com/elmergmaradiaga/eduintranet
  
 
== Conclusiones ==
 
== Conclusiones ==
Línea 184: Línea 443:
  
 
== Glosario de Términos ==
 
== Glosario de Términos ==
Apache:  
+
'''Apache:'''
  
 
Es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web.
 
Es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web.
  
  
Avahi:  
+
'''Avahi:'''
  
 
Es un sistema que permite a los programas publicar y descubrir servicios y hosts que se ejecutan en una red local . Por ejemplo, un usuario puede conectar una computadora a una red y hacer que Avahi anuncie automáticamente los servicios de red que se ejecutan en su máquina.
 
Es un sistema que permite a los programas publicar y descubrir servicios y hosts que se ejecutan en una red local . Por ejemplo, un usuario puede conectar una computadora a una red y hacer que Avahi anuncie automáticamente los servicios de red que se ejecutan en su máquina.
  
 
+
'''
Cron:  
+
Cron:'''
  
 
Es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes).
 
Es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes).
  
  
Crontab:  
+
'''Crontab:'''
  
 
Es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background.
 
Es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background.
  
  
Debian:  
+
'''Debian:'''
  
 
Es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.
 
Es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.
  
  
DHCP:  
+
'''DHCP:  
 
+
'''
 
Es un protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los equipos de nuestra red.
 
Es un protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los equipos de nuestra red.
  
  
DNS:
+
'''DNS:'''
  
 
Es un servidor que traduce nombres de dominio a IPs y viceversa.
 
Es un servidor que traduce nombres de dominio a IPs y viceversa.
  
  
Dnsmasq:  
+
'''Dnsmasq:'''
  
 
Es un paquete que permite poner en marcha un servidor DNS y un servidor DHCP de una forma muy sencilla. Simplemente instalando y arrancando el servicio dnsmasq, sin realizar ningún tipo de configuración adicional, nuestro PC se convertirá en un servidor caché DNS y además, resolverá los nombres que tengamos configurados en el archivo /etc/hosts de nuestro servidor.
 
Es un paquete que permite poner en marcha un servidor DNS y un servidor DHCP de una forma muy sencilla. Simplemente instalando y arrancando el servicio dnsmasq, sin realizar ningún tipo de configuración adicional, nuestro PC se convertirá en un servidor caché DNS y además, resolverá los nombres que tengamos configurados en el archivo /etc/hosts de nuestro servidor.
  
  
Intranet:  
+
'''Intranet:'''
  
 
Es una red privada accesible solo para el personal de una organización.
 
Es una red privada accesible solo para el personal de una organización.
  
  
Filtro Web:
+
'''Filtro Web:'''
  
 
Es un programa diseñado para controlar qué contenido se permite mostrar, especialmente para restringir el acceso a ciertos materiales de la Web. El filtro de contenido determina qué contenido estará disponible en una máquina o red particular.
 
Es un programa diseñado para controlar qué contenido se permite mostrar, especialmente para restringir el acceso a ciertos materiales de la Web. El filtro de contenido determina qué contenido estará disponible en una máquina o red particular.
  
  
Firewall:  
+
'''Firewall:'''
  
 
Es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella.
 
Es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella.
  
  
IP:  
+
'''IP:'''
  
 
Es un número que identifica, de manera lógica y jerárquica, a una Interfaz en red (elemento de comunicación/conexión) de un dispositivo (computadora, tableta, portátil, smartphone) que utilice el protocolo IP o (Internet Protocol), que corresponde al nivel de red del modelo TCP/IP.
 
Es un número que identifica, de manera lógica y jerárquica, a una Interfaz en red (elemento de comunicación/conexión) de un dispositivo (computadora, tableta, portátil, smartphone) que utilice el protocolo IP o (Internet Protocol), que corresponde al nivel de red del modelo TCP/IP.
  
  
Iptables:  
+
'''Iptables:'''
  
 
Es un programa de utilidad de espacio de usuario que permite a un administrador del sistema configurar las tablas proporcionadas por el firewall del kernel de Linux (implementado como diferentes módulos de Netfilter ) y las cadenas y reglas que almacena.
 
Es un programa de utilidad de espacio de usuario que permite a un administrador del sistema configurar las tablas proporcionadas por el firewall del kernel de Linux (implementado como diferentes módulos de Netfilter ) y las cadenas y reglas que almacena.
  
  
LDAP :  
+
'''LDAP :'''
  
 
Es un servidor de datos optimizado para la realización rápida de consultas de lectura y orientado al almacenamiento de datos de usuarios a modo de directorio. Permitiendo la  autentificación para entrar en un PC, para entrar en una aplicación web, para acceder a un servidor ftp, para acceder a servidores de correo entrante POP3 y saliente SMTP, etc.
 
Es un servidor de datos optimizado para la realización rápida de consultas de lectura y orientado al almacenamiento de datos de usuarios a modo de directorio. Permitiendo la  autentificación para entrar en un PC, para entrar en una aplicación web, para acceder a un servidor ftp, para acceder a servidores de correo entrante POP3 y saliente SMTP, etc.
  
 
+
'''
Proxy transparente:  
+
Proxy transparente:'''
  
 
Mejoran la calidad del servicio en la navegación por Internet, entregando contenido a un mayor ancho de banda y reduciendo la latencia en la transmisión. Es decir, Si alguien ya ha bajado un archivo que queremos o ha visto una página Web que nosotros queremos visualizar, es mucho más rápido que nos lo provea la infraestructura del Proxy transparente, que volver a Internet y conseguirlo desde ahí.
 
Mejoran la calidad del servicio en la navegación por Internet, entregando contenido a un mayor ancho de banda y reduciendo la latencia en la transmisión. Es decir, Si alguien ya ha bajado un archivo que queremos o ha visto una página Web que nosotros queremos visualizar, es mucho más rápido que nos lo provea la infraestructura del Proxy transparente, que volver a Internet y conseguirlo desde ahí.
  
  
Servidor Proxy Web:  
+
'''Servidor Proxy Web:'''
  
 
Es el que almacenan contenido que frecuentemente es accedido, y por ello lo guarda para que otras personas que quieran ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo. El lugar donde guarda este contenido se llama caché.
 
Es el que almacenan contenido que frecuentemente es accedido, y por ello lo guarda para que otras personas que quieran ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo. El lugar donde guarda este contenido se llama caché.
  
  
Servidor Web:
+
'''Servidor Web:'''
  
 
Es un protocolo está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras,formularios, botones y objetos incrustados como animaciones o reproductores de sonidos.”
 
Es un protocolo está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras,formularios, botones y objetos incrustados como animaciones o reproductores de sonidos.”
  
  
Squid:  
+
'''Squid:'''
  
 
Es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL.
 
Es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL.
  
  
Virtualbox:  
+
'''Virtualbox:'''
  
 
Es un software de virtualización para arquitecturas x86/amd64.Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.
 
Es un software de virtualización para arquitecturas x86/amd64.Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.

Revisión actual del 08:57 9 jul 2018

Palabras Claves

Nateo, Interfaces, Repositorios, Router, Dominios, Red WAN, Proxy, Ldap, Script bash, IP estática

Introducción

La implementación de la informática en las instituciones educativas tuvo como punto de partida, la aplicación de las nuevas tecnologías en el área de enseñanza-aprendizaje. La información que genera una escuela forma parte de su patrimonio, la misma debe de ser cuidada, almacenada y estar disponible para su uso en beneficio de la misma. Una solución es la creación de Intranets. Una Intranet permite tener acceso rápido a cualquier documento de la escuela, siempre que se tenga el nivel de privilegios adecuado para poder acceder a ellos.

La implementación de una Intranet brinda varias ventajas. Entre ellas podemos mencionar: Facilidad para publicar y compartir información, conocimientos y documentación en un ambiente controlado. Interfaz común y personalizable para los usuarios de modo que tengan acceso sólo a los contenidos autorizados y de su interés. Entre otras ventajas. Es por eso que como grupo decidimos desarrollar el tema : Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP, DNS, LDAP, Web y Almacenamiento de fácil instalación para escuelas. Para la realización del proyecto realizamos investigaciones que nos permiten facilitar la instalación de servidores y herramientas, logrando desarrollar un scrip que nos permite automatizar todos los procesos de instalaciones y actualizaciones necesarias tanto en la PC Servidor y las PC Clientes. Y de este modo, permitir optimizar los procesos de enseñanza-aprendizaje, agilizar la información, disponibilidad de información oportuna, poniéndola a disposición de quienes lo requieran.

Repositorio del Proyecto https://github.com/elmergmaradiaga/eduintranet

Objetivos

Objetivo General

Crear un script de instalación automática de herramientas para mejorar el proceso de enseñanza-aprendizaje, aumentar la eficiencia, creatividad e innovación en los alumnos con la implementación de Intranet en la escuela, permitiendo interactuar y acceder rápidamente a contenido almacenado en el servidor.

Objetivos Específicos

  • Demostrar la importancia de usar una Intranet en las escuelas para mejorar el proceso de enseñanza y aprendizaje.
  • Describir los múltiples beneficios que conlleva la implantación de una intranet en las escuelas.

Marco Teórico

Tema:

Intranet con servicios de Firewall, filtro web, proxy web transparente, DHCP,DNS, MYSQL, Web y Almacenamiento de fácil instalación para escuelas

Intranet

Una Intranet es una red privada accesible solo para el personal de una organización. A menudo, una amplia gama de información y servicios están disponibles en la intranet interna de una organización que no están disponibles para el público, a diferencia de Internet . Una intranet para toda la empresa puede constituir un importante punto focal de comunicación interna y colaboración, y proporcionar un único punto de partida para acceder a los recursos internos y externos. En su forma más simple, se establece una Intranet con las tecnologías para redes de área local (LAN) y redes de área amplia (WAN).


Implementar un sistema de Intranet en una institución educativa brinda varias ventajas. Entre ellas:

  • Acceso a información en tiempo real, 24 horas al día.
  • Mejor comunicación con todos los usuarios y la comunidad educativa.
  • Facilidad para publicar y compartir información, conocimientos y documentación en un ambiente controlado.
  • Reducción de costos de impresión y de licencias de programas o aplicaciones (Software).
  • Interface común y personalizable para los usuarios de modo que tengan acceso sólo a los contenidos autorizados y de su interés.
  • Protegido con todos los estándares de ciber seguridad para que tus datos siempre estén seguros. La red local será invisible desde el exterior y requerirás de una contraseña para acceder a la información.
  • Es una forma muy eficiente y económica de distribuir la información interna, sustituyendo los medios clásicos.

Firewalls

Control de trafico Firewall

Un cortafuego es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella. Los cortafuegos pueden ser implementados en hardware o software separadamente, o en una combinación de ambos.

Los cortafuegos se utilizan, con frecuencia, para evitar que los usuarios de Internet no autorizados tengan acceso a redes privadas conectadas a Internet, especialmente intranets. Todos los paquetes que entren o salgan de la intranet pasan a través del cortafuegos, que examina cada paquete y permite o deniega (esto es, realiza la función de un servidor proxy), el tráfico en función de los criterios de seguridad especificados.

Filtro Web

En informática, un filtro web o filtro de contenido, se refiere a un programa diseñado para controlar qué contenido se permite mostrar, especialmente para restringir el acceso a ciertos materiales de la Web. El filtro de contenido determina qué contenido estará disponible en una máquina o red particular. El motivo suele ser para prevenir a las personas ver contenido que el dueño de la computadora u otras autoridades consideran objetable. Cuando se impone sin el consentimiento del usuario, puede constituir censura. Los usos comunes de estos programas incluyen padres que desean limitar los sitios que sus hijos ven en sus computadoras domésticas, escuelas con el mismo objetivo, empleadores para restringir qué contenidos pueden ver los empleados en el trabajo, etc.

Servidor Proxy Web

Como funciona un servidor proxy

Los proxies almacenan contenido que frecuentemente es accedido, y por ello lo guarda para que otras personas que quieran ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo. El lugar donde guarda este contenido se llama caché. Funciona más o menos de esta manera: Un usuario requiere una página Web de un navegador de Internet. La red analiza esa petición, y basándose en ciertos parámetros, redirección esa petición a un caché de la red local. Si el caché no tiene esa página Web, hará su propia petición al servidor Web. El servidor Web entrega el contenido al proxy que lo guarda en caché a la vez que se lo entrega al usuario que hizo la petición original. Ese contenido queda almacenado. Más tarde, cuando otro usuario quiera ver esa página Web, en lugar de hacer de nuevo la petición al servidor Web, le entrega la copia que tiene guardada. Este proceso reduce el tiempo de descarga para el usuario. ¿Qué es un Proxy transparente? Los Proxies transparentes mejoran la calidad del servicio en la navegación por Internet, entregando contenido a un mayor ancho de banda y reduciendo la latencia en la transmisión. Si no usáramos proxies, los usuarios estarían atravesando Internet en muchas ocasiones, por servidores y enlaces lentos o con problemas, dependiendo del país donde están localizados los equipos. Dicho de otra manera, Si alguien ya ha bajado un archivo que queremos o ha visto una página Web que nosotros queremos visualizar, es mucho más rápido que nos lo provea la infraestructura del proxy transparente, que volver a Internet y conseguirlo desde ahí.

¿Qué diferencia hay entre un Proxy normal y un Proxy transparente? Lo cierto es que no hay una gran diferencia en el papel que realizan o en su funcionamiento. De hecho, en muchos casos suelen ser la misma máquina. La mayor diferencia es que con un Proxy transparente, no tienes que hacer configuraciones de red para que el tráfico http sea capturado. Al estar construido como parte de la arquitectura de red, todo el tráfico del puerto 80 tiene que pasar por este Proxy transparente. Un pequeño inconveniente que ha sido motivo de muchas quejas por parte de usuarios, es que en ocasiones no vemos la página actualizada, y esto se nota sobre todo si la Web a la que estamos accediendo, cambia cada poco tiempo. Si la página a sido modificada con respecto a la que el proxy transparente tiene en caché, no veremos ese cambio a no ser que hagamos un “refresco” de página con la tecla F5, o la opción “Actualizar” en el propio navegador.

Servidor DHCP

¿Qué es el DHCP? El protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los equipos de nuestra red. Si disponemos de un servidor DHCP, la configuración IP de los PCs puede hacerse de forma automática, evitando así la necesidad de tener que realizar manualmente uno por uno la configuración TCP/IP de cada equipo.

Un servidor DHCP es un servidor que recibe peticiones de clientes solicitando una configuración de red IP. El servidor responderá a dichas peticiones proporcionando los parámetros que permitan a los clientes auto configurarse. Para que un PC solicite la configuración a un servidor, en la configuración de red de los PCs hay que seleccionar la opción 'Obtener dirección IP automáticamente'.


El servidor proporcionará al cliente al menos los siguientes parámetros:

  • Dirección IP
  • Máscara de subred

Opcionalmente, el servidor DHCP podrá proporcionar otros parámetros de configuración tales como:

  • Puerta de enlace
  • Servidores DNS
  • Muchos otros parámetros más

El servidor DHCP proporciona una configuración de red TCP/IP segura y evita conflictos de direcciones repetidas. Utiliza un modelo cliente-servidor en el que el servidor DHCP mantiene una administración centralizada de las direcciones IP utilizadas en la red. Los clientes podrán solicitar al servidor una dirección IP y así poder integrarse en la red.

Funcionamiento de una petición DHCP

Como Funciona un DHCP

El servidor solo asigna direcciones dentro de un rango prefijado. Si por error hemos configurado manualmente una IP estática perteneciente al rango gestionado por nuestro servidor DHCP, podría ocurrir que dicha dirección sea asignada dinámicamente a otro PC, provocándose un conflicto de IP. En ese caso el cliente solicitará y comprobará, otra dirección IP, hasta que obtenga una dirección IP que no esté asignada actualmente a ningún otro equipo de nuestra red.

La primera vez que seleccionamos en un PC que su configuración IP se determine por DHCP, éste pasará a convertirse en un cliente DHCP e intentará localizar un servidor DHCP para obtener una configuración desde el mismo. Si no encuentra ningún servidor DHCP, el cliente no podrá disponer de dirección IP y por lo tanto no podrá comunicarse con la red. Si el cliente encuentra un servidor DHCP, éste le proporcionará, para un periodo predeterminado, una configuración IP que le permitirá comunicarse con la red. Cuando haya transcurrido el 50% del periodo, el cliente solicitará una renovación del mismo.

Cuando arrancamos de nuevo un PC cuya configuración IP se determina por DHCP, pueden darse dos situaciones:

  1. Si la concesión de alquiler de licencia ha caducado, el cliente solicitará una nueva licencia al servidor DHCP (la asignación del servidor podría o no, coincidir con la anterior).
  2. Si la concesión de alquiler no ha caducado en el momento del inicio, el cliente intentará renovar su concesión en el servidor DHCP, es decir, que le sea asignada la misma dirección IP.

Servidor DNS

¿Qué es un servidor DNS?

Un servidor DNS (Domain Name System - Sistema de nombres de dominio) es un servidor que traduce nombres de dominio a IPs y viceversa. En las redes TCP/IP, cada PC dispone de una dirección IP para poder comunicarse con el resto de PCs.
Función de un DNS

Trabajar con direcciones IP es incómodo para las personas, ya que requeriría conocer en todo momento las direcciones IP de los equipos a los que queremos conectarnos. En su lugar utilizamos nombres de dominio que son más fáciles de recordar y utilizar como por ejemplo www.google.es, www.educacion.gob.es, etc...

Cada equipo y cada servidor conectado a Internet, dispone de una dirección IP y de un nombre perteneciente a un dominio. Internamente, la comunicación entre los PCs se realiza utilizando direcciones IP por eso es necesario algún sistema que permita, a partir de los nombres de los PCs, averiguar las direcciones IPs de los mismos.

Ejemplo:

Cuando queremos acceder a la página web del Ministerio de Educación, en la barra de direcciones del navegador escribimos: http://www.educacion.gob.es Nuestro PC tendrá que averiguar cual es la IP correspondiente a www.educacion.gob.es y una vez que ha averiguado que su IP es 193.147.0.112, se conecta con el servidor para adquirir la página web principal y mostrarla al usuario. Si en el navegador escribimos: http://193.147.0.112 Ahorraremos el paso de averiguar la IP y directamente nos mostrará la página web del Ministerio de Educación.

MySQL

Es un potente administrador de bases de datos utilizado para organizar y recopilar información. MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual: Licencia pública general/Licencia comercial por Oracle y está considerada como la base datos de código abierto más popular del mundo, y una de las más populares en general junto a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web.

MySQL es muy utilizado en aplicaciones web, como Joomla, Wordpress, Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL.

Xoolar Lite: Sistema de Control de Alumnos Para Profesores

Xoolar Lite es un completo sistema de control de alumnos, se puede controlar diferentes grupos, listas de alumnos, asistencia, conducta/comportamiento y calificaciones, ideal para profesores públicos y privados de todos los niveles educativos. Xoolar Lite es una herramienta desarrollada para profesores que desean tener un control sistematizado de sus actividades en el salón de clases y sus alumnos.

Caracteristicas

Usuarios

  • Sistema multi usuario

Grupos

  • Cada usuario puede gestionar sus propios grupos
  • Registrar alumnos en uno o más grupos
  • Exportación en Formato Word de la lista de alumnos

Alumnos

  • Registro de alumnos y tutor o persona de contacto
  • Historial de Actividades del Alumno

Asistencia

  • Tipo de asistencia: asistencia, falta, retardo y justificación
  • Modo de Edición de asistencia
  • Lista y consulta de asistencia por rango de fecha
  • Exportación en Formato Word de la lista de asistencia en un rango no mayor a 30 días

Comportamiento o Conducta

  • Tipo de comportamiento: bueno, excelente, malo y muy malo
  • Modo de Edición de comportamiento
  • Lista y consulta de comportamiento por rango de fecha
  • Exportación en formato Word de la lista de comportamiento no mayor a 30 días

Calificaciones

  • Manejo de bloques de calificaciones por grupo
  • Modo de Edición de calificaciones
  • Lista y consulta de calificaciones por bloques
  • Exportación en formato Word de la lista de calificaciones

Servidor FTP

(Protocolo de Transferencia de Archivos) lleva su acrónimo por sus siglas en inglés: File Transfer Protocol, es un tipo de protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), el FTP permite, por ejemplo, que de un equipo que sea cliente pueda conectarse a un servidor para descargar archivos desde él o para enviarle archivos a un servidor.

Las innovaciones del FTP (Protocolo de Transferencia de Archivos) están fundamentadas en la manera de definir cómo se transferirán los archivos a través de una red TCP/IP (transporte y red). Así mismo, con este protocolo se puede permitir qué equipos remotos compartan archivos, además de la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor y por último, una transferencia de datos eficaz.

vsftpd, (o daemon FTP muy seguro ), es un servidor FTP para sistemas tipo Unix, incluido Linux . Está licenciado bajo la Licencia Pública General de GNU .

Servidor Samba

Función de Samba

Samba son un conjunto de aplicaciones para Linux, que implementan el protocolo de comunicación SMB utilizado por los sistemas operativos Microsoft Windows para compartir carpetas e impresoras.

Básicamente samba permite a PCs que utilizan Linux, conectarse a carpetas compartidas en PCs con Windows y compartir carpetas como si de un sistema Windows se tratara. Gracias a samba, en una red podemos tener PCs con Windows y PCs con Linux de forma que puedan intercambiar información en carpetas compartidas de la misma forma que se haría si todos los PCs fueran Windows.

Cuando en una misma red conviven sistemas Unix con equipos Windows, se utiliza samba para integrarlos y poder intercambiar información. Como alternativa, sería posible utilizar protocolos estándar como el ftp que es utilizado tanto equipos Windows como equipos Linux.

Red mixta con sistemas Windows y Linux

Las funcionalidades de samba no se quedan solo en una simple compartición de archivos e impresoras sino que permite a un PC con Linux comportarse como un controlador de dominio de Windows para redes Microsoft con prestaciones superiores a las que nos ofrecería un servidor con Windows NT Server 4.0. En las páginas siguientes veremos como hacer que un PC con Linux haga las veces de controlador de dominio de nuestra red Windows.

Tecnologías a Utilizar

Debian

Debian es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.

Debian ofrece más que un S.O. puro; viene con 51000 paquetes, programas precompilados distribuidos en un formato que hace más fácil la instalación en su computadora

Interprete de comando BASH

Una de las ventajas de Linux es la cantidad de opciones a la hora de personalizar el sistema. Una de las más interesantes es la automatización de tareas en Linux con Bash.

Los comandos Bash son conjunto de parámetros utilizados para la administración y configuración del sistema, así como un conjunto de combinaciones especiales de teclas para realizar tareas específicas en entornos Linux/Unix mediante un intérprete de comandos Bash. Para automatizar las tareas en Linux la mejores herramienta es Bash. Lo primero que tienes que hacer es crear un ‘script’. (Un ‘script’ es un fichero de texto plano que contiene una lista de comandos de un intérprete, en este caso Bash.)

Cuando abres el fichero ejecutable, automáticamente Linux procesa cada uno de los comandos dentro del ‘script’ ahorrándote tener que escribir dichos comandos una y otra vez. Para ejecutar programas de Bash puedes hacerlo directamente desde la consola o terminal de Linux, sin embargo, su mayor potencia radica en que puedas escribir ‘scripts’ y ejecutar piezas de código para automatizar tus tareas.

Squid

Squid es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL. Entre sus utilidades está la de mejorar el rendimiento de las conexiones de empresas y particulares a Internet guardando en caché peticiones recurrentes a servidores web y DNS, acelerar el acceso a un servidor web determinado o añadir seguridad realizando filtrados de tráfico.

Características

  • Caché transparente:
Squid se puede configurar para ser usado como proxy transparente empleando un cortafuegos que intercepte y redirija las conexiones sin configuración por parte del cliente, e incluso sin que el propio usuario conozca de su existencia.
  • Control de acceso
Ofrece la posibilidad de establecer reglas de control de acceso. Esto permite establecer políticas de acceso en forma centralizada, simplificando la administración de una red.
  • Gestión de tráfico
Permite categorizar el tráfico y limitarlo de manera individual o agrupada para conseguir un mejor aprovechamiento del ancho de banda disponible en la conexión a Internet.
  • Caché de resolución DNS
Squid incorpora el programa dnsserver, que se encarga de las búsquedas de nombres de dominio. Cuando Squid se ejecuta, produce un número configurable de procesos dnsserver, y cada uno de ellos realiza su propia búsqueda en DNS. De este modo, se reduce la cantidad de tiempo que la caché debe esperar a estas búsquedas DNS.

Apache

¿Qué es Apache?

El servidor HTTP Apache2 es un servidor web de software libre desarrollado por la Apache Software Foundation (ASF). El producto obtenido de este proyecto es un servidor de código fuente completo, descargable y gratuito.

Apache es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente de implantación a Apache, o que utilizarán características propias de este servidor web.

Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a disposición en una forma segura y confiable. Un ejemplo es al momento de compartir archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache instalado en su escritorio puede colocar arbitrariamente archivos en la raíz de documentos de Apache, desde donde pueden ser compartidos.

Es también un servidor estable, eficiente, extensible y multiplataforma.

  • Estable: es una consecuencia de su probada robustez que impide caídas o cambios en el servidor inesperados.
  • Flexible y eficiente: es capaz de trabajar con el estándar HTTP/1.1(RFC2616) y con la mayor parte de la sextensiones web que existen en la actualidad, como son los módulos PHP, SSL, CGI, SSI, proxy,...
  • Extensible: dispone de gran cantidad de módulos que amplían su funcionalidad.
  • Multiplataforma ya que está disponible para diferentes plataformas como GNU/Linux, Windows, MacOS.

PHP7

¿Qué es PHP? (procesador de hipertexto)

PHP es un lenguaje de programación muy popular utilizado especialmente para la creación de páginas web dinámicas. Es de código abierto y distribuido bajo la licencia PHP, lo que hace posible reutilizar o modificar el código fuente sin costes adicionales. La función básica de PHP es leer datos de formularios y convertirlos en variables PHP. Posteriormente, las variables pueden, por ejemplo, ser introducidas en una base de datos o enviadas por correo electrónico.

Las ventajas de PHP incluyen su integración con el protocolo de Internet y un amplio soporte de diferentes modelos de bases de datos. Este lenguaje de programación es usado por más de un 82% de las páginas web del mercado y suele ser, por lo tanto, preinstalado por la mayoría de proveedores de alojamiento web.

phpMyAdmin

PHPMyAdmin es una herramienta escrita en PHP que nos va a permitir gestionar y administrar bases de datos MySQL fácilmente a través de su sencilla interfaz web., utilizando Internet. Actualmente puede crear y eliminar Bases de Datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 72 idiomas. Se encuentra disponible bajo la licencia GPL Versión 2.

VirtualBox

Virtualbox es un software de virtualización para arquitecturas x86/amd64. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual. Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.

Cron

El nombre cron viene del griego chronos que significa “tiempo”. En el sistema operativo Unix, cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes). Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican en el fichero crontab.

Cómo funciona El demonio cron inicia de /etc/rc.d/ o /etc/init.d dependiendo de la distribucion. Cron se ejecuta en el background, revisa cada minuto la tabla de tareas crontab /etc/crontab o en /var/spool/cron en búsqueda de tareas que se deban cumplir. Como usuario podemos agregar comandos o scripts con tareas a cron para automatizar algunos procesos. Esto es util por ejemplo para automatizar la actualizacion de un sistema o un buen sistema de respaldos.

¿Qué es Crontab?

Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. Crontab verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background. Cada usuario puede tener su propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces utilizaremos el comando crontab.

Crontab es la manera mas sencilla de administrar tareas de cron en sistemas multiusuario, ya sea como simple usuario de sistema o usuario root.

Epoptes

Es la herramienta que nos permite controlar todos los ordenadores del aula desde un único punto, entre estas funciones de control tenemos todo el privilegio, permite ver las computadoras de los alumnos, compartir la pantalla del docente con los alumnos, enviar mensajes, abrir programas de forma remota en la máquina de los alumnos, apagar o reiniciar las máquinas de manera remota, bloquear o desbloquear las maquinas o el silenciamiento del sonido de los clientes entre otras.

Este software es Open Source y se creó inicialmente para sistemas Ubuntu, Debian y openSUSE, pero ahora se puedes instalar en cualquier sistema Gnu Linux, como también en archLinux o Fedora. Además esta traducido a más de 40 idiomas. La utilidad de esta herramienta puede ser para clases, cursos, etc, ya que podemos monitorizar el uso de todos sus participantes y ayudarles si tienes algún problema o incluso darle un aviso personal por medio de la aplicación.

Materiales

Para la construcción del proyecto de intranet se utilizaron herramientas como Firewall, filtro web, Proxy web transparente, DHCP, DNS, y lo más importante, la aplicación es de fácil instalación y está dirigido para escuelas.

Se crearon algunos scripts el cual cada uno contiene configuraciones para la instalación automática de la aplicación de intranet. A continuación, se muestra el directorio de los scripts:

Intranet-directorio.jpg

A continuación, se hace referencia a grandes rasgos sobre los pasos que se realizaron para el desarrollo de la aplicación intranet automática.

* FUNCIÒN DE COMPROBACIÒN

  1. CAPTURA DE INFORMACION PARA ASIGNAR IP ESTATICA
  2. FUNCION PARA VALIDAR IP
  3. ESCRITURA DE ARCHIVO INTERFACES
    1. SE COMPRUEBA SI EL ARCHIVO INTERFACES EXISTE, SI NO LO CREA.
    2. MUESTRA EN PANTALLA LA INFORMACION QUE SE VA A ESCRIBIR EN EL ARCHIVO.
    3. SE GUARDAN LOS NOMBRES DE LA INTERFACES DE RED QUE TIENE EL SERVIDOR EN UNA ARCHIVO TEMPORAL.
    4. PIDE SELECCIONAR LA INTERFACE PARA RED INTERNA.
    5. PIDE SELECCIONAR LA INTERFACE PARA RED EXTERNA (WAN).
  4. FUNCION PARA CONFIRMACION DE LA INFORMACION INGRESADA.
  5. SE CREAR ARCHIVOS TEMPORALES.
  6. SE CREAR EL SCRIPT PARA NAT Y SE GUARDA EN EL DIRECTORIO /HOME
  7. SE COMPRUEBA SI EL SCRIT DE NAT ESTA AGREGADO AL CRON SI NO LO AGREGA.
  8. SE EJECUTAN LOS ECRIPTS DE CADA HERRAMIENTA DE SOFTWARE.

* Script repo.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT QUE INCLUIRÁ LOS REPOSITORIOS (chmod +x repos.sh).
  2. SE EJECUTA EL SCRIPT QUE AGREGA LOS REPOSITORIOS OFICIALES DE DEBIAN (./repos.sh).


*Script apache2.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE APACHE (chmod +x apache.sh)
  2. SE EJECUTA EL SCRIPT PARA LA INSTALACIÓN DEL SERVIDOR APACHE (./apache.sh).

*Script sed.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE EDITOR SED (chmod +x sed.sh).
  2. SE EJECUTA EL SCRIPT SED (./sed.sh).


*Script dnsmasq.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DE DNS (chmod +x dnsmasq.sh).
  2. SE EJECUTA EL SCRIPT DNS (./dnsmasq.sh).


*Script samba.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCION AL SCRIPT de samba (chmod +x samba.sh)-
  2. SE EJECUTA EL SCRIPT samba (./samba.sh).


*Script route.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DEL ROUTER (chmod +x /home/route.sh).
  2. SE EJECUTA EL SCRIPT UTILIZANDO LA RUTA COMPLETA (sh /home/route.sh).

*Script squid.sh

  1. SE LE OTORGAN LOS PERMISOS DE EJECUCIÓN AL SCRIPT DEL PROXY TRANSPARENTE DE SQUID (chmod +x squid).
  2. SE EJECUTA EL SCRIPT (./squid.sh).


Costo del Proyecto

A continuación, se presenta los costos de los recursos, que se determinaron se utilizaron para el desarrollo del proyecto.

Intranet-costo.JPG

Es muy importante destacar que el Sistema Operativo es bajo la licencia GNU/Linux, así que no ocasiona ningún costo y es beneficioso ya que no incrementa el costo del desarrollo del proyecto.

Resultados

A continuación, se muestran algunas capturas que el proyecto realmente funciona:

  • El primer paso para la instalación de las herramientas mediante el script es otorgar permisos de ejecución al script “start.sh”

Intranet-st1.jpg

  • Luego se ejecuta el script
  • Seleccionamos la interfaz para la red interna y red puente (WAN)

Intranet-2.jpg

  • Se ingresan los datos de configuración para ip estática
  • Se validará la dirección ip, si la ip es correcta tecleamos la tecla s (SI)

Intranet-3.jpg

  • Se realiza el proceso de configuración del archivo /etc/network/interfaces

Intranet-4.jpg

  • Se renueva la ip de la interface puente

Intranet-5.jpg

  • Se configuran los repositorios en el archivo /etc/apt/sources.list

Intranet-6.jpg

  • Se comprueba si los paquetes están instalados, sino están instalados los instala

Intranet-7.jpg

Configura el DHCP y DNS

Intranet-8.png

  • Se agrega una dirección dns local apuntando a la ip del servidor

Intranet-9.jpg

  • Se instala y configura el SAMBA

Intranet-10.jpg

Intranet-11.jpg

Intranet-12.jpg

  • Se instala y configura SQUID

Intranet-13.jpg

Intranet-14.jpg

Configuración proxy

Intranet-15.jpg

  • Se instala el proftpd y se configura el directorio /home

Intranet-16.jpg


Compartir internet con las PC’s clientes

Intranet-17.jpg


  • Se agrega el script de Nateo al CRON

Intranet-18.jpg


Pruebas de funcionamiento en maquina cliente

Comprobamos los servicios y los puertos ofrecidos con el comando NMAP

Intranet-19.jpg


DHCP

Intranet-20.jpg


APACHE

Intranet-21.png


DNS global y local

Intranet-22.jpg

Intranet-23.jpg

Intranet-24.jpg


FTP

Intranet-25.jpg

Intranet-26.jpg


SAMBA red con Windows 10


Intranet-27.jpg

Repositorio del Proyecto

https://github.com/elmergmaradiaga/eduintranet

Conclusiones

  • Teniendo en cuenta el entorno competitivo en el que vivimos y las necesidades que tienen las escuelas de mejorar la enseñanza-aprendizaje en los alumnos, debemos considerar algunas opciones tecnológicas. Y por tanto la implementación de una intranet en las escuelas ayudara a aumentar la eficiencia, creatividad e innovación en los alumnos.
  • Dentro de las escuelas siempre se busca minimizar gastos y maximizar los recursos que se tienen. Es por ellos que es aconsejable implementar una Intranet, la cual le permite múltiples beneficios para la institución, entre ellas podemos mencionar la seguridad que brinda el Firewall, el cual impide que los alumnos accedan a paginas de Internet que no están autorizados. Ademas se ahorra en tiempo y dinero gracias al proxy web, el cual tiene como función almacenar el contenido que ya ha sido accedido, guardando en su cache el contenido para que otras personas que quieran ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo.

Recomendaciones

  • Hacer una copia de los archivos de configuración, garantizando la seguridad de estos.
  • Comentar las lineas de configuraciones en los diferentes archivos .
  • Documentar toda la información relevante, para facilitar su administración.
  • Garantizar que el contenido sea de beneficio para la institución y sus alumnos.
  • Hacer un análisis exhaustivo sobre las palabras utilizadas para bloquear paginas que no podrán visitar los usurarios.
  • Tener en cuenta todos los requerimientos operativos adicionales que pueden ser necesarios para la implementación y el uso de intranet.
  • Realizar el acceso bien diseñado, que permitan a los usuarios encontrar la información que buscan fácilmente.

Glosario de Términos

Apache:

Es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web.


Avahi:

Es un sistema que permite a los programas publicar y descubrir servicios y hosts que se ejecutan en una red local . Por ejemplo, un usuario puede conectar una computadora a una red y hacer que Avahi anuncie automáticamente los servicios de red que se ejecutan en su máquina.

Cron:

Es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes).


Crontab:

Es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background.


Debian:

Es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de programas básicos y utilidades que hacen que funcione su computadora.


DHCP: Es un protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los equipos de nuestra red.


DNS:

Es un servidor que traduce nombres de dominio a IPs y viceversa.


Dnsmasq:

Es un paquete que permite poner en marcha un servidor DNS y un servidor DHCP de una forma muy sencilla. Simplemente instalando y arrancando el servicio dnsmasq, sin realizar ningún tipo de configuración adicional, nuestro PC se convertirá en un servidor caché DNS y además, resolverá los nombres que tengamos configurados en el archivo /etc/hosts de nuestro servidor.


Intranet:

Es una red privada accesible solo para el personal de una organización.


Filtro Web:

Es un programa diseñado para controlar qué contenido se permite mostrar, especialmente para restringir el acceso a ciertos materiales de la Web. El filtro de contenido determina qué contenido estará disponible en una máquina o red particular.


Firewall:

Es un sistema diseñado para prevenir el acceso no autorizado a una red privada (que podría ser, incluso, a una sola máquina) o proveniente de ella.


IP:

Es un número que identifica, de manera lógica y jerárquica, a una Interfaz en red (elemento de comunicación/conexión) de un dispositivo (computadora, tableta, portátil, smartphone) que utilice el protocolo IP o (Internet Protocol), que corresponde al nivel de red del modelo TCP/IP.


Iptables:

Es un programa de utilidad de espacio de usuario que permite a un administrador del sistema configurar las tablas proporcionadas por el firewall del kernel de Linux (implementado como diferentes módulos de Netfilter ) y las cadenas y reglas que almacena.


LDAP :

Es un servidor de datos optimizado para la realización rápida de consultas de lectura y orientado al almacenamiento de datos de usuarios a modo de directorio. Permitiendo la autentificación para entrar en un PC, para entrar en una aplicación web, para acceder a un servidor ftp, para acceder a servidores de correo entrante POP3 y saliente SMTP, etc.

Proxy transparente:

Mejoran la calidad del servicio en la navegación por Internet, entregando contenido a un mayor ancho de banda y reduciendo la latencia en la transmisión. Es decir, Si alguien ya ha bajado un archivo que queremos o ha visto una página Web que nosotros queremos visualizar, es mucho más rápido que nos lo provea la infraestructura del Proxy transparente, que volver a Internet y conseguirlo desde ahí.


Servidor Proxy Web:

Es el que almacenan contenido que frecuentemente es accedido, y por ello lo guarda para que otras personas que quieran ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo. El lugar donde guarda este contenido se llama caché.


Servidor Web:

Es un protocolo está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras,formularios, botones y objetos incrustados como animaciones o reproductores de sonidos.”


Squid:

Es un servidor proxy para web con caché. Es una de las aplicaciones más populares y de referencia para esta función, software libre publicado bajo licencia GPL.


Virtualbox:

Es un software de virtualización para arquitecturas x86/amd64.Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.

Referencias Bibliográficas

Título de la página: Intranet

Nombre del sitio: En.wikipedia.org

URL: https://en.wikipedia.org/wiki/Intranet


Título de la página: Uso de la Intranet/Extranet en Instituciones Educativas

Nombre del sitio: Scribd

URL: https://es.scribd.com/doc/59319459/Uso-de-la-Intranet-Extranet-en-Instituciones-Educativas


Título de la página: Filtro de contenido

Nombre del sitio: Es.wikipedia.org

URL: https://es.wikipedia.org/wiki/Filtro_de_contenido


Título de la página: Proxy transparente

Nombre del sitio: Ordenadores-y-portatiles.com

URL: http://www.ordenadores-y-portatiles.com/proxy-transparente.html


Título de la página: Servidor DHCP | Redes Linu

Nombre del sitio: Ite.educacion.es

URL: http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m2/servidor_dhcp.html


Título de la página: OpenLDAP | Redes Linux

Nombre del sitio: Ite.educacion.es

URL: http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m6/openldap.html


Título de la página: Servidor DNS | Redes Linux

Nombre del sitio: Ite.educacion.es

URL: http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m2/servidor_dns.html


Título de la página: Servidor HTTP Apache

Nombre del sitio: Es.wikipedia.org

URL: https://es.wikipedia.org/wiki/Servidor_HTTP_Apache


Título de la página: VirtualBox

Nombre del sitio: Es.wikipedia.org

URL: https://es.wikipedia.org/wiki/VirtualBox


Título de la página: Squid (programa)

Nombre del sitio: Es.wikipedia.org

URL: https://es.wikipedia.org/wiki/Squid_(programa)


Título de la página: Automatiza tareas Linux y ahorra tiempo con Bash

Nombre del sitio: ComputerHoy

URL: https://computerhoy.com/paso-a-paso/apps/automatiza-tareas-linux-ahorra-tiempo-bash-30751


Título de la página: Cron & crontab, explicados

Nombre del sitio: Desde Linux

URL: https://blog.desdelinux.net/cron-crontab-explicados/


Título de la página: IninED - Intranet Extranet Gratis para Colegios y Escuelas

Nombre del sitio: Inined.com

URL: http://inined.com/