El sector de las energías verdes también va a por el código abierto

código abierto, molinos de viento

El sector de la energía, concretamente el de las energías renovables y verdes, hace un tiempo está mirando hacia el código abierto. Los desafíos a los que se enfrenta este sector hace que necesiten proyectos de software que se puedan modificar y adaptar a las necesidades cambiantes que necesitan, y para eso el código abierto les ofrece lo que necesitan.

La energía ecológica, como la procedente de molinos eólicos o de paneles solares, necesita de la ayuda del código abierto que también ayudó a impulsar a gigantes del sector tecnológico como Amazon, Google o Facebook. Un sector que no es precisamente por ser innovador ahora necesita dejar atrás su forma tradicional de operar para afrontar los retos.

Para facilitar las cosas, se ha creado Open Smart Grid Platform, una plataforma de software de código abierto para integrar y controlar una gran variedad de productos energéticos e industriales. Actualmente se está usando en Ámsterdan para controlar el alumbrado público, pero pronto podría expandirse más allá de eso.

Además, Open Smart Grid Platform, inicialmente creado por Alliander, ha sido transferida a LF Energy, una organización paraguas de la Linux Foundation. Esto garantizará su buena gestión y el impulso para que más empresas puedan beneficiarse de ello.

Otro proyecto bajo LF Energy se centra en estándares abiertos para esta industria. Se trata de un proyecto OpenEEmeter creado por la startup Recurve y ahora también dirigido por LF Energy. Con él se pretenderán crear medidas estándares para el ahorro de energía. Por ejemplo, calcular el ahorro de energía reemplazando las ventanas de un edificio, por el uso de un mejor aislamiento, etc.

Y es que, pese a que muchas conocidas empresas han estado luchando durante años contra el software libre y el código abierto, lo cierto es que ahora muchos se están dando cuenta de su potencial e importancia…

Más información – LF Energy

Sobre Open Smart Grid Platform – Sitio de GitHub

from Linux Adictos https://ift.tt/3josUua
via IFTTT

Linux 5.13 llega con soporte inicial para Apple M1, mejoras a controladores y mas

Linux Kernel

Después de dos meses de desarrollo, Linus Torvalds dado a conocer el lanzamiento del kernel de Linux 5.13 la cual se considera como la versión más grande de la historia, ya que recibió 17189 correcciones de 2150 desarrolladores y de los cuales los cambios afectaron a 12996 archivos, 794705 líneas de código agregadas, 399590 líneas eliminadas

Entre los cambios más notables se destaca el soporte inicial para chips Apple M1, controlador cgroup «misc», soporte descontinuado para /dev/kmem, soporte para nuevas GPU Intel y AMD, la capacidad de llamar directamente funciones del kernel desde programas BPF, aleatorización del kernel stack para cada llamada del sistema, la capacidad de construir en Clang con protección CFI (Control Flow Integrity), Landlock del módulo LSM para la limitación adicional de procesos y mas.

Principales novedades de Linux 5.13

En esta nueva versión del Kernel se destaca la introducción el soporte inicial para el chip ARM M1 de Apple, que cubre las funciones de controlador de interrupción, temporizador, UART, SMP, E/S y MMIO. Se menciona que la ingeniería inversa de la GPU aún no está completa, se proporciona soporte de consola serial y framebuffer para organizar la salida.

Otro de las novedades que se destaca es la integración continua en el núcleo MPTCP (MultiPath TCP), ya que en la nueva versión se agrega soporte para sockopt para configurar opciones TCP genéricas. Se implementó la capacidad de restablecer subflujos individuales.

Tambien se destaca un nuevo controlador de cgroup «Misc» (CONFIG_CGROUP_MISC), diseñado para limitar y rastrear recursos escalares que se pueden controlar usando un contador simple y limitado estableciendo los valores máximos permitidos. Como ejemplo se menciona la gestión de los identificadores de espacio de direcciones utilizados en el mecanismo AMD SEV (Secure Encrypted Virtualization).

Por otra parte tambien se destaca que en los programas de rastreo de BPF, se hizo posible utilizar un almacenamiento local de tareas para una tarea, lo que proporciona un mayor rendimiento al vincular datos a un manejador de BPF específico.

Además, tambien se destaca que después de 13 años en la rama de preparación, el controlador «comedi» ( una colección de controladores para una variedad de placas de adquisición de datos comunes. Los controladores se implementan como un módulo del núcleo de Linux que proporciona una funcionalidad común y módulos de controladores individuales de bajo nivel) se ha estabilizado y trasladado a la estructura principal para admitir los dispositivos de recopilación de datos.

En ext4, ahora se permite sobrescribir las entradas del directorio cuando se eliminan archivos para garantizar que se borren los nombres de los archivos eliminados. Al precargar mapas de bits de bloques, se mejoró el rendimiento del código para la asignación de bloques en FS recién montados. Ext4 también permite el uso simultáneo de cifrado y modo que no distingue entre mayúsculas y minúsculas.

Mientras que para XFS se agrega la capacidad de eliminar espacio del último grupo de distribución en el sistema de archivos, que fue el primer vínculo en la implementación de la función de reducir el tamaño de las particiones existentes con XFS FS. Se han realizado varias optimizaciones de rendimiento.

En Btrfs se ha agregado el uso de lectura anticipada en el comando de envío, lo que permitió reducir el tiempo para un envío completo en un 10% y uno incremental en un 25%. Para los dispositivos de bloques por zonas, se proporciona una redistribución automática en segundo plano de las zonas cuando se excede el umbral del 75% del espacio no utilizado.

Se eliminó el soporte para el archivo especial /dev/kmem, que se puede usar para acceder a todo el espacio de direcciones del kernel. Se ha descubierto que este archivo está desactualizado y causa problemas de seguridad.

Tambien podremos encontrar en esta nueva versión de Linux 5.13 que se agregó soporte para construir un kernel con la inclusión de un mecanismo de protección CFI (Control Flow Integrity) en el compilador de Clang, que agrega una función de verificación antes de cada llamada indirecta para identificar algunas formas de comportamiento indefinido que potencialmente pueden conducir a una violación de lo normal controlar el flujo como resultado de exploits, modificando punteros a funciones almacenadas en la memoria. Se propone el parámetro CONFIG_CFI_CLANG para habilitar CFI.

Finalmente por la parte de los controladores, ahora para GUD (Generic USB Display) el controlador proporciona propiedades DRM (Direct Rendering Manager) para rotación de imagen, control de brillo, acceso EDID, configuración de modo de video y conexión de TV, que se pueden utilizar como base para crear controladores específicos del dispositivo.

Mientras que para amdgpu se agrega soporte inicial para GPU Aldebaran (gfx90a) y se incluye soporte inicial para FreeSync Adaptive Sync para HDMI (anteriormente disponible para DisplayPort),

Mientras que para los controladores de Intel se destaca que se ha implementado un nuevo controlador para la gestión de la refrigeración, que permite reducir la frecuencia del procesador cuando existe peligro de sobrecalentamiento.

Descarga

Para los interesados en la nueva versión Linux 5.13 pueden realizar la descarga ya desde kernel.org

from Linux Adictos https://ift.tt/3jhF7ke
via IFTTT

Búsquedas internas y externas. De WordPress a Jekyll 8

Búsquedas internas y externas

Continuando con la configuración de nuestro blog, vamos a enfocarnos en facilitarles a nuestros lectores el encontrar nuestro contenido

Feed RSS, búsquedas internas y externas

Feed RSS

Aunque las redes sociales hicieron que esta tecnología perdiera muchos usuarios, todavía tiene sus seguidores.  Básicamente permite seguir las actualizaciones de un blog sin tener que acceder al sitio web.

Por defecto, Jekyll genera su propio feed y lo almacena en la carpeta raíz del sitio. Pero, podemos usar un servicio externo simplemente poniendo entre comillas el enlace después del item path que se encuentra bajo el encabezado feed.

Bajo este mismo encabezado podemos encontrar la opción de remover el icono del feed tanto del encabezado como de la parte inferior de la página. Simplemente tendremos que cambiar de false a true en hide.

Buscadores internos

Cuando hablamos de buscadores nos estamos refiriendo no solo a la búsqueda dentro del sitio si no también a que nuestro sitio aparezca en buscadores.

Para permitir la búsqueda dentro del sitio modificamos el código de config.yml de la siguiente forma.
search : true
search_full_content : true

Podemos optar entre tres opciones de búsqueda

  • Lunr.
  • Algolia.
  • Google Custom Search.

Lunr

Es la opción implementada por defecto y no requiere ningún tipo de configuración adicional.

Algolia

Algolia es un buscador mucho más potente que Lunr. Dispone de un plan gratuito y dos opciones de pago. Para utilizarlo hay que hacer modificaciones en otro archivo del que hablaremos en un artículo posterior.

Los datos que tenemos que completar en config.yml son los siguientes:

search_provider: algolia
Y los siguientes datos que obtenemos al registrarnos en el sitio
Algolia:
application_id: # El ID de aplicación provisto por el servicio
index_name: # El nombre del índice de búsqueda
search_only_api_key: # La API KEY asignada
Además tenemos la opción de mostar a los lectores que búscador estamos usando.
powered_by: # true (default), false
Recuerda remover el numeral.
Ponemos en marcha el indexado con:
ALGOLIA_API_KEY=your_admin_api_key bundle exec jekyll algoli

Google Customer Search

Para usar Google como nuestro motor de búsqueda tenemos que hacer lo siguiente;

  1. Vamos a esta página y pulsamos en New search engine.
  2. Completamos con el nombre del sitio y elegimos el idioma. Pulsamos en Create.
  3. Nos muestra los datos del buscador, copia y pega en un archivo el id para tenerlo a mano.
  4. Pulsamos en Control  Panel.
  5. En Look and feel seleccionamos Result only como layout y Minimalist como theme.
  6. Finalizamos pulsando Save and get code.

Pegamos el id en la siguiente sección de config.yml
Google:
search_engine_id: Pon aquí el id del buscador
También podrás activar la opción de búsqueda instantánea poniendo en true al parámetro instant_search

Optimización para motores de búsqueda

A esta altura del partido, todos sabemos que la mejor forma de conseguir buenas ubicaciones en los buscadores es pagando publicidad. Pero, si por razones de presupuesto eso está descartado, podemos seguir algunos consejos para optimizar nuestro sitio de forma de hacerlos más amigables con los motores de búsqueda. Una de las formas es verificando que somos los responsables.

La verificación es la forma de garantizar a los motores de búsqueda que tenemos derecho a ver los datos que se generan a partir de las búsquedas que llevan a nuestro sitio

Este paso tiene que hacerse cuando vas a subir el sitio al servidor porque es necesario que cada buscador haga el procedimiento de verificación.

Es decir que vas a tener que tener algunos post escritos antes de completar esta parte del archivo config.yml. Veremos esto en artículos posteriores.
Minimal Mistakes, el tema con el cuál estamos trabajando, es compatible con los siguientes motores de búsqueda.

Google Search Console

La verificación se puede hacer tanto para un dominio como para una dirección específica. En el primer caso se requiere poder modificar la configuración de los DNS, pero en ese caso no hay necesidad de hacer cambios en config.yml.  La otra opción es en URL Prefix elegir la opción HTML Tag
Veremos un trozo de código. Solo nos interesa la serie de letras y números que están después de content. Las copiamos entre comillas en
google_site_verification :

Bing Webmaster Tools

Bing también ofrece la opción de editar DNS y agrega la de importar un mapa del sitio desde Google Search Console.Para ninguna de las dos necesitamos tocar config.yml. Salvo porque la opción se llama HTML Meta Tag, el procedimiento es el mismo.

from Linux Adictos https://ift.tt/35WqriI
via IFTTT

Una vulnerabilidad en eBPF permite eludir la protección contra ataques de Spectre

El día de ayer publicamos aquí en el blog la noticia sobre Aya, una biblioteca para crear controladores eBPF en Rust y es que la finalidad de esta es el crear controladores más seguros o del proyecto Prossimo para asegurar la memoria del kernel de Linux con Rust (dos grandes proyecto que darán mucho de que hablar en los siguientes meses).

Y es que en cuestión de poco tiempo se ha reportado diversas vulnerabilidades en las cuales se aprovechan de los fallos en eBPF y que es un tema en el cual los desarrolladores del Kernel no han dejado de trabajar y tal vez Rust sea la solución.

La razón de tocar este tema, es que hace poco se dio conocer la noticia de que han identificado «otra» vulnerabilidad en el kernel de Linux (CVE-2021-33624) para eludir la protección contra vulnerabilidades de clase Spectre, ya que esta permite utilizar el subsistema eBPF para poder determinar el contenido de la memoria como resultado de la creación de condiciones para especulaciones de ejecución de determinadas operaciones.

Se menciona que la vulnerabilidad es causada por fallas en el verificador, que se utiliza para detectar errores y actividad no válida en los programas BPF. El verificador enumera las posibles rutas de ejecución del código, pero omite las opciones de ramificación que no son válidas desde el punto de vista de la semántica de la arquitectura del conjunto de instrucciones.

Al ejecutar un programa BPF, las opciones de ramificación que no fueron tomadas en cuenta por el verificador pueden ser predichas incorrectamente por el procesador y ejecutadas en un modo especulativo.

En los sistemas afectados, un programa BPF sin privilegios puede aprovechar esta vulnerabilidad para filtrar el contenido de la memoria del kernel arbitraria (y por lo tanto, de toda la memoria física) a través de un canal lateral.

Por ejemplo, al analizar la operación de «carga», el verificador asume que la instrucción usa un registro con una dirección cuyo valor está siempre dentro de los límites especificados, pero un atacante puede crear condiciones bajo las cuales el procesador intentará realizar especulativamente una operación con una dirección que no cumpla con las condiciones de verificación.

El ataque Spectre requiere la presencia de una secuencia específica de comandos en el código privilegiado, lo que lleva a la ejecución especulativa de instrucciones. Al manipular los programas BPF que se pasan para su ejecución, es posible generar tales instrucciones en eBPF y filtrar el contenido de la memoria del núcleo y áreas arbitrarias de la memoria física a través de canales laterales.

Además, se puede marcar una nota sobre el impacto en el rendimiento de los activos para proteger contra la clase de vulnerabilidades Spectre.

Esta nota resume los resultados de optimización del depurador rr (Record and Replay), una vez creado por Mozilla para depurar errores difíciles de repetir en Firefox. El almacenamiento en caché de las llamadas del sistema utilizadas para verificar la existencia de directorios redujo la operación de «fuentes rr» para el proyecto de prueba de 3 minutos 19 segundos a 36 segundos.

El autor de la optimización decidió comprobar cuánto cambiará el rendimiento después de desactivar la protección de Spectre. Después de arrancar el sistema con el parámetro «mitigations=off», el tiempo de ejecución de «rr sources» sin optimización fue de 2 minutos 5 segundos (1.6 veces más rápido) y con optimización 33 segundos (9% más rápido).

Curiosamente, deshabilitar la protección de Spectre no solo redujo el tiempo de ejecución del código a nivel del kernel en 1.4 veces (de 2 min 9s a 1 min 32s), sino que también redujo a la mitad el tiempo de ejecución en el espacio de usuario (de 1 min 9s a 33s), presumiblemente debido a una disminución en La caché de CPU de eficiencia y el TLB se restablecen cuando la protección Spectre está habilitada.

El problema ha aparecido desde el lanzamiento del kernel 4.15 y se ha solucionado en forma de parches, los cuales en estos momentos todavía no llegan a todas las distribuciones, por lo que se recomienda a los usuarios que en estos dias estén realizando las actualizaciones pertinentes en cuanto reciban las notificaciones.

Si quieres conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/35T5LYK
via IFTTT

Prossimo, un proyecto de la ISRG para asegurar la memoria del kernel de Linux con Rust

Josh Aas, director ejecutivo de la Internet Security Research Group (ISRG, organización matriz del proyecto Let’s Encrypt) dio a conocer la semana pasada mediante una publicación sus intenciones de apoyar a Miguel Ojeda (ingeniero en software y desarrollador del kernel de Linux), con el objetivo coordinar los esfuerzos para trasladar la infraestructura de software crítico a un código seguro para la memoria.

Y es que la ISRG ha proporcionado al destacado desarrollador Miguel Ojeda un contrato de un año para trabajar en Rust en Linux y otros esfuerzos de seguridad en tiempo completo.

Según Miguel Ojeda, los beneficios de introducir el lenguaje Rust en el kernel de Linux superan los costos. Para el desarrollador, al usar Rust en el kernel de Linux, el nuevo código escrito en Rust tiene un riesgo reducido de errores de seguridad de la memoria, gracias a las propiedades del lenguaje Rust. El lenguaje Rust sería popular por su seguridad.

Los esfuerzos para hacer de Rust un lenguaje viable para el desarrollo del kernel de Linux comenzaron en la conferencia Linux Plumbers 2020, con la idea del propio Linus Torvalds.

Torvalds solicitó específicamente la disponibilidad del compilador de Rust en el entorno de compilación del kernel predeterminado para respaldar dichos esfuerzos, no para reemplazar todo el código fuente del kernel de Linux con equivalentes desarrollados por Rust, sino para permitir que el nuevo desarrollo funcione correctamente.

Usar Rust para nuevo código en el kernel puede significar nuevos controladores de hardware o incluso reemplazar GNU Coreutils, reduce potencialmente la cantidad de errores ocultos en el kernel. Rust simplemente no permitirá que un desarrollador pierda memoria o cree la posibilidad de desbordamientos de búfer, las principales fuentes de rendimiento y problemas de seguridad en el código complejo de lenguaje C.

El nuevo contrato de Internet Security Research Group le otorga a Ojeda un salario de tiempo completo para continuar con el trabajo de seguridad de la memoria que ya estaba haciendo a tiempo parcial. El director ejecutivo de ISRG, Josh Aas, señala que el grupo ha trabajado en estrecha colaboración con el ingeniero de Google, Dan Lorenc, y que el apoyo financiero de Google es esencial para patrocinar el trabajo continuo de Ojeda.

«Los grandes esfuerzos para eliminar clases enteras de problemas de seguridad son las mejores inversiones a gran escala», dijo Lorenc, y agregó que Google está «encantado de ayudar a ISRG a respaldar el trabajo de Miguel Ojeda para mejorar la seguridad de la memoria del kernel para todos».

“El proyecto de seguridad de memoria Prossimo de ISRG tiene como objetivo coordinar los esfuerzos para mover la infraestructura de software crítico de Internet para proteger el código en la memoria. Cuando pensamos en el código más crítico para Internet hoy en día, el kernel de Linux encabeza la lista. Llevar la seguridad de la memoria al kernel de Linux es un gran trabajo, pero el proyecto Rust para Linux está dando grandes pasos. Nos complace anunciar que comenzamos a respaldar oficialmente este trabajo en abril de 2021 al proporcionar a Miguel Ojeda un contrato para trabajar en Rust para Linux y otros esfuerzos de seguridad a tiempo completo durante un año. Esto fue posible gracias al apoyo financiero de Google. Antes de trabajar con ISRG, Miguel estaba realizando este trabajo como un proyecto paralelo. Estamos felices de hacer nuestra parte para respaldar la infraestructura digital permitiéndole trabajar allí a tiempo completo.

“Trabajamos en estrecha colaboración con Dan Lorenc, ingeniero de software de Google para hacer posible esta colaboración.

El trabajo de Ojeda es el primer proyecto patrocinado bajo la bandera Prossimo del ISRG, pero no es el primer paso que la organización ha dado hacia una mayor seguridad de la memoria. Las iniciativas anteriores incluyen un módulo TLS seguro en memoria para el servidor web Apache, una versión segura en memoria de la utilidad de transferencia de datos curl and rustls, una alternativa segura en memoria a la omnipresente biblioteca de cifrado de red OpenSSL.

Como explica Josh Aas,

“Aunque este es el primer esfuerzo de seguridad de la memoria que anunciamos bajo nuestro nuevo nombre de proyecto Prossimo, nuestro trabajo de seguridad de la memoria comenzó en 2020.y el servidor HTTP Apache , y para agregar mejoras a la biblioteca TLS de Rustls ”.

Fuente: https://www.memorysafety.org

from Linux Adictos https://ift.tt/3wZro5F
via IFTTT

El concepto de abierto de Microsoft no es el mismo que el nuestro

El concepto de abierto

Hay palabras que pueden tener distintos significados dependiendo de quien las use. Hace algunos años en una serie del Disney Channel los protagonistas instalaban un virus por utilizar «software de código abierto». No se trataba de una campaña orquestada por las empresas de software privativo, Los guionistas confundieron open source con freeware y pensaron que estaban hablando de cualquier programa disponible sin costo en Internet.

Me acordé de esto, porque Satya Nadella, el presidente de Microsoft le acaba de decir al Wall Street Journal que Windows 11 pretende ser el centro de «un ecosistema tecnológico abierto». ¿Debemos enterder que cualquiera va a poder revisar, modificar o redistribuir el código. No, para nada.

El concepto de abierto de Microsoft

En un reportaje por video conferencia con el Wall Street Journal, Nadella afirmó que mientras Google (Chrome OS y Android) y Apple arrastran a los usuarios a plataformas cada vez más cerradas, Windows apuesta a los usuarios que quieren libertad para decidir lo que usan pretendiendo ser el más abierto ecosistema que existe (Por si se lo están preguntando, lo dijo sin reirse).

Para Nadella, un ecosistema abierto es el que puede interactuar con otro, por ejemplo conectando el teléfono al ordenador utilizando a este último para conectarse con otros teléfonos u ordenadores. También habla de la capacidad de Windows de correr varios tipos de aplicaciones, entre ellos:

  • Aplicaciones nativas.
  • Aplicaciones web progresivas.
  • Aplicaciones Android.

Cuando la periodista del Wall Street Journal le pregunta por las diferencias entre el nuevo modelo de Windows y el de Apple, Nadella le responde que es la capacidad del usuario de poder elegir otras tiendas de aplicaciones. También señala que aunque Windows 11 tendrá integrada su propia plataforma colaborativa (Microsoft Teams), de ninguna manera se bloqueará a competidores como Zoom o Slack.

Nuestro concepto de abierto

Por algún motivo, lo primero que pensé al ver los 7 minutos del reportaje es que ya que están tan abiertos a otras plataformas, bien podrían habilitar el soporte para Ext4. Sería genial poder ver los archivos de la partición home de Linux en el explorador de Windows y no tener que guardarlos en la nube. Si, ya sé que hay programas. Pero, ya que van a abrirse a otras plataformas, bien podrían habiitarlo en forma nativa.

Por otra parte, más allá de la posibilidad de instalar aplicaciones de Android (Nada menos que de la tienda de Amazon, una empresa cuyas prácticas monopólicas están siendo cuestionadas) no hay nada nuevo, salvo la ampliación de los formatos de aplicaciones que se pueden subir a la tienda oficial (De la que casi nadie descargaba nada). Uno ya podía instalar Zoom o Google Meet y desactivar Skype (En el futuro reemplazado por Teams) Una muestra de apertura sería que te dejaran elegir que navegador, cliente de video conferencia, servicio de almacenamiento en la nube o tienda de aplicaciones utilizar durante la instalación).

Todo este rollo de la apertura es para escapar del escrutinio de los entes reguladores que ya pusieron sus ojos en Apple, Google y Amazon.

Tampoco es una buena señal de «apertura» la obligación de contar con un chip TPM que no suele venir incluído en la mayoría de las placas base.  Según nuestro relevamiento, su precio en los portales de compra muestran una tendencia a subir.

Recordemos que según la Open Source Initiative, el concepto de abierto aplicado al software debe cumplir los siguientes requisitos:

  • No se puede poner ningún tipo de restricciones a la libre distribución. Una de las funciones del dichoso chip TPM es impedir la piratería.
  • El código fuente debe ser accesible.
  • La licencia debe permitir modificaciones y trabajos derivados. ¿Nunca soñaron con hacer su propio Windows? Bueno, no pueden.
  • No se puede impedir el uso del programa a ninguna persona por ninguna razón. Por ejemplo por vivir en Cuba o no pagar la licencia.
  • El derecho a usar un programa no puede estar sujeto al uso en conjunto con otros programas o  una tecnología específica. ¿Cómo un chip TPM por ejemplo?

from Linux Adictos https://ift.tt/3jqmivp
via IFTTT

Aya, la primera biblioteca para crear controladores eBPF en Rust

Linus torvalds asi como muchos desarrolladores del Kernel y de diferentes distribuciones han expresado su agrado sobre Rust e incluso en más de una ocasión se ha presentado el tema sobre la implementación de controladores en este lenguaje de programación sobre el Kernel de Linux.

Y sobre ello ya se han dado a conocer diversos trabajos de los cuales ya hemos mencionado aquí en el blog y podemos mencionar por ejemplo al experimento exitoso del conjunto alternativo de utilidades, coreutils, reescrito en Rust (este incluye utilidades como sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln y ls).

Ante esto, Linus torvalds no ha dado del todo su punto a favor sobre esta iniciativa y ha expresado los puntos negativos (puedes consultar los detalles en el siguiente enlace.)

Pese a la dura crítica de Linus, los trabajos sobre la implementación de Rust en el Kernel no han dejado de seguir adelante y hace poco se presentó la primera versión de la biblioteca Aya, que permite crear controladores eBPF en Rust que se ejecutan dentro del kernel de Linux en una máquina virtual JIT especial.

A diferencia de otras herramientas de desarrollo EBPF, Aya no utiliza libbpf y el BCC compilador, pero ofrece su propia implementación escrita en Rust que utiliza la libc paquete de cajón a las llamadas al sistema del kernel directamente de acceso. La construcción de Aya no requiere las herramientas del lenguaje C ni los encabezados del kernel.

Para quienes desconocen de eBPF, deben saber que este es un intérprete de código de bytes integrado en el kernel de Linux que le permite crear controladores de operaciones de red, monitorear el funcionamiento del sistema, interceptar llamadas al sistema, controlar el acceso, procesar eventos con cronometraje, calcular la frecuencia y el tiempo de las operaciones y realizar el seguimiento mediante kprobes/uprobes/tracepoints.

Gracias a la compilación JIT, el código de bytes se traduce en instrucciones de máquina sobre la marcha y se ejecuta con el rendimiento del código nativo. XDP proporciona un medio para ejecutar programas BPF en el nivel del controlador de red, con acceso directo al búfer DMA de paquetes, lo que le permite crear controladores de alto rendimiento para condiciones de alta carga de red.

Sobre Aya

De las características clave que se mencionan de Aya podremos encontrar que cuenta con el soporte para BTF (formato de tipo BPF), que proporciona información de tipo en pseudocódigo BPF para verificar y comparar tipos proporcionados por el kernel actual. El uso de BTF hace posible crear controladores eBPF universales que se pueden usar sin tener que volver a compilarlos con diferentes versiones del kernel de Linux.

Asi como tambien el soporte para llamadas bpf-to-bpf, variables globales e inicializadores, lo que permite diseñar programas para eBPF por analogía con programas convencionales utilizando aya como tiempo de ejecución, anulando funciones teniendo en cuenta el trabajo en eBPF.

Por otra parte, tambien cuenta con el soporte para tipos de kernel internos, incluidas matrices regulares, mapas hash, pilas, colas, seguimientos de pila y estructuras para sockets y seguimiento del rendimiento.

Tambien cuenta con la capacidad para crear varios tipos de programas eBTF, incluidos programas para filtrado y gestión de tráfico, cgroup y varios controladores de socket, programas XDP y tambien soporte de plataforma para el procesamiento de solicitudes asincrónicas en modo tokio sin bloqueo y async-std .
Compilación rápida, sin estar atado a la compilación del kernel ni a los encabezados del kernel.

Es importante mencionar que el proyecto aún se considera experimental, ya que la API aún no está estabilizada y continúa evolucionando. Además, aún no se han implementado todas las funciones concebidas.

Para finales de año, los desarrolladores esperan llevar la funcionalidad de Aya a la par con libbpf y en enero de 2022 formar la primera versión estable. También se planea combinar las partes de Aya necesarias para escribir código Rust para el kernel de Linux con los componentes del espacio de usuario utilizados para cargar, adjuntar e interactuar con programas eBPF.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/3qo5TZL
via IFTTT

Tor 0.4.6.5 llega con soporte para la tercera versión de los servicios onion y dice adiós a las anteriores

Hace pocos se dio a conocer el lanzamiento de la nueva versión  Tor 0.4.6.5 la cual se considera como la primera versión estable de la rama 0.4.6, que ha evolucionado durante los últimos cinco meses.

La rama 0.4.6 se mantendrá como parte de un ciclo de mantenimiento regular; las actualizaciones se interrumpirán 9 meses o 3 meses después del lanzamiento de la rama 0.4.7.x, además de que se continúa proporcionando un ciclo de soporte largo (LTS) para la rama 0.3.5, cuyas actualizaciones se publicarán hasta el 1 de febrero de 2022.

Al mismo tiempo, se formaron las versiones 0.3.5.15, 0.4.4.9 y 0.4.5.9 de Tor, que corrigieron las vulnerabilidades de DoS que podrían causar la denegación de servicio a los clientes de servicios de cebolla y retransmisiones.

Principales novedades de Tor 0.4.6.5

En esta nueva versión se agregó la capacidad de crear «servicios onion» basados ​​en la tercera versión del protocolo con autenticación de acceso de clientes a través de archivos en el directorio ‘authorized_clients’.

Además de que tambien se proporcionó la capacidad de pasar información de congestión en datos extrainfo que se pueden usar para equilibrar la carga en la red. La transferencia métrica está controlada por la opción OverloadStatistics en torrc.

Tambien podremos encontrar que se ha agregado una bandera para los relés que permite al operador del nodo comprender que el relé no está incluido en el consenso cuando los servidores seleccionan directorios (por ejemplo, cuando hay demasiados relés en una dirección IP).

Por otra parte se menciona que se eliminó el soporte para los servicios onion más antiguos basados ​​en la segunda versión del protocolo, que se declaró obsoleto hace un año. Se espera la eliminación completa del código asociado con la segunda versión del protocolo en otoño. La segunda versión del protocolo se desarrolló hace unos 16 años y, debido al uso de algoritmos obsoletos, no se puede considerar segura en las condiciones modernas.

Hace dos años y medio, en la versión 0.3.2.9, se ofreció a los usuarios la tercera versión del protocolo, notable por la transición a direcciones de 56 caracteres, protección más confiable contra fugas de datos a través de servidores de directorio, un extensible estructura modular y el uso de algoritmos SHA3, ed25519 y curve25519 en lugar de SHA1, DH y RSA-1024.

De las vulnerabilidades solucionadas se mencionan las siguientes:

  • CVE-2021-34550: acceso a un área de memoria fuera del búfer asignado en el código para analizar descriptores de servicios cebolla basados ​​en la tercera versión del protocolo. Un atacante puede, colocando un descriptor de servicio de cebolla especialmente diseñado, iniciar el bloqueo de cualquier cliente que intente acceder a este servicio de cebolla.
  • CVE-2021-34549 – Capacidad para realizar un ataque que provoque la denegación de servicio de los relés. Un atacante puede formar cadenas con identificadores que provoquen colisiones en la función hash, cuyo procesamiento conduce a una gran carga en la CPU.
  • CVE-2021-34548: un relé podría falsificar las celdas RELAY_END y RELAY_RESOLVED en flujos semicerrados, lo que permitió terminar un flujo que se creó sin la participación de este relé.
  • TROVE-2021-004: se agregaron verificaciones adicionales para detectar fallas al acceder al generador de números aleatorios de OpenSSL (con la implementación predeterminada de RNG en OpenSSL, tales fallas no aparecen).

De los demás cambios que se destacan:

  • Se ha agregado al subsistema de protección DoS la capacidad de limitar la intensidad de las conexiones de los clientes a los relés.
  • En relevos se implementa la publicación de estadísticas sobre el número de servicios cebolla en base a la tercera versión del protocolo y el volumen de su tráfico.
  • Se eliminó el soporte para la opción DirPorts del código para relés, que no se usa para este tipo de nodo.
    Refactorización del código.
  • El subsistema de protección DoS se ha trasladado al administrador de subsistemas.

Finalmente si estás interesado en conocer más al respecto sobre esta nueva versión, puedes consultar los detalles en el siguiente enlace.

¿Como obtener Tor 0.4.6.5 ?

Para poder obtener esta nueva versión, basta con dirigirnos al sitio web oficial del proyecto y en su sección de descargas podremos obtener el código fuente para su compilación. Puedes obtener el código fuente desde el siguiente enlace.

Mientras que para el caso especial de usuarios de Arch Linux podremos obtenerlo desde el repositorio de AUR. Solo que en estos momentos no se ha actualizado el paquete, puedes monitorearlo desde el siguiente enlace y en cuanto este disponible puedes realizar la instalación tecleando el siguiente comando:

yay -S tor-git

from Linux Adictos https://ift.tt/3A7Z0QO
via IFTTT

¿Cómo afectará Windows 11 a las distribuciones Linux?

Cómo afectará Windows 11
La captura de pantalla que encabeza este post es de mi propia computadora. Fue realizada poco después de que Microsoft anunciara el próximo lanzamiento de Windows 11.  Utilizando una herramienta de Microsoft llamada Windows PC Health Check recibí instantáneamente el mensaje de que mi PC del 2012 no podrá ejecutar la nueva versión, acompañada de una risa desperciativa. (Lo de la risa fue imaginación mía)

Una de cal  y una de arena. Acerté cuando dije aquí y aquí que la idea de que un Windows basado en el núcleo Linux era una auténtica sandez. Pero, me equivoqué cuando creí las afirmaciones de Microsoft de que no iba a haber Windows 11, aunque eso hace que mis 11 ventajas de usar Linux estén más vigentes que nunca.

¿Cómo afectará Windows 11 a las distribuciones Linux?

Cuando apareció Windows Vista en el año 2007, las distribuciones Linux no estaban lo suficientemente maduras como para aprovechar el enojo de los usuarios por los problemas que experimentaban. También Microsoft ofrecía una sólida alternativaen el ya establecido Windows XP. Hoy, sin embargo la situación es distinta.

Veamos:

  • En el 2007 toda la interactividad de la web estaba basada en Flash. En el 2021 está basada en tecnologías abiertas como HTML5, CSS y Javascript
  • Cuando salió Vista, la mayoría de los sitios web estaban optimizados para Internet Explorer. Hoy la mayoría de los sitios web están optimizados para Google Chrome. Salvo Safari, todos los navegadores importantes basados en Chrome tienen versión para Linux.
  • Hace 14 años, la cantidad de juegos de calidad profesional para Linux era prácticamente inexistente. En el 2021 esta cantidad sigue creciendo, a lo que hay que sumarle tecnologías como Proton que permite ejecutar títulos para Windows. Y, la tendencia de la industria es la de las plataformas de juegos en la nube lo que vuelve irrelevante al sistema operativo.
  • El soporte para hardware en Linux cuando salió Windows Vista era desigual. Algunos periféricos como las impresoras HP o los escáneres Mustek desarrollaban controladores. En otros casos había que compilarlos o mantener Windows en una partición para cuando uno quería imprimir algo o usar la cámara web. Hoy en día es casi imposible encontrar un equpo que no funcione con Linux. Y, tanto las tarjetas de video Intel como AMD tienen buenos drivers nativos.

¿Por qué cambiarse a Linux?

Windows 10 tiene al menos cuatro años más de soporte y, a menos que la actual crisis de falta de chips se agrave, los usuarios que no tienen computadoras compatibles cambiarán de equipo en ese lapso.

Los requisitos de hardware son:

  • Procesador de 64 bits con dos o más núcleos.
  • 4 GB de memoria como mínimo.
  • 64 GB de espacio en disco.
  • Hardware con soporte para UEFI y compatibilidad con Secure Boot.
  • Tener un chip TPM en el ordenador.  Un chip TPM es un procesador de criptografía seguro que te ayuda a con acciones, tales como generar y almacenar claves criptográficas, así como limitar su uso.
  • Tarjeta gráfica con soporte para DirectX 12 o posterior, y el controlador WDDM 2.0.
  • Pantalla de al menos 9 pulgadas en diagonal, con 720p de alta definición, y canal de 8 bits por color.

De movida, todos los ordenadores de 32 bits quedan afuera.  Y, no se cuantos de los vendidos a partir del  2016 tendrán el dichoso chip TPM.

El costo en este caso no es un factor. Se va a poder actualizar gratuitamente desde Windows 10 o descargárselo como parte del programa Insider. Pero, salvo que te interesen las características para jugadores, solo hay dos cosas interesantes que pueden implementarse en Linux sin problemas.

La primera es la integración de la tienda de Microsoft con la tienda de aplicaciones Android de Amazon. En otras palabras, se van a poder utiizar las aplicaciones Android en Windows. No debería ser demasiado difícil hacer lo mismo con las distribuciones Linux y F-Droid.

La segunda (Que es un golpe debajo de la cintura de Apple y Google) es que los desarrolladores que publiquen sus aplicaciones en la tienda de Microsoft van a poder elegir plataforma de pago. En realidad, la tienda de Snap permite incluir una opción de pago en la que Canonical no interviene, pero no sería mala idea una App Store universar con aplicaciones gratuitas y de pago en las que uno pudiera también darle un porcentaje a los proyectos de código abierto.

 

from Linux Adictos https://ift.tt/3wTLtdC
via IFTTT

Lazarus IDE: un entorno de desarrollo integrado para GUI en Linux

Lazarus IDE

Si estás pensando en comenzar a desarrollar en Linux una aplicación para Linux y con interfaz gráfica de usuario (GUI), entonces deberías conocer Lazarus IDE, un entorno de desarrollo integrado que te ayudará mucho en tu trabajo, permitiendo diseñar y crear rápidamente GUIs para apps con un aspecto atractivo. Además, tiene gran cantidad de componentes incluidos.

Lazarus IDE cuenta con un buen soporte para las distribuciones más populares, como son openSUSE, Ubuntu, Debian y Fedora. Por otro lado, resulta bastante simple de usar, ya que su diseñador de gráficos es muy fácil e intuitivo. A esto hay que agregar que es de código abierto, cuenta con una comunidad muy activa y amigable, y que está muy bien mantenido.

Pero las fortalezas de Lazarus IDE no terminan ahí. Hay más ventajas de este IDE. Entre las características destacan:

  • Puedes usar diferentes tipos de widgets para la interfaz de usuario.
  • Con solo hacer unos clics podrás construir la GUI basada en GTK2 o Qt5.
  • Es multiplataforma, por lo que podrás desarrollar en y para Linux. También podrías hacerlo en Windows o macOS.

Si quieres conocer algunas aplicaciones con GUI populares que hayan sido desarrolladas por Lazarus IDE para que te hagas una idea de lo que puede conseguir este entorno de desarrollo, la verdad es que hay algunas. Por ejemplo, puedes ver Double Commander y PeaZip. Quizás sea esta segunda una de las más conocidas y usadas en las distros GNU/Linux para compresión y descompresión de ficheros desde una app con GUI al más puro estilo de Izarc, WinRAR, o WinZIP para Windows.

Para poder comenzar con Lazarus IDE, puedes encontrarlo en los repos de las distribuciones más conocidas, por lo que lo podrás instalar fácilmente con tu gestor de paquetes favorito. Para más información del proyecto o para su descarga directa, puedes visitar su web oficial.

from Linux Adictos https://ift.tt/3jcSUIS
via IFTTT