lunes, 23 de septiembre de 2013

DAM Programación

1.-  Introducción á programación:



    Por si os enlaces anteriores non están dispoñibles deixovos os pdf´s os que fan referencia:
    1. Ordinogramas (descarga del programa dfd )
      1. Mayor de edad, dfd
      2. Mayor de tres valores, dfd
      3. Ordinogramas, página 6 boletín, dfds
    2. Ejercicios ordinogramas
      1. Ejercicio 1: otra solución con funciones, leer 3 números y calcular la media, enlace al dfd,
      2. Ejercicio 2: leer 2 números y mostrar el mayor y el menor
      3. Ejercicio 4: Leer precio, número e iva y calcular pvp
      4. Ejercicio 6: Calcular el área de un rectángulo, enlace al dfd
      5. Ejercicio 7: Comprobar si un número es par o impar, enlace al dfd
      6. Ejercicio 8: Leer un carácter y decir si es vocal o no, enlace al dfd
      7. Ejercicio 9: Calcular área de un círculo, enlace al dfd
      8. Ejercicio 10: Conversión entre euros y pesetas
      9. Ejercicio 11: Cálculo de año bisiesto, enlace al dfd
      10. Ejercicio 12: Contar el número de valores introducidos, enlace al dfd
      11. Ejercicio 13: Contar números introducidos y su suma
      12. Ejercicio 15: Contar número de pares e impares introducidos, enlace al dfd del 14 y 15 juntos
      13. Ordinograma 17: Mostrar el mes a partir de su ordinal
      14. Ordinograma 18: Mostrar los múltiplos de 4
      15.  Ordinograma 19: Ecuación de segundo grado
      16. Ordinograma 20: Suma de los números del 1 al 100
      17.  Ordinograma 21: Número de aprobados y medias

    3. Seudocódigo (resolución de los problemas de seudocódigo en java):
      1. Ejercicio 1: Leer un número y calcular el doble y el triple del mismo.
      2. Ejercicio 2: Asignación de variables: Leer dos variables y mostrar su contenido
      3. Ejercicio 3: Operadores y asignaciones. Leer dos números e intercambiar sus valores.
      4. Ejercicio 4: Estructuras de control simple. Comprobar si un número es mayor que otro.
      5. Ejercicio 5: Estrucutras de control simple. Comprobar si un número es positivo o negativo.
      6. Ejercicio 6: Bucle Para
      7. Ejercicio 7: Bucle para II
      8. Ejercicio 8: Bucles anidados
      9. Ejercicio 9: Cálculo del factorial (incrementando y decrementando)
      10. Ejercicio 10: Cálculo de la serie 1/2 + 2/3+....(n-1)/n
      11. Ejercicio 11 (5.2 resueltos): Realizar un rectángulo de asteriscos de longitud y altura vble.
        1. Ejercicio 11 bis: otra manera de resolver el anterior algoritmo
    4. Unidad 2:
      1. Ejercicio 8: Es un número la suma de los otros dos?
      2. Ejercicio 9: Cálcular la suma de dos pares comprendidos en un rango
      3. Ejercicios 11 y 12: Cálculo de la letra del DNI
      4. Ejercicio 15: Comprobar fecha correcta
      5. Ejercicio 16: Uso bucle for
      6. Ejercicio 17: Cálculo de la media con for
      7. Ejercicio 18: Sumas y medias con for
      8. Ejercicio 19: Cálculo de potencias con for
      9. Ejercicio 20 y 21: Cálculo del mayor y menor de una serie de números
      10. Ejercicio 22: Triángulo de Floyd
      11. Ejercicio 23: Cálculo de la suma de pares e impares
      12. Ejercicio 26: Descomposición de una cantidad en billetes (solución b: con bucles while)
      13. Ejercicio 27: Cálculo de la media de las notas de alumnos
      14. Ejercicio 33: Calcular los divisores de un número N introducido por teclado
      15. Ejercicio 34: División mediante restas sucesivas
      16. Ejercicio 38: Comprobar si un número es igual a la suma de los cubos de sus dígitos
      17. Ejercicio 39:
      18. Ejercicio 44: Realizar el triángulo de la imagen con *
      19. Ejercicio 45: Realizar el doble triángulo.
      20. Ejercicio 46: Realizar un rombo.
      21. Ejercicio 52: Contar el número de vocales en una cadena
      22. Ejercicio 53: Palíndromas.
      23. Ejercicio 65: Primitiva
      24. Ejercicio 66: Acertar un número al azar (Clases Random y Math.random);
      25. Ejercicio 73: Objeto Animal, Introducción a objetos.
      26. Ejercicio 74 y 75: Clase rectángulo
      27. Ejercicio 77: Clase Ecuación ,... segundo grado
      28. Ejercicio 78: Objeto Fecha...
      29. Ejercicio 79: Llamadas con Horas...
      30. Ejercicio 80: Cuenta corriente (empezando excepciones y paso de cadenas a números)
    5. Unidad 3:
      1. Ejercicio 1: Ventas anuales de cadena de tiendas.
      2. Ejercicio 2: Comprobar si un número está en un vector.
      3. Ejercicio 3: Simular lanzamiento de dado 10.000 veces
      4. Ejercicio 4: Vector de 100 elementos generados al azar.
      5. Ejercicio 5: Cálculo letra del dni
      6. Ejercicio 6:  Verificar si un NIF leído por teclado es correcto.
      7. Ejercicio 7: Almacenar 10 objetos de tipo fecha.
      8. Ejercicio 8:  Almacenar y solucionar 5 ecuaciones segundo grado.
      9. Ejercicio 9: Crear la clase Test
      10. Ejercicio 10:Crear un examen de 5 preguntas distintas a partir de 10 de la clase Test.
      11. Ejercicio 11: Array de 25 datos enteros generados aleatoriamente.
      12. Ejercicio 13: Arrays de cadenas con nombres y apellidos seleccionados aleatoriamente.
      13. Ejercicio 14: El array anterior ordenado
      14. Ejercicio 15: Uso de binarySearch en arrays.
      15. Ejercicio 17: Tablas o matrices leyendo y asignando valores aleatorios
      16. Ejercicio 18: Calcular menor y mayor y mostrar la matriz
      17. Ejercicio 19: Matriz de orden 10 con diagonal a 1.
      18. Ejercicio 20: Comprobar si una matriz es simétrica.
      19. Ejercicio 21 y 22: Sumar los elementos de las filas y los pares de las columnas....
      20. Ejercicio 24: Matriz latina
      21. Ejercicio 25: Punto de silla
      22. Ejercicio 26: Generar una matriz con números aleatorios y punto de silla
      23. Ejercicio 27: Cuadrado Mágico
      24. Ejercicio 29: Acertar parejas de números
      25. Ejercicio 36: TreeSet de números generados al azar
      26. Ejercicio 37: Imprimir los carácteres d euna cadena (el número)
      27. Ejercicio 38: Darle la vuelta a una cadena empleando una pila
    6. Unidad 4: Interfaz gráfica
      1. Nomenclatura de controles swing
      2. Interfaz gráfica de usuario en java.
      3. Ejercicio 19 de la unidad 2 con excepciones y cuadros de diálogo
      4. DocumentListener
      5. Paso de euros a pesetas al cambiar pulsaciones sin documentListener
      6. Convertir a pesetas
      7. Ejercicio 4: visualizar dos campos y convertir a pesetas en el segundo.
      8. Ejercicio5: incluir gridLayout y cambiar la fuente
      9. Ejercicio 8: Cambiar los colores de los paneles.
      10. Ejercicio 10: Diseño de la apariencia de una calculadora
      11. Botón con imagen cambiando color de fondo
      12. Agregando botones gridLayout y clase manejador
      13. Controles Swing
      14. Cálculo del dni
      15. Cálculo de las potencias de 2 hasta un número
      16. Palíndromas con Swing
      17. Contar vocales
      18. Simular tiradas de un dado
      19. Agregando controles para variar la fuente
    7. Examen Noviembre:
      1. Ejercicio 1
      2. Ejercicio 2
      3. Ejercicio 3
      4. Ejercicio 4
      5. Ejercicio 5
      6. Ejercicio 6
    8. Examen Febrero.
    9. UVA (Concurso programame):
        1. Mario jumping - 11764
        2. Cost Cutting - 11727
        3. Car - 11715
        4. 3n +1 (100)
      1. Acepta el reto:
        1. 116 Hola mundo
        2. 124 Cuántas me llevo?
        3. 126 Divisores del factorial
        4. 158 Los saltos de Mario
        5. 217 ¿Qué lado de la calle?
        6. 360 Rellenando el agua de la fuente.
        7. 380 Me Caso.
      2. Programame:
        1. Regional 2013: G Súmale uno
        2. Regional 2013: H Área de un rectángulo
        3. Regional 2013: I Número Hyperpar
        4. Ourense 2014: H para modificar
        5. Ourense 2014: Presupuestos con objetos
      3. Acepta el reto:
        1. Hola Mundo (116)
    10. Ejercicios explicados en clase:
      1. Introducción a las cadenas, objetos, clases....
      2. Bucle do while
      3. Bucle while
      4. Clase Vehículo
      5. Clase Jugador
      6. Explicación Cadenas 1.
      7. Explicación Cadenas 2.
      8. Explicación Cadenas 3
      9. Explicación Cadenas 4: contando (ocurrencia) el número de caracteres en una cadena....
      10. Explicación Paso de cadenas a números (y viceversa) y excepciones genéricas.
      11. Preparando examen "recuperación"/control 2ª:
        1. Ejercicio salida/traza
        2. Ejercicio dar vuelta a número
        3. Acumuladores, comparadores, mayor, menor,...
      12. Explicación arrays 1
      13. Explicación arrays 2.
      14. Explicación métodos carácter, arrays y cadenas.
      15. Explicación enum
      16. Preparando examen 2ª Evaluación:
        1. Repaso ejercicio 26 con enum y arraylist
        2. Mostrar número letras de una cadena
        3. Objeto cadena contando/mostrando caracteres
        4. Sopa de letras cutre
        5. Ordenación fácil ....sin sort
      17. Herencia, polimorfismo, sobrescritura
      18. Herencia 2
      19. Interface, override, implements,...
      20. Ourense 2014: H para modificar
      21. Ourense 2014: Presupuestos con objetos
      22. Ejercicio 38: Darle la vuelta a una cadena empleando una pila
      23. Unidad3 ejercicio de colas
      24. GUI
        1. JOptionPane:
          1. explicación
          2. Unidad 2 ejercicio 19

    2.- Programación en Java: 

    Plantillas de código y atajos de teclado en Netbeans 7.3: pdf

    Además de los apuntes disponibles en vuestras carpetas compartidas os dejo un enlace a la página web del ies S. Clemente que también emplearemos en clase.

    3.- Enlaces relacionados:


    JDK 7u40 y Netbeans 7.3.1 (página de oracle)
    Netbeans
    Java

    * Iré colgando aquí enlaces a boletines de ejercicios y soluciones.




         
           

    domingo, 22 de septiembre de 2013

    ASIR Servizos de rede - Servicios de red


    Iré enlazando algunas entradas a las capturas de pantalla -a modo de apuntes- y explicaciones de clase :

    Instalar y configurar adaptadores de red en Virtual Box

    1.- DHCP: 
    Enlaces con documentación:
    • Videotutorial: cómo instalar y configurar básicamente un servidor de DHCP en Windows
    Prácticas de clase:
    1.  Instalación de VirtualBox y servidor DHCP en Windows 2003
    2.  Instalación y configuración del servidor DHCP en Linux (ubuntu 10.04)
    3.  Instalación de webmin, configuración remota del servidor de DHCP
    4.  Instalación y configuración del servidor DHCP en Windows 2008.
    5. Webquest configuración de red en linux

    2.- DNS
    Enlaces a la documentación:
    Prácticas de clase:
    1. Instalación y configuración del servidor DNS en Windows 2003
    2. Instalación y configuracón de DNS en Linux (ubuntu 10.04)
    3. Instalación y configuración DNS mediante Webmin.
    4. Instalación y configuración del servidor DNS en Windows 2008.
    5. Instalación y configuración del servidor DNS en Windows 2016



    3.- Servidor FTP: 
    Enlaces con documentación:
    • Servidor FTP en Ubuntu
    Prácticas de clase:
    1. Instalación y configuración del servidor FTP en Windows 2003
    2. Instalación y configuracón de FTP en Linux (ubuntu 10.04)
    3. Instalación de certificados en Proftpd.
    4. Instalación y configuración FTP mediante Webmin.
    5. Instalación y configuración del servidor FTP en Windows 2008.

    4.- Servidor Web, Servidor de aplicaciones: 
    Enlaces con documentación:
    Prácticas de clase:
    1. Instalación y configuración del servidor Web IIS en Windows 2003
    2. Instalación del servidor de Certificados en Windows 2003. Uso de certificados con IIS
    3. Instalación e integración de webdav con IIS en Windows 2003.
    4. Instalación y configuracón del servidor Web Apache en Linux (ubuntu 10.04)
    5. Instalación de certificados.
    6. Instalación y configuración web mediante Webmin.
    7. Instalación y configuración del servidor web en Windows 2008.
    8. Instalación y configuración de webdav y certificados en IIS windows 2008


    5.- Acceso remoto: 
    Enlaces a la documentación:
    1. Servidor de terminales en Ubuntu o Debian
    2. VNC:
      1. http://es.wikipedia.org/wiki/VNC
      2. VNC: Visor de Escritorios Remotos en Ubuntu o Debian
      3. vídeo: Terminal server client en ubuntu
    3. SSH:
      1. Cómo Instalar y configurar servidor ssh en Ubuntu
      2. Montar un directorio en Ubuntu desde/hacia un servidor ssh
      3. Dokan: fuse para windows
    4. Remote Desktop 
      1. Windows (para versiones anteriores a windows xp service pack 1)
      2. Escritorio remoto en linux
      3. rdesktop en ubuntu (hacia windows)
        1. Instalación: apt-get install rdesktop
        2. Página web: http://www.rdesktop.org/
    5. Teamviewer
      1. Información y descargas
      2. Videotutorial
    6. VPN:
      1. Windows 10
    7. Seguridad: ojo con las actualizaciones y/o versiones que empleamos: vídeo
    Prácticas de clase: 
    1. Conexión terminal server a linux. Autor: javier rivero iglesias
    2. Servidor ssh en linux y cliente putty en windows. Autor: Adrián Ayala Vásquez.
    3. Conexión a un escritorio remoto windows desde windows con SimpleDesktop. Autor: Rafael Diéguez Araújo
    4. Terminal server en windows 2008 desde windows7. Autor: Daniel Fernández Fernández
    5. Conexión de windows “interfaz gráfica” a Linux con VNC. Autor: Alfonso Rodríguez Nóvoa
    6. Conexión remota “interfaz gráfica” de linux a Windows con remmina. Autor: Fabio García Puga

     6.- Redes inalámbricas:
    Ejercicios propuestos: 
    1. Configuración de enrutadores
    2. PLC´s y cámaras web inalámbricas
    3. Configuración de redes inalámbricas
    7.- Servidor de correo:
    Enlaces a la documentación:
              (SIN LDAP) Instalación de un servidor de correo con autenticación PAM
    a.- Linux: Servidor de Correo integrado con LDAP en Ubuntu: Courier + Postfix + LDAP,

    1 .-Script para la creación automática de los directorios de los usuarios de correo.
    2 .-Fichero /etc/postfix/main.cf completo antes de encriptación, smtp-auth
    3 .-Squirrelmail: consulta del correo vía web
    4 .-Postfix sobre internet, SMTP Autenticado
    4.1 Configurando Postifx
    4.2 Creación de certificados y configuración de Postfix para su uso
    4.3 Autenticación con SASL
    4.4 Comprobación del funcionamiento de SMTP-AUTH y TLS
    4.5 Configuración y prueba sobre Evolution
    6.1 Instalación de ClamSMTP y ClamAV
    6.2 Configuración de Postfix para que use ClamSMTP
    6.3 Comprobando ClamSMTP
    9.1 /etc/postfix/main.cf
    9.2 /etc/init.d/master.cf
    b.- Windows: Servidor de Correo en Windows Server
              c.- Windows: hmailserver
                         Guía de configuración

    8.- Interconexión de redes:
    Enlaces a la documentación: 
    1. Tecnoloxía xa: Manual de Iptables
    2. Manual de iptables: http://iptables-tutorial.frozentux.net/iptables-tutorial.html 
    3. Tecnoloxía xa: Ejercicios Iptables. Enunciados 
    4.  dhcp + dns + iptables
    5. Cortafuegos basado en linux: smoothwall
    6. Instalar y configurar el proxy Squid
      1. Configuración  http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general



    Iré subiendo el resto de capítulos que faltan hasta completar el temario. Saludos.

    viernes, 10 de mayo de 2013

    Ejercicios de Iptables 4.d

    d.- Explorar las extensiones de "marcado" como –mark.

    Al igual que en el caso anterior modificábamos los bits de TOS  ahora podemos emplear números enteros positivos (hasta el 4.294.967.296) para clasificar y diferenciar a unos paquetes de otros en función de dicho valor.
    El modo de empleo es para la comparación:
    -t mark --mark {número} -j OBJETIVO
    pero también podemos modificar las marcas para asignarle un valor determinado:
    -j MARK --set-mark {número}
    Las marcas se suelen emplear en combinación con iproute2 o colas para definir las rutas por dónde ha de ir determinado tráfico o incluso para realizar balanceos de carga entre varios interfaces de red.
    Por ejemplo vamos a hacer que todo el tráfico que llegue por la interfaz eth1 y el generado por el propio equipo destinados a los puertos 80 (tráfico http) los marque con el número "1".
    iptables -t mangle -A PREROUTING -i eth1  -p tcp --dport 80 -j MARK --set-mark 1
    iptables -t mangle -A OUTPUT -p tcp --dport 80 -j MARK --set-mark 1

    jueves, 9 de mayo de 2013

    Seguridad en telefonía móvil. 4.4 Las redes de tercera genarción (3G): UMTS

    4.4.- Las redes de tercera generación (3G): UMTS


    UMTS (Universal Mobile Telecommunications System) definido por el ETSI (European Telecommunications Standards Institute) fue seleccionado por la ITU (International Telecommunication Union) como sistema del estándar IMT2000 (International Mobile Telecommunications 2000) para la definición de los sistemas móviles de la tercera generación. La seguridad es similar a GSM pero actualizada para solventar las vulnerabilidades conocidas. La tercera generación entró en servicio en 2003-2004 y la mayor ventaja frente a los sistemas anteriores es su velocidad de transferencia, frente a los 9.6 kb/s de GSM y las decenas de GPRS, prometía velocidades de hasta 2Mbs. Lo cierto es que 3gpp en su versión 7, mediante el empleo de HSPA+ tal y cómo se ve en la Ilustración 4 promete velocidades de subida de hasta 11 Mbps y descenso de 42 Mbps. En cualquier caso las velocidades reales ofrecidas por las operadoras, al menos en España distan bastante de estas velocidades.
    Los elementos de seguridad como decíamos se basan en desarrollos de los elementos definidos para GSM y GPRS pero intentando corregir algunos fallos conocidos y ya comentados de las primeras generaciones:

    miércoles, 8 de mayo de 2013

    Esnifando tráfico de red con tcpdump. Capturando tráfico

    Instalo tcpdump

    apt-get install tcpdump
    Descargamos los ficheros de la práctica y comprobamos los mismos con file:
    file em0.lpc sf1.lpc
    Instalamos libpcap y tcpdump -sino lo está ya-
    apt-get install tcpdump

    lunes, 6 de mayo de 2013

    Ejercicios de Iptables. 4c

    c.- Estudiar las opciones del tipo “mangle” y, en concreto las relacionadas con el tipo de servicio, TOS. La orientación de esta extensión es la alteración de paquetes de acuerdo con el servicio a prestar, priorizando el trafico proveniente de distintas partes. Por ejemplo, para minimizar los tiempos de espera: Minimize Delay. Es usada con las cadenas PREROUTING y POSTROUTING. Tratar, por ejemplo, de probar el correspondiente comando de iptables para minimizar la demora en el servicio telnet
    La tabla mangle se puede usar para modificar paquetes, básicamente los objetivos con los que se puede usar son para modificar
    • TOS ( Type Of Service) y darle prioridad a unos paquetes frente a otros (dependemos de que los enrutadores externos a nuestra organización reconozcan estas marcas, que no suele ser lo habitual).
    • TTL podemos modificar el ttl para asignarles uno nosotros, con esto podemos ser más invisibles frente a utilidades como traceroute.
    • Mark: se suele usar para marcar los paquetes con valores específicos, estas marcas las podemos emplear después para realizar enrutamientos por determinados interfaces (empleando por ejemplo iproute) dependiendo de la marca, también podemos limitar anchos de banda y crear sistemas de balanceo de cargas mediante colas, basándonos en dichas marcas.

    jueves, 25 de abril de 2013

    Ejercicios de Iptables 4.b


    b.- Utilizar la opción de log con cualquiera de las reglas probadas y comprobar que los mensajes son realmente registrados a través del syslog del sistema. Analizar la entrada que aparece en el log del sistema e identificar cada parte del mensaje.

    La opción LOG proporciona un registro de paquetes coincidentes mediante el núcleo. Dispone de estas opciones adicionales:
                         log-level : seguido de un número (o nombre) de nivel. Los nombres válidos son (distingue mayúsculas/minúsculas) «debug», «info». «notice», «warning», «err», «crit», «alert». «emerg», que corresponden a los números 7 a 0.
                         log-prefix: seguido de una cadena de hasta 30 caracteres, que corresponden a un texto que se escribe al comienzo de cada «log» (registro), para permitir que sean identificados unívocamente.
                         Opciones adicionales: --log-tcp-options, --log-tcp-sequence, --log-ip-options
    Este módulo es más útil junto a un objetivo «limit», de manera que no se inunden los archivos de registro.

    lunes, 18 de marzo de 2013

    Deseño de Blogs con Blogger