Una actualización de Raspberry Pi OS Bullseye

Una de las cosas en las que pasamos mucho tiempo pensando aquí en Raspberry Pi es la seguridad. Los ataques cibernéticos y la piratería están, lamentablemente, en constante aumento, y las computadoras Raspberry Pi son un objetivo tan importante como cualquier otro, ¡solo porque hay muchos de ellos hoy en día!

A lo largo de los años, hemos aumentado gradualmente la seguridad del sistema operativo Raspberry Pi; no en respuesta a amenazas particulares, sino más bien como una precaución general. Sin embargo, siempre se debe lograr un equilibrio, ya que las mejoras de seguridad suelen tener un costo en términos de usabilidad, y hemos tratado de mantener el sistema lo más conveniente posible para usar, al mismo tiempo que tenemos un nivel aceptable de seguridad.

Hasta ahora, todas las instalaciones del sistema operativo Raspberry Pi tenían un usuario predeterminado llamado «pi». Esto no es una gran debilidad: solo saber un nombre de usuario válido realmente no ayuda mucho si alguien quiere piratear su sistema; también necesitarían saber su contraseña, y usted tendría que haber habilitado alguna forma de acceso remoto en primer lugar. Sin embargo, podría hacer que un ataque de fuerza bruta sea un poco más fácil y, en respuesta a esto, algunos países ahora están introduciendo leyes para prohibir que cualquier dispositivo conectado a Internet tenga credenciales de inicio de sesión predeterminadas.

Entonces, con esta última versión, se elimina el usuario «pi» predeterminado y, en su lugar, creará un usuario la primera vez que inicie una imagen del sistema operativo Raspberry Pi recién flasheada. Esto está en línea con la forma en que funcionan la mayoría de los sistemas operativos en la actualidad y, si bien puede causar algunos problemas en los que el software (y la documentación) asumen la existencia del usuario «pi», se siente como un cambio sensato en este punto.

el nuevo mago

El asistente de configuración de Raspberry Pi ya debería ser una vista familiar. Se introdujo hace varios años y se ejecuta en el primer arranque, configurando ajustes internacionales, conectándose a una LAN inalámbrica e instalando cualquier actualización de software; también le solicita que cambie la contraseña predeterminada. Pero el asistente siempre ha sido opcional: si presionaba «Cancelar» en la primera página, simplemente desaparecía y no estaba obligado a usarlo.

A partir de ahora, trabajar con el asistente ya no es opcional, ya que así se crea una cuenta de usuario; hasta que cree una cuenta de usuario, no podrá iniciar sesión en el escritorio. Entonces, en lugar de ejecutarse como una aplicación en el escritorio como antes, el asistente ahora se ejecuta en un entorno dedicado en el primer arranque.

Cuando inicie una nueva imagen, verá el entorno del asistente. No puede ejecutar ninguna aplicación desde aquí: el botón de menú y el iniciador de aplicaciones se han eliminado de la barra de tareas; todo lo que la barra de tareas ahora le permite hacer es ajustar el volumen y emparejar dispositivos Bluetooth.

El asistente en sí prácticamente no ha cambiado desde antes, con la diferencia clave de que cuando se le solicitaba una nueva contraseña, ahora se le solicita un nombre de usuario y una contraseña. (Si realmente lo desea, puede establecerlos en «pi» y «raspberry» como antes; recibirá un mensaje de advertencia de que no es prudente hacerlo, pero es su elección; algunos programas pueden requerir el usuario «pi», así que no estamos siendo completamente autoritarios al respecto. ¡Pero realmente recomendaríamos elegir otra cosa!)

Las otras configuraciones que estaban disponibles en el asistente prácticamente no han cambiado. La única otra diferencia es que la página que le permite aplicar compensación para monitores con overscan (un borde negro alrededor de la imagen) ahora tiene configuraciones separadas para ambos monitores si tiene un segundo monitor conectado, y cambiar la configuración ahora tiene efecto inmediatamente; anteriormente, la configuración de sobreexploración solo surtía efecto en un reinicio.

Una vez que llegue a la última página del asistente y presione el botón «Reiniciar», el sistema se reiniciará y aparecerá el escritorio familiar de Raspberry Pi, conectado como el usuario que acaba de crear. Y a partir de aquí, todo funcionará igual que antes.

Si está utilizando la imagen Raspberry Pi OS Lite, que no tiene el asistente, deberá crear una nueva cuenta de usuario. Por lo tanto, se le pedirá que cree una cuenta mediante indicaciones de texto en la línea de comando cuando inicie por primera vez una imagen Lite.

Configuración sin cabeza

Para las personas que ejecutan su Raspberry Pi sin cabeza y, por lo tanto, no pueden trabajar con el asistente, la herramienta Raspberry Pi Imager les permite preconfigurar una imagen con una cuenta de usuario; cuando una imagen creada como esta se inicia por primera vez, aparecerá directamente en el escritorio, iniciada sesión como el usuario creado en Imager.

Para preconfigurar una imagen como esta, cuando haya seleccionado la imagen de origen y el destino en Imager, haga clic en el botón «configuración» (la imagen de una rueda dentada) antes de hacer clic en «Escribir» y use el menú de opciones Avanzadas para ingresar un nombre de usuario y una contraseña. , junto con cualquier otra preconfiguración que desee.

También existen mecanismos para preconfigurar una imagen sin usar Imager. Para configurar un usuario en el primer arranque y omitir el asistente por completo, cree un archivo llamado userconf o userconf.txt en la partición de arranque de la tarjeta SD; esta es la parte de la tarjeta SD que se puede ver cuando está montada en una computadora con Windows o MacOS.

Este archivo debe contener una sola línea de texto, que consta de nombre de usuario: contraseña cifrada, es decir, su nombre de usuario deseado, seguido inmediatamente de dos puntos, seguido inmediatamente de una representación cifrada de la contraseña que desea utilizar.

Para generar la contraseña cifrada, la forma más fácil es usar OpenSSL en una Raspberry Pi que ya se está ejecutando: abra una ventana de terminal e ingrese

echo 'mypassword' | openssl passwd -6 -stdin

Esto producirá lo que parece una cadena de caracteres aleatorios, que en realidad es una versión cifrada de la contraseña proporcionada.

Instalaciones existentes

Algunas personas, después de leer lo anterior, ahora pueden preguntarse si pueden cambiar el nombre del usuario «pi» en sus imágenes existentes. Como parte de esta actualización, hemos incluido un mecanismo para hacerlo.

Después de actualizar como se describe a continuación, asegúrese de haber iniciado sesión como el usuario «pi» y luego abra una ventana de terminal y escriba

sudo rename-user

Después de una breve pausa, se le pedirá que reinicie y la Raspberry Pi se reiniciará en una versión reducida del asistente de primer inicio que solo le permite cambiar el nombre de usuario y la contraseña.

Una vez que haya ingresado un nuevo nombre de usuario y contraseña, se le pedirá que reinicie y su Raspberry Pi se reiniciará en el escritorio, con su usuario existente (y su directorio de inicio) renombrado, pero sin otros cambios.

Una palabra de precaución: la mayoría del software de Raspberry Pi (si se escribió correctamente…) debe manejar el cambio de nombre del directorio de inicio y seguir funcionando como antes, pero es posible que se haya escrito algún código con una ruta codificada al directorio. /home/pi, y será necesario modificarlo para que funcione correctamente con el usuario renombrado.

Además, tenga en cuenta que, debido a la forma en que el proceso de cambio de nombre de usuario implica crear e iniciar sesión temporalmente como un usuario diferente, este proceso no funcionará a través de una conexión VNC (que requiere que inicie sesión como un usuario específico); deberá ser un usuario local para cambiar el nombre del usuario «pi».

El mismo comando de cambio de nombre de usuario también se puede usar en una imagen Lite para cambiar el nombre del usuario «pi» existente; en este caso, ejecutará las mismas indicaciones de la línea de comandos que se utilizan para configurar un usuario en el primer arranque en la imagen Lite.

periféricos bluetooth

Mientras creábamos el nuevo asistente, decidimos abordar un problema de larga data. Si desea usar un teclado o mouse Bluetooth con su Raspberry Pi, siempre ha necesitado usar un mouse y/o teclado USB para emparejar inicialmente los periféricos Bluetooth, lo cual es un poco irritante.

Ese requisito se ha eliminado en el nuevo asistente. Cuando se ejecuta, la primera página le indicará que coloque cualquier teclado o mouse Bluetooth que desee usar en el modo de emparejamiento y luego que espere. Siempre que se encuentre en la primera página del asistente, la Raspberry Pi ahora buscará ratones y teclados Bluetooth emparejables, y emparejará automáticamente el primero de cada uno que encuentre. Verá mensajes emergentes para indicar que se ha encontrado un dispositivo Bluetooth y que se está emparejando; es posible que deba esperar unos segundos después de que aparezca el cuadro de diálogo «conectado» final para que el dispositivo recién conectado se active y comience a ser utilizado por el sistema, pero ahora puede configurar una Raspberry Pi desde cero con solo periféricos Bluetooth.

Esto funciona tanto con el adaptador Bluetooth incorporado en Raspberry Pi 3 y 4, como con los adaptadores Bluetooth USB en modelos anteriores de Raspberry Pi; solo asegúrese de que el adaptador USB esté insertado antes de iniciar Raspberry Pi.

Una cosa más…

Algunos de ustedes pueden haber oído hablar de Wayland, un reemplazo propuesto para el sistema X Window que ha sustentado la mayoría de los entornos de escritorio de Unix durante varias décadas. Wayland tiene varias ventajas sobre X, en particular la seguridad y el rendimiento, pero aún es una tecnología bastante nueva y, por lo tanto, todavía está en desarrollo. Un par de distribuciones de Linux ahora se ejecutan sobre Wayland, pero aún no se ha adoptado ampliamente; dicho esto, parece que Wayland es probable que sea el futuro de Linux de escritorio.

Cuando lanzamos la versión Bullseye de Raspberry Pi OS el año pasado, comenzamos a usar mutter como administrador de ventanas predeterminado en lugar de openbox, y una de las razones de esto fue que mutter admite los protocolos de Wayland. En esta versión, hacemos posible ejecutar el escritorio sobre Wayland como una configuración experimental para las personas interesadas en probarlo.

Antes de continuar, ten en cuenta que ¡todavía no recomendamos que la mayoría de las personas corran sobre Wayland! Este es un código experimental y hay muchas características que aún no son compatibles con Wayland. (Por nombrar algunos: tomar capturas de pantalla, la lupa de pantalla, cualquier aplicación de escritorio remoto, la herramienta de configuración de resolución de pantalla; esperamos que algunos de estos funcionen a su debido tiempo, pero por ahora, no es así).

Además, esta no es una implementación pura de Wayland del escritorio. Hay varias características de X, en particular la comunicación entre aplicaciones, que no son compatibles en absoluto en Wayland, que es puramente un protocolo de gráficos. El escritorio se basa en algunas de estas características de X, por lo que esta versión del escritorio es una especie de casa intermedia. El administrador de ventanas de mutter se ejecuta como una verdadera aplicación de Wayland, pero todo lo demás se ejecuta bajo XWayland, que es básicamente una implementación de X que usa Wayland para dibujar los gráficos. Esto significa que algunas de las ventajas de Wayland no estarán disponibles en esta versión de escritorio.

No obstante, después del uso de murmullo en el lanzamiento de Bullseye, este es otro paso importante en la dirección de Wayland, y las personas interesadas pueden probarlo. (Pero no se queje con nosotros de que alguna función de la que depende no funciona en Wayland; como se mencionó anteriormente, ya sabemos que muchas cosas no funcionan, ¡por eso le advertimos con anticipación!)

Cambiar a Wayland es fácil. Inicie la aplicación raspi-config desde una ventana de terminal usando

sudo raspi-config

y en el menú Opciones avanzadas, simplemente seleccione la opción Wayland, actívela y reinicie. No debería notar ninguna diferencia obvia, pero si desea verificar si realmente está ejecutando Wayland, abra una terminal y haga

echo €XDG_SESSION_TYPE

Debajo de X, esto devolverá «x11»; bajo Wayland devolverá «wayland». Si desea volver a X, use la misma opción en raspi-config para deshabilitar Wayland. (El uso de Wayland no debería cambiar nada de forma permanente en su sistema, pero recomendamos hacer una copia de seguridad antes de habilitar algo experimental como este, por si acaso).

Por ahora, Wayland es más algo para que jueguen los curiosos que algo de interés para la mayoría de los usuarios. Pero si tienes curiosidad, ¡juega!

¿Como lo consigo?

La nueva imagen está disponible para su descarga desde el lugar habitual: nuestra página de Descargas.

Para actualizar una imagen existente, use el comando de terminal habitual:

sudo apt update
 sudo apt full-upgrade

El script de cambio de nombre de usuario se instalará automáticamente en una imagen de escritorio cuando actualice, pero deberá instalarse manualmente en una imagen Lite, usando:

sudo apt install userconf-pi

Si desea instalar el soporte experimental de Wayland, también deberá hacer lo siguiente:

sudo apt install rpi-wayland

Como siempre, todos los comentarios son bienvenidos, así que deje sus comentarios a continuación.