martes, 31 de octubre de 2017

2017-10-31 Martes

Administración de Sistemas Gestores de Bases de Datos

  • Algunos parámetros del archivo my.ini:
    • basedir: ruta principal de la base de datos
    • datadir: donde se guarda toda la información (con Bitnami está todo centralizado)
    • Apartado [Client]: clientes que usarán la base de datos, pero no pertenecen a los administradores y usuarios de la base de datos.
    • default-storage-engine: utiliza el motor seleccionado como por defecto
    • sql-mode: obliga a que todas las tablas esté de la configuración escrita.
    • max_connections: número máximo de usuarios conectador (más un hueco reservado fuera de ese máximo para la conexión del administrador)
    • query_cache_size: selecciona el tamaño de cache de búsquedas con SELECT y otras consultas.
    • Logs (tres tipos de log que irían en la sección del servidor)
      • error-log (informa de los arranques e inicios de servicios, ordenadores y errores que pueden ocurrir)
        • nombre por defecto: hostname.err
      • general-log (escribe todas las consultas que se realizan indicando el usuario que las hace)
        • general_log_file="dirección donde guardarlo"
          • por defecto: hostname.log
      • log-bin (se guarda todas las modificaciones en la base de datos

Implementación de Aplicaciones Web

  • Instalación y demostración de Moodle. 

lunes, 30 de octubre de 2017

2017-10-30 Lunes

Seguridad Y Alta Disponibilidad

  • Continuación del esquema de este día
  • Niveles de protección lógicos:
    • Nivel de BIOS: 
      • Administrador BIOS
      • Acceso
    • Nivel de carga S. O.: 
      • Protección de arranque
      • Opciones Especiales
    • Niveles del Sistema Operativo: 
      • Acceso con perfiles de usuario
      • Roles
      • Grupos
      • ACC
    • Nivel de aplicación:
      • Acceso a distintos niveles (roles) de operación específicos en cada aplicación.
  • Práctica de cómo poner una contraseña a un submenú del GRUB. 

Servicios de Red e Internet

  • Crear un usuario
    • sudo adduser pepe
  • Iniciar en pepe
    • su pepe
  • Crear carpeta
    • mkdir public_html
    • chmod 755 public_html
  • Entrar en carpeta
    • cd public_html
  • Crear un index:
    • touch index.html
    • nano index.html
  • Activar módulos en apache2
    • a2enmod userdir (una vez activado el módulo, hay que reiniciar el apache2)
  • Desactivar módulos en apache2
    • a2dismod [módulo]

viernes, 27 de octubre de 2017

2017-10-27 Viernes

Administración de Sistemas Operativos

  • umask
    • Permisos temporales a la hora de crear nuevos archivos que se mantienen hasta cambiarlos de nuevo o al cerrar la terminal.
    • Este comando quita permisos, por lo que la asignación de permisos es diferente a la que podemos poner con chmod.
    • Cambios permanentes: si quieres que se active automáticamente el umask con la máscara que quieras, puedes modificar /etc/profile (modificación para todo el sistema) o en en el directorio personal /home/[usuario]/.bashrc (para el propio usuario). Esto hace que se ejecute el comando una vez iniciada la consola.
    • Recordar que a los ficheros no se les puede poner permisos de ejecución. 
      • 666: fichero
      • 777: carpeta (incluye los de ejecución)
    • Para calcular la máscara (una lección de Adam, no tomar en cuenta si prefieres la de Bienvenido):

      • (a) Hay que partir de la base de que si queremos dar o quitar permisos a un archivo o a una carpeta. Ya que nuestra base será 666 (archivos) o 777 (carpetas).
      • (b) Aquí será nuestra máscara. La forma más rápida de verlo es que, cuando haya un cero, no cambiará el permiso del apartado (a) que corresponda. Si es 1, cambiará al contrario del que hay arriba. Si es 1, será 0 y, si es 0, será 1.
      • (c) Esto son los permisos finales que tendrá el archivo. 
Archivos. Las zonas rojas indican el permiso de ejecución, permisos que no cambian en los archivos regulares porque no tienen ese permiso en sí. Las aplicaciones/ejecutables son los que poseen este permiso. Mucho cuidado en eso.
Carpetas. Aquí sí hay permisos de ejecución (la ejecución de una carpeta es poder abrirla). Podemos distinguir el cambio cuando en la máscara es 1.
    • Forma de uso:
      • umask xxxx (donde las xxxx es nuestro número de máscara convertido a decimal.)
      • En nuestro ejemplo:
        • Archivo: umask 0612
        • Carpeta: umask 0703
  • Aviso a navegantes: Cuando ponemos, por ejemplo, 666 en la calculadora binaria, tened mucho cuidado porque la calculadora detecta setecientos setenta y seis y nuestro permisos están en tres bloques (usuario, grupo y otros) de tres permisos (lectura, escritura, ejecución). No es lo mismo 666 que 6-6-6. 

Servicios de Red e Internet

  • Archivos de apache2:
    • /etc/apache2
      • ports.conf: donde reside la configuración de puertos que serán escuchados para las diferentes configuraciones.
      • sites-availables/: archivos de configuración de diferentes sitios disponibles.
      • sites-enabled/: archivos de los sitios web que están activos.

jueves, 26 de octubre de 2017

2017-10-26 Jueves

Servicios de Red e Internet

  • Comienzo del tema 3. Servicios HTTP.
    • Para linux, vamos a utilizar apache.
    • Para Windows, vamos a utilizar el propio servicio, IIS.
  • La instalación es prácticamente como la de Varón. 
    • Se instala el paquete apache2. 
    • Creamos una zona maestra con nuestra red.
    • Añadimos una dirección a nuestro servidor.
    • Creamos un alias para nuestro.

Implementación de Aplicaciones Web

  • Cosas que entrarán en el examen (aviso: no todo lo que esté aquí entra, sino que los conceptos que se van a explicar son lo que entrará):
    • Validación:
      • <form onsubmit(al enviarlo)="return validar(this);">
        • <input onkeypress(al pulsar la tecla) required/>
        • <input onchange(cuando se sale del campo) required/>
    • Búsqueda de elementos. (las funciones getElement/s)
    • Modificación con innerHTML y cadenas de caracteres.

miércoles, 25 de octubre de 2017

2017-10-25 Miércoles

Implementación de Aplicaciones Web

  • Pasos a seguir para instalar una aplicación web
  • En MySQL:
    • Permisos:
      • %: todas las máquinas (Si aparece después de una credencia user@x y la x es el %, significa que tiene esos permisos en todas las máquinas)
  • En Wordpress:
    • Si al configurar los datos en la web sale un error de que no ha podido enviarse el archivo y se genera un código, es porque el usuario no tiene permisos para escribir dentro del servidor. Para ello, debemos de conectarnos por SSH. (Hay que instalarlo antes, como recordatorio)
      • sudo apt-get install ssh
      • ssh -l [nombredeladmin] [ip del servidor]
      • (para copiar nuestro wp-config.php local al servidor)scp wp-config.php [nombredeladmin]@[ip del servidor]:[ruta en el server]
      • (una vez en el servidor) sudo mv /home/[nombredeladmin]/wp-config.php /var/www/[nuestroservidordewordpress]/wp-config.php
      • (suponiendo que estamos en la carpeta del wp; cambiar permisos al archivo) sudo chmod 755 wp-config.php
    • Podemos continuar desde la configuración Web una vez hecho lo anterior. Le damos a volver a ejecutar y la página pasará al siguiente paso.

Administración de Sistemas Gestores de Bases de Datos

  • Crear usuario:
    • CREATE USER ODBC@'localhost';
  • Dar permisos:
    • GRANT ALL PRIVILEGES ON *.* TO ODBC@'localhost' WITH GRANT OPTION;

Servicios de Red e Internet

  • Modificar el archivo hosts:
    • (linux) sudo nano /etc/hosts
    • (windows) C:\Windows\System32\drivers\etc\hosts 

martes, 24 de octubre de 2017

2017-10-24 Martes

Administración de Sistemas Gestores de Bases de Datos

  • Archivos en MySQL (Windows):
    • Carpeta bin:
      • Ejecutables:
        • mysql: Interactuar con el servidor y las bases de datos.
        • mysqladmin: Aplicación para el administrador, para configurar y administrar ciertas cosas.
        • mysqld: El demonio. Sirve para instalar (crear) nuevos servicios en el sistema para ser utilizados.
        • mysqlshow: Comprobar si las tablas está correctamente hechas.
        • mysqldump: Copias de seguridad.
    • Carpeta data:
      • Donde van a estar las bases de datos.
      • También estarán los archivos logs, donde se guardan los registros que van sucediendo.
        • Dentro de cada carpeta, estarán diferentes formas de archivos. Nos informarán cómo está creada la base de datos, scripts...
  • Es importante abrir la consola de comandos en modo Administrador. Para que no haya problemas de acceso al disco o ciertos parámetros.
  • Instalar servicios:
    • Instalar el servicio principal:
      • mysqld -install
    • Arrancar el servicio principal:
      • net start MySQL (hay que parar el servicio antes de hacer esto, porque MySQL es el nombre que le pone a todos los servicios por defecto y no iniciaría porque ya está encendido anteriomente en un servicio oculto por defecto.)
    • Borrar el servicio principal:
      • mysqld -remove MySQL
  • Administración del servidor:
    • Apagar el servicio:
      • mysqladmin -u root -p shutdown
    • Obtener ayuda:
      • mysqladmin -help
  • Ver la construcción de tablas:
    • mysqlshow -u root -p

Implantación de Aplicaciones Web

  • Listar todos los servicios instalados:
    • sudo services --status-all
  • Editar el archivo hosts:
    • sudo nano /etc/hosts
  • Pasos a seguir al instalar una Aplicación Web:
    1. Entrar en la documentación de la aplicación Web.
      1. Verificar los requisitos de la infraestructura. (Servidor, lenguaje de scripting en servidor, sistema gestor de Bases de Datos)
    2. Montar la infraestructura. Instalar y configurar el servidor.
    3. Descargar la aplicación web (archivo comprimido para expandir en el directorio donde quiero instalarlo).
    4. Implementación de la aplicación web (miramos su documentación), lo normal será darle las credenciales de un usuario.
      1. Entrar en MySQL
        • mysql -u root -p
      2. Crear una base de datos:
        • CREATE DATABASE nombre;
      3. Crear un usuario:
        • CREATE USER [nombredeusuario]; 
      4. Listar los usuarios del sistema:
        • SELECT user FROM mysql.user GROUP BY user;
      5. Borrar un usuario:
        • DELETE FROM mysql.user WHERE user = '[nombredeusuario]';
      6. (EXTRA) Darle permisos a una cuenta de usuario con el usuario root.
        • mysql -u root -p
        • GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';
    5. Nos solicitará unas credenciales del usuario administrador para la aplicación web.

lunes, 23 de octubre de 2017

2017-10-23 Lunes

Seguridad y Alta Disponibilidad

  • Niveles de seguridad el sistema:
    • ¿Dónde podemos definir contraseñas?
      • BIOS: Proteger el arranque de dispositivos externos (USB, HD, DVD/CD)
        • En la BIOS, existe dos tipos de usuario: Supervisor y Normal.
        • En este nivel se protege el hardware.
      • Cargador de Sistemas: (La lista de diferentes sistemas o la carga de un sistema en red).
        • Número de usuarios variables.
        • Protege la carga del sistema y del acceso a herramientas de recuperación (posibilidad de abrir terminales en modo root).
      • Sistema Operativo:
        • Se protege con usuario privilegiados y usuarios con pocos privilegios. Permite que unos usuarios específicos tengan los derechos correctos y que nadie exceda de sus funciones)
      • Nivel de Aplicación: (Aplicaciones Web y Aplicaciones del Sistema).
  • Comandeo en Linux:
  • Niveles de protección de contraseñas del sistema
    • Nivel 1: BIOS (Acceso a la BIOS y modificación del password)
      • Recuperación: mediante acceso al hardware de la placa reseteando CMOS.
    • Nivel 2: Cargador de arranque (Protegido por password mediante la configuración del mismo cargador)
      • Recuperación: Acceso a los archivos de configuración del cargador.
    • Nivel 3: Sistema Operativo (Sistema de passwords del sistema)
      • Recuperación: acceso al sistema, modificación de ficheros asociados a la autenticación o utilizacion del software específico de cambio de contraseñas con ophcrack)
    • Nivel 4: Aplicaciones de sistema o aplicaciones Web
      • Recuperación: Permisos de administración del sistema operativo.
  • Prácticas a realizar:
    • Práctica 1:
      • Poner password a una BIOS.
    • Práctica 2:
      • Poner password a una entrada de sistema, en Grub o en Windows.
    • Práctica 3:
      • Recuperar o cambiar password de administrador del sistema operativo.
    • Práctica 4:
      • Recuperar o cambiar el password de administración de un aplicación.

Administración de Sistemas Gestores de Bases de Datos

  • Configuración:
    • my.ini (Windows)
    • my.config o cng (Linux) (No entiendo lo que pone en la pizarra...)
  • Dentro de los archivos, podríamos crear nuestra propia sección y podemos decirle que puerto y directorio vamos a utilizar. Esto es para crear diferentes servicios dentro del servidor.
  • Otra opción es la de crear esas secciones en otros ficheros con diferentes nombres (cada uno de los servicios).
    • Instalar un servicio (desde un archivo aparte):
      • mysqld --install mypaco --defaults-file="C:\mypaco.ini"
    • Arrancar el servicio:
      • net start mypaco
    • Detener el servicio:
      • net stop mypaco
    • Desinstalar el servicio (desaparece hasta volver a instalarlo):
      • mysqld --remove mypaco
    • Ver la consola: 
      • mysqld -console

viernes, 20 de octubre de 2017

2017-10-20 Viernes

Administración de Sistemas Operativos

  • Ficheros regulares
    • Lectura: podemos ver los archivos, pero nada más.
    • Escritura: podemos modificar.
    • Ejecución: (en algunos tipos) se pueden ejecutar.
  • Ficheros de tipo directorio
    • Lectura: podemos listar los archivos, pero no acceder a la carpeta.
    • Escritura: podemos entrar en la carpeta y lista la carpeta.
    • Ejecución: podemos usarlo en programas.
  • Ficheros de tipo dispositivo
    • Con permisos especiales que el usuario no va a maneras, será el sistema operativo quien los controle.

Servicios de Red e Internet

  • Cache DNS (pregunta del examen, no hay que realizarlo):
    • En archivo /etc/bind/named.conf.options:
      • descomentar y añadir en forwarders el servidor DNS.

Seguridad y Alta Disponibilidad

  • Seguridad de una password (contraseña):
    • Tipo: de algo que se sabe
    • Longitud: tiempo en el descifrado
    • Relación con el usuario: Palabras clave de una persona (ataque por diccionario + redes sociales)
    • Tiempo de validez.

jueves, 19 de octubre de 2017

2017-10-19 Jueves

Servicios de Red e Internet


  • Registros SOA en el archivo de base de datos:
    • (todos estos registros, aunque se escriben en el maestro, son tiempos para el uso de los esclavos)
    • Serial: puede existir de dos formas diferentes
      • Conteo incremental: el registro será un número que, cada vez que se actualice, se incrementa en 1.
      • Fecha/versión: el registro se formará con la fecha y el número de versión de dos dígitos de ese día. El registro sería de forma AAAAMMDDnn (donde nn es el número de versión)
    • Refresh: es el tiempo de actualización que tiene el esclavo para actualizar las zonas del maestro.
    • Retry: es el tiempo de reintento de contacto por parte del esclavo al maestro cuando la conexión ha caducado o se ha recibido un mensaje de NOTIFY.
    • Expire: es el tiempo de caducidad de una zona. 
    • Default TTL (Time To Live): el tiempo por defecto que una conexión está 'viva'. 
Si no ha quedado muy claro, os dejo estas webs para leer de otra forma: Inglés | Inglés | Español

Programación Web (Libre configuración)

  • Clase sobre formularios, comprobación de datos y Javascript.

martes, 17 de octubre de 2017

2017-10-17 Martes

Administración de Sistemas Gestores de Base de Datos

  • MySQL desde línea de comandos:
    • Windows:
      • (en CMD) cd C:\Bitnami\wordpress-[versionBitnami]\mysql\bin
      • mysql -u [nombredeusuario] -p
    • Linux:
      • Abrir terminal y escribir:
        • mysql
  • Es lo mismo que Workbench pero en línea de comandos, utilizar el lenguaje SQL para usar la línea de comandos.
  • Crear una nueva base de datos 2AsirPrueba1:
    • CREATE DATABASE 2AsirPrueba1;
  • Seleccionar la nueva base:
    • USE 2AsirPrueba1;
  • Crear tabla:
    • CREATE TABLE ALUMNOS(
      • codigo int primary key,
      • nombre varchar(255),
      • ciudad varchar(50)
      • );
  • Insertar datos:
    • INSERT INTO ALUMNOS VALUES (1,'Paco','Motril');
    • INSERT INTO ALUMNOS VALUES (2,'Maria','Madrid');
    • INSERT INTO ALUMNOS VALUES (3,'Rocio','Málaga');
    • INSERT INTO ALUMNOS VALUES (4,'Pilar','Motril');
  • Prueba a hacer consultas:
    • SELECT ciudad FROM alumnos WHERE nombre='Rocio';
    • SELECT * FROM alumnos WHERE ciudad='Motril';
  • Actualizar un campo:
    • UPDATE alumnos SET ciudad='Motril' WHERE nombre='Maria';
  • Añadir un nuevo campo:
    • ALTER TABLE alumnos ADD telefono char(9);

Servicios de Red e Internet

  • Instalar un segundo Ubuntu Server con bind9 y hacer que haga una copia de sólo lectura del primer Ubuntu Server en modo solo lectura. Desactivar el servidor DHCP del esclavo, limpiar los archivos y seguir la teoría.

lunes, 16 de octubre de 2017

2017-10-16 Lunes

Seguridad y Alta Disponibilidad

  • Continuación del tema 2, "Seguridad Pasiva". Recuperación de datos, Seguridad Física y Ambiental...
  • Prácticas de recuperación de archivos y recuperación de dispositivos de almacenamiento.

Servicios de Red e Internet

  • Cambiar idioma: 
    • Webmin > Change Language and Theme 
  • Desde Webmin, se ha creado dos zonas maestras (polosur.es y 50.0.0.0 (inversa)).

Administración de Sistemas Operativos

  • Inicio de "Linux III - Usuarios y grupos".

miércoles, 11 de octubre de 2017

2017-10-11 Miércoles

Implementación de Aplicaciones Web

  • Continuación de instalación y configuración Webmin (parte uno aquí).
    • Instalar PHP-MyAdmin
      • sudo apt-get install phpmyadmin
    • Configuración:
      • Seleccionar "Apache2" cuando lo solicite.
      • ¿Configurar base de datos para phpmyadmin con dbconfig-common? Si.
      • Introducir contraseña de superroot para que pueda acceder a las tablas.
    • Configuración Apache:
      • Crear un host virtual de nombre desde Webmin (un host virtual de nombre es una entrada directa a un sitio del server creada por nosotros. En vez de usar una ruta larga, lo cambiamos por una frase corta. Esto es en forma chapuza.)
        • Un-used Modules > Apache Webserver > Create virtual host.
    • Mantener los cambios de /etc/resolv.conf
      • Modificar el archivo /etc/resolconf/resolv.conf.d/head
      • Añadir localhost y la ip del servidor del instituto.

martes, 10 de octubre de 2017

2017-10-10 Martes

Administración de Sistemas Gestores de Bases de Datos

  • Vamos a añadir un nuevo apartado (AVISO: aquí se considera que un hábitat solo tendrá un solo continente):
    • Se desea registar los incidentes que ocurren en determinadas zonas. De los incidentes, queremos anotar la fecha, código y la descripción. La llave principal debe de ser la combinación del nombre de la zona y el número de incidencia.
    • Los guías podrán formar a nuevos guías.


Implemetación de Aplicaciones Web

  • Instalación de Webmin (pequeña aplicación web con su propio servidor web, escritos en PERL y Python, que nos permite configurar nuestro server):
    • Descargar el paquete deb:
      • wget http://prdownloads.sourceforge.net/webadmin/webmin_1.850_all.deb
    • Instalar paquete deb:
      • dpkg --install webmin_1.850_all.deb
    • Forzar a instalar las librerias faltantes:
      • sudo apt-get -f install
        • Si se desinstala webmin cuando se usa este comando, hacer un apt-get update para actualizar las cabeceras. Luego, volver a instalar Webmin.
    • Webmin estará instalado en https://ubuntu:10000/ con el login-contraseña de nuestro Ubuntu Server.
    • Utilizando un cliente que está en la misma Red NAT, abrimos un explorador y entramos en https://[ip del servidor]:10000/
    • Entramos en Software Packages > Package from APT y buscamos apache2, libapache-od-php7.0 y mysql-server.

Servicios de Red e Internet

  • Arreglar el archivo de búsqueda inversa:
    • localhost se puede cambiar por tropical.es

lunes, 9 de octubre de 2017

2017-10-09 Lunes

Seguridad y Alta Disponibilidad:

(Breve introducción, no viene en el libro)
  • Corriente alterna:
    • Dos tipos: 
      • Trifásica (4 cables): contratada por empresas.
      • Monofásica (dos cables + cable de toma de tierra): contratada en casas.
        • Cable 'fase'.
        • Cable 'neutro'.
  • Los ordenadores (las placas bases) trabajan con +5V y +12V. La fuente de alimentación es un transformador de corriente alterna a continua.
  • Vamos a trabajar con:
    • W (Wattios) : donde habrá huecos y no será una medición real.
    • VA (Voltiamperios) : donde el voltaje y los amperios son reales.
  • Sistemas eléctricos de seguridad:
    • Diferencial (DDR, dispositivo diferencial residual): sistema de seguridad de medición de intensidad de entrada y salida. Para que todo vaya correcto, tiene que haber la misma cantidad de intensidad en la entrada y salida. Si no fueran iguales, el diferencial cortaría la red eléctrica para evitar fallos. 
(¡¡¡Imágenes de muestra de ejemplo, no dibujadas por Varón!!!)
 Al haber intensidad equitativa, el flujo se mantiene y el circuito está cerrado, en funcionamiento.
Si hay una derivación a tierra, llámese un tonto metiendo los dedos en el enchufe o una diferencia de intensidad, el diferencial corta la red eléctrica "disparándose" o "saltándose".
    • Magnetotérmico: protege la red eléctrica de cortocircuitos y no permite que llegue a tal punto de que empiece a arder la red eléctrica. Los cables deben de tener el amperaje al que trabaja este dispositivo. Si no lo está, la instalación no es segura y puede fallar.
  • Se ha visto los tipos de Sistemas de Alimentación Ininterrumpida (SAI) del tema 2 del libro.
    • Los SAIs offline ya no existen (salvo casos específicos con motores de gasolina, pero no estabilizan la corriente). No se debe comprar para un servidor.

Servicios de Red e Internet

(resumen)
  1. named.conf.local e indicar las 2 zonas con los archivos de datos.
  2. Crear la BD directa
  3. Crear la BD inversa.
  4. Reiniciar el servicio -> service bind9 restart
  5. Indicar a nuestro servidor que él mismo es el servidor de nombres /etc/resolv.conf -> nameserver 127.0.0.1
  6. Probar si funciona -> host [nombre] // host [ip]
  7. Comprobarlo en un cliente. Indicar en el cliente que el servidor DNS es el nuestro. Para comprobar en Windows: nslookup [nombre]
  8.  Comprobar la sintaxis de los archivos
    1. named-checkconf /etc/bind/named.conf.local
    2. named-checkzone tropical.es /etc/bind/tropical.db
    3. named-checkzone tropical.es /etc/bind/192.rev
  • Arreglando el archivo db (para Ubuntu 16, los apuntes son de Ubuntu 14 o anterior):
    • Donde pone IN NS, lo cambiamos por [nombre de dominio, acabado en punto si acaba en letra] NS.

Administración de Sistemas Gestores de Bases de Datos

  • Corrección del ejercicio 12 (hecho por Adam):


  • Notas/aclaratorias de todo el ejercicio:
    • ¿Por qué pongo DNI si no lo pide el ejercicio? Porque necesitamos una clave que no se repita y el DNI es un identificador único. Los nombres, el teléfono/dirección (pueden vivir dos empleados en el mismo sitio e incluso tener un teléfono fijo y serían idénticos) y la fecha de incorporación no serían claves primarias correctas.
    • ¿Por qué CONTINENTES es una entidad y no un atributo? Porque los hábitats pueden estar preparados para uno o varios continentes (entendemos por África, Europa, América...). Como puede haber más de uno en ciertos casos, no podemos crear en HÁBITATS los atributos continente1, continente2... no tiene sentido. 
    • ¿Por qué fecha_incorporación es una atributo? Porque la fecha de incorporación será una fecha única y que no cambiará. Una vez que el empleado firme el contrato, tendrá esa fecha y no dependerá de ningún otro dato.
    • ¿Por qué hora de la relación entre ITINERARIOS-GUÍAS sí es un atributo de la relación? Porque la hora está relacionada entre los dos. Un itinerario será realizado a una hora por un empleado. Si el ejercicio añadiera los días de la semana (Lunes, Martes...), ahí tendríamos que añadir también un atributo de días de la semana. Si no ponemos hora en la relación, no podríamos asignar correctamente ITINERARIOS-GUÍAS.
    • ¿Por qué aparece número de especies en ITINERARIOS y no se pone como atributo? El ejercicio en sí nos dice de ponerlo, pero no es un atributo aplicable. Si lo añadimos como atributo, tendríamos que poner a mano el número de especies en cada ITINERARIO. Si en algún momento cambia el número de especies, tendríamos que cambiar ese número. Eso implica que exista redundancia de datos y, por tanto, corrupción de la información. Al tener la relación tal y como está arriba, podríamos hacer una consulta de conteo de especies en cada ruta y haría la cuenta en el momento.
Si no se entiende algo, puedo intentar explicarlo de nuevo más claro y si hay alguna duda más, avisad y la pondré aquí. Creo que estas son todas las que se han hecho en clase.

viernes, 6 de octubre de 2017

2017-10-06 Viernes

Administración de Sistemas Operativos

  • Corrección de ejercicios.
  • Configuración de un punto de acceso.

Servicios de Red e Internet

  • Comprobación sintáctica de los archivos: 
    • named-checkconf /etc/bind/named.conf.local
    • named-checkzone tropical.es /etc/bind/tropical.db
    • named-checkzone tropical.es /etc/bind/192.rev
      • (después de modificar, reiniciamos el servicio)
  • Indicamos que nosotros mismos somos el DNS:
    • (en archivo /etc/resolv.conf)
      • nameserver 127.0.0.1
        • (nameserver: dirección del servidor DNS.)
      • search tropical.es
        • (search: nombre del dominio en el que voy a buscar.)

Implementación de Aplicaciones Web

  • Tener lista para el lunes una máquina de Ubuntu Server 16.02.

jueves, 5 de octubre de 2017

2017-10-05 Jueves

Servicios de Red e Internet

  • Diferencias entre DNS maestro y esclavo:
    • Maestro tiene toda la información. Si puede modificar sus bases de datos. Estará más actualizado que los esclavos. 
    • Esclavo tiene una copia del maestro. No puede modificar sus bases de datos.
    • Esta combinación estará cuando se presupone que va a haber una alta demanda de servicios. Así comparte recursos y se reparte la carga.
  • Servidor caché DNS:
    • No tiene base de datos. 
    • Le preguntará a otros servidores DNS.
  • Dominio: tropical.es
  • Instalar DNS bind:
    • sudo apt-get install bind9
  • Crear el archivo:
    • sudo /etc/bind/tropical.db (búsqueda directa)
    • sudo /etc/bind/192.rev (búsqueda inversa)

Programación Web (Libre Configuración)

  • Continuación de Introducción de Javascript. (hasta 3.5. Funciones y propiedades básicas de JavaScript)

miércoles, 4 de octubre de 2017

2017-10-04 Miércoles

Implementación de Aplicaciones Web:

  • Continuación de Protocolo HTTP (POST, Cabeceras Genéricas, Cookies, Sesiones...)
  • Autenticación (cliente):
    • Formulario de autenticación.
      • <form method="POST" action="control.php">
        • Campo de identidad. => login
        • Campo de autenticidad => password
        • Botón "Envío"
      • </form>
  • Autenticación (servidor):
    • Control.php
      • 1. Comprobar los datos en BD
        • Si los datos son correctos:
          • Crea la sesión. Permite al cliente que pueda acceder a los sitios que tiene permisos. La sesión se mantiene hasta que expire o el cliente cierre sesión.
        • Si los datos no son correctos:
          • Envía al cliente de que los datos son incorrectos.
  • Parte privada en los servidores:
    • 1. Comprobar la sesión:
      • ¿Está autenticado?
        • Si: permite acceso.
        • No: manda al usuario a autenticar.

Servicios de Red e Internet:

  • Servidor DNS:
    • Registros A: Nombre - IP.
    • CNAME: Asigna otro nombre
    • MX: Servidor de correo.
    • NS: ¿Quién es el DNS?
    • PTR: IP - Nombre.
    • SOA: Da información sobre tiempos, nombres de equipos...

martes, 3 de octubre de 2017

2017-10-03 Martes

Implementación de Aplicaciones Web

  • Continuación de protocolos. (desde 2.2 Primera línea de datos: Métodos de envío de los datos hasta Método GET y ejemplos).

lunes, 2 de octubre de 2017

2017-10-02 Lunes

Seguridad y Alta Disponibilidad

  • Comienzo del tema 2 "Seguridad Pasiva".
  • Copias de Seguridad:
    • ¿Qué es lo que voy a copiar?
    • ¿Dónde voy a copiarlo?
    • ¿Cómo y cuándo voy a realizar la copia?
  • Lectura de la noticia: Tres preguntas en el Día del Backup: ¿Qué? ¿Cómo? ¿Cuándo?
  • Ejercicio: Buscar un programa de copias de seguridad e investigar las siguientes cuestiones:
    • 1.- Sistemas que soporta y en los que puede ser implantado.
    • 2.- Tipos de copias de seguridad soportadas: Total, Diferencial, incremental.
    • 3.- Sistema de automatización que soporta... Cron
    • 4.- Capacidad de compresión de datos.
    • 5.- Sistemas de ocultación de datos.
    • 6.- Lugares y configuraciónes para el guardado de la copia de seguridad.
    • 7.- Enlaces y bibliografía.

Empresa e Iniciativa Empresarial

  • Tiempo libre para rellenar la práctica sobre ideas con una pelota de tenis.