• Las clases para logging del paquete JUL incluidas en la API de Java

    java planeta-codigo

    Entre las clases de la API de Java hay clases para la tarea de trazas o logging disponibles desde la versión 1.4 del JDK que para muchos casos son suficientes. Una de las librerías más popular para logging en Java como Log4j proporcionan funcionalidades más avanzadas que las del paquete java.util.logging y la seguridad de que en caso de necesitar algo relativo a logging será raro que Log4j no lo soporte de alguna forma. Sin embargo, las clases del paquete JUL de Java son suficiente y no es imprescindible una librería external ni incluir su dependencia en el proyecto.
    Continuar leyendo...

  • Artículo #9 de Yo apoyo al software libre

    planeta-codigo software-libre

    Con los ingresos por publicidad de AdSense, afiliado de Amazon y artículos patrocinados desde hace unos años hago una donación a los programas que utilizo habitualmente o me resultan interesantes. El gestor de contraseñas KeePassXC es uno de los programas que utilizo y me es muy útil para guardar de forma segura las credenciales de inicio de sesión en varios servicios.
    Continuar leyendo...

  • Analizar y detectar fallos de seguridad en las dependencias de Java

    java planeta-codigo seguridad

    Dada la complejidad de muchas aplicaciones de software hace que estas usen gran cantidad de dependencias, muchas de proyectos de software libre o código abierto. Es muy probable que con el paso del tiempo en alguna de las dependencias de las aplicaciones se descubra un error de seguridad importante y requiera una actualización lo más pronto posible. No es posible estar completamente a salvo de estar afectado por un fallo de seguridad en el software por mucho que se intente, por este motivo la mejor estrategia es detectar proactivamente y temprana los errores de seguridad y actualizar las dependencias a nuevas versiones con el fallo corregido. Varias organizaciones identifican, definen, describen y catalogan los fallos de seguridad de forma pública en una base de datos y hay herramientas automatizadas que con las bases de datos de fallos de seguridad permiten analizar las dependencias de un proyecto. Un ejemplo ha sido el caso de la librería Log4j 2 que por su gravedad y y popularidad muchas organizaciones han estado afectadas.
    Continuar leyendo...

  • Hemeroteca #20

    blog planeta-codigo

    El número de visitas aunque crece muy ligeramente ya no lo hace al ritmo de los primeros años y los ingresos se mantienen en cifras similares a los de los años anteriores, aunque suficientes para alguna necesidad, juego de consola o donación a algún proyecto de software libre que uso. Este 2021 han sido 73 artículos nuevos escribiendo al menos un artículo a la semana, mi intención es que siga siendo parecido durante el 2022.
    Continuar leyendo...

  • Aprovisionar un servidor en la infraestructura cloud de Clouding con Ubuntu y Nginx usando Ansible y protocolo seguro HTTPS con Let's Encrypt

    gnu-linux planeta-codigo patrocinado software-libre

    La computación cloud permite crear un servidor con unos pocos clics, en unos pocos minutos, con la posibilidad de ajustar a las necesidades su capacidad en unidades de cómputo, memoria y almacenamiento y facturado solo por los recursos consumidos por unidad de tiempo y con la flexibilidad de ampliar o reducir la capacidad del servidor cloud en cualquier momento. Si con la computación cloud ya es muy sencillo y rápido disponer de un servidor la mayor dificultad está en aprovisionarlo para que ofrezca el servicio que se desea, para facilitar el aprovisionamiento hay herramientas como Ansible diseñadas con este objetivo y tratar la infraestructura como código. En este artículo muestro como crear y aprovisionar un servidor cloud en la infraestructura cloud de Clouding para un servidor web con Ubuntu y Nginx aprovisionado con Ansible y configurado con el protocolo seguro HTTPS con certificados generados por Let’s Encrypt.
    Continuar leyendo...

  • Configuración de una aplicación con Spring Boot y configuración centralizada con Spring Cloud Config

    java planeta-codigo

    La configuración de una aplicación es indispensable para su funcionamiento, permite no hardcoredar ciertos valores en el código fuente al mismo tiempo que externalizarlos en archivos de más fácil edición. Externalizar la configuración de la aplicación permite utilizar el mismo artefacto binario en todos los entornos, los valores que cambian en cada entorno es posible proporcionarlos de diferentes formas y formatos desde archivos en el classpath hasta variables de entorno o un servidor de configuración. Spring Boot permite obtener los valores de diferentes fuentes e implementa un mecanismo de prioridad para determinar el valor a usar.
    Continuar leyendo...

  • Buenas prácticas de programación sencillas en el código fuente

    java planeta-codigo programacion

    Al escribir código uno de las principales objetivos además de que funcione es tan importante que sea código legible ya que la mayor parte del tiempo en la programación generalmente no se emplea a escribir código nuevo sino a mantener código existente. Las prácticas de este artículo para escribir código más legible son sencillas de comprender y de aplicar en cualquier lenguaje de programación.
    Continuar leyendo...

  • Cómo limpiar a fondo un teclado de ordenador

    hardware

    Al usar un teclado por mucho cuidado que se tenga al final se acumulan restos de suciedad como polvo y otras partículas que se van acumulando entre las teclas y en la base tras las teclas. Como algunas partes del teclado son de difícil acceso, hacer una correcta y completa limpieza del teclado requiere desmontar las keycaps. Por otro lado, hay varios medidas que aunque no por completo, algo de suciedad siempre va a acumular por el uso, permiten reducir la suciedad que se acumula en él y retrasar la frecuencia de limpieza.
    Continuar leyendo...

  • Validar documentos JSON con JSON Schema

    java planeta-codigo

    Los documentos JSON son una forma de intercambiar información entre aplicaciones. Como en cualquier intercambio de información es conveniente validar los datos recibidos antes de realizar ninguna acción. En Java dependiendo de la librería o framework utilizada aunque los datos se transmiten en formato JSON estos son transformados y recibidos como objetos Java en los cuales se realizan validaciones de tipos y conversiones de tipos y restricciones a los valores con Bean Validation o Spring Validation. La especificación JSON Schema permite definir un esquema para los documentos JSON independiente del lenguaje con la que realizar validaciones y realizar las validaciones a través de implementaciones en los diferentes lenguajes de programación incluido Java.
    Continuar leyendo...

  • Desempaquetado de teclado mecánico Glorious GMMK TKL

    Al elegir componentes para un ordenador a los que más importancia se les suele dar son el procesador y tarjeta gráfica, más tarde la cantidad de memoria RAM y almacenamiento persistente, luego está el monitor y en menor medida la fuente de alimentación, placa base, caja y ventiladores y disipador del procesador. El teclado para la mayoría de usuarios no suele estar en las primeras posiciones de importancia ni de presupuesto Aún siendo junto al monitor el principal componente hardware con el que se interacciona con el ordenador. Siempre he tenido un teclado de membrana de los económicos, no ha sido hasta ahora cuando he decidido comprar un teclado mecánico. Los buenos teclados mecánicos tienen un precio de venta mayor que los de membrana, sin embargo, para algunos usuarios que usan el ordenador de forma intensiva el precio de más está justificado ya que la experiencia de escritura es mucho mejor en los mecánicos que en los de membrana. En este artículo hago el análisis y desempaquetado del teclado Glorious GMMK TKL, junto con switches Gateron Brown y keycaps ABS.
    Continuar leyendo...

  • Ejemplo de un potencial ataque informático de phishing, El caso de El Gatico Biever

    planeta-codigo seguridad

    A estas alturas la mayoría de la gente seguramente ya haya recibido a través de un medio u otro algún intento de tipo de ataque informático, ya sea a través del correo electrónico, mensajes SMS con enlaces o a través de aplicaciones de mensajería instantánea. Los ataques informáticos cada vez van a ir a más y serán más peligrosos a medida que más operaciones se realicen a través de internet, surgirán medidas adicionales de seguridad para evitarlos como el segundo factor de autenticación pero también surgirán nuevas formas de ataque, donde el componente humano seguramente siga siendo la parte más débil del sistema de seguridad. Este artículo es el relato de la historia de un potencial ataque informático de phishing.
    Continuar leyendo...

  • Por qué proteger tu privacidad y qué información tuya se puede encontrar con una búsqueda en internet

    planeta-codigo seguridad

    La privacidad de las personas es un derecho. Un derecho que con internet y el tratamiento de datos que hacen ya todos los negocios y servicios no es fácil proteger. O aceptas los términos y condiciones de los servicios en los que quieres crear una cuenta o no permiten crearla, algunos servicios permiten cambiar algunas opciones para no recibir comunicaciones comerciales por correo electrónico pero el tratamiento de datos está implícito en la aceptación de las condiciones.
    Continuar leyendo...

  • Medidas de seguridad a implementar para prevenir y minimizar daños en ataques informáticos

    planeta-codigo programacion seguridad

    Los ataques informáticos dirigidos a los usuarios tienen el objetivo con una motivación económica del delincuente de robarles las credenciales de sus cuentas, datos de tarjetas de crédito y datos personales, otros ataques están dirigidos a los servicios que usan los usuarios. De los ataques dirigidos a los usuarios implementando las medidas de seguridad adecuadas en el servicio varios tipos de ataques son evitables como el phishing que es uno de los más comunes ofreciendo inicio de sesión con segundo factor de autenticación y con otras medidas los daños y riesgos son limitables. Otras medidas de seguridad implementadas en el servicio evita riesgos como usar salted pasword hashing. Como programadores los servicios deben hacer uso de buenas prácticas e implementar medidas adicionales para evitar riesgos y daños.
    Continuar leyendo...

  • Manual básico sobre ataques informáticos, peligros, tipos, cómo detectarlos, cómo evitarlos y medidas de prevención

    planeta-codigo seguridad

    Las compañías realizan importantes esfuerzos para implementar medidas de seguridad pero aún con ellas si el usuario no toma las medidas oportunas muchas de las medidas de seguridad de una organización, computadora o de un dispositivo electrónico son inútiles. En vez de atacar la seguridad de los servicios o dispositivos los delincuentes pueden atacar una parte que suele ser más débil, el usuario. Para evitar ser víctima de un ataque informático conviene conocer unas pocas medidas preventivas que son sencillas para detectar la mayoría de potenciales ataques.
    Continuar leyendo...

  • Análisis del maravilloso juego horrible The Last of Us

    juegos

    Algunos juegos están enfocados a la parte de habilidad y acción con la única intención de proporcionar diversion. Otros independiente de la calidad gráfica que es muy notable en la actualidad pueden ser vistos como una forma de obra de arte al mismo nivel que una novela, una película, una canción o música, un cómic, un cuadro u otras formas de arte. Los juegos tienen varios de estas formas de arte como una historia, imágenes, secuencias cinemáticas o una banda sonora que en conjunto forman la obra. El juego The Last of Us sin lugar a dudas entra perfectamente en la categoría de obra de arte siendo uno de los mejores juegos no solo de la generación para la PS3 y PS4. Un juego con una maravillosa historia al mismo tiempo que horrible.
    Continuar leyendo...