Contents
- Uso típico: Nube Privada
- Uso típico: Almacenamiento en Red (NAS)
- Uso avanzado: Router Casero Inteligente
- Uso avanzado: Para Comunidades
- Interfaz de FreedomBox
- Lo que necesitas para empezar
- Cómo empezar
- Orientándote
- Foro de Debate
- Matrix
- IRC #freedombox
- Correo Electrónico
- Devuelve tu Ayuda
- Descargando en Debian
- Descargando para placa SBC o Máquina Virtual
- Obtener el Código Fuente
- Bepasty (Compartición de apuntes y archivos)
- Calibre (biblioteca de libros electrónicos)
- Coturn (Asistente para VoIP)
- Deluge (Compartición distribuída de archivos mediante BitTorrent)
- Ejabberd (Servidor de Mensajería Instantánea)
- Postfix/Dovecot/Rspamd (Servidor de correo electrónico)
- GitWeb (Alojamiento simple para Git)
- Ikiwiki (Wiki y Blog)
- Infinoted (Edición colaborativa de textos mediante Gobby)
- Janus (servidor WebRTC)
- Captura de pantalla
- Usar Janus
- JSXC (Cliente Web de Mensajería Instantánea)
- Matrix Synapse (Servidor de Mensajería Instantánea)
- MediaWiki (Wiki)
- Minetest (Sandbox de bloques)
- MiniDLNA / ReadyMedia (Servidor multimedia básico)
- Miniflux (Lector de noticias)
- Servidor Mumble (Chat de voz)
- OpenVPN (Red Privada Virtual)
- Privoxy (Proxy Web)
- Quassel (Cliente IRC)
- Radicale (Calendario y Contactos)
- Roundcube (Cliente de Correo Electrónico (Email))
- RSS Bridge (Generador de feeds RSS)
- Samba (Almacenamiento de Ficheros en Red)
- Searx (Búsqueda Web)
- Shaarli (Marcapáginas)
- Shadowsocks (Eludir censura)
- Sharing (Publicación de Archivos)
- Syncthing (Sincronización de Archivos)
- TiddlyWiki (Bloc de notas no lineal)
- Tiny Tiny RSS (Lector de Feeds de Noticias)
- Tor (Red para el anonimato)
- Proxy Tor (Red Anónima)
- Transmission (Compartición distribuída de archivos mediante BitTorrent)
- Sitios web de usuario (User Websites)
- WireGuard (Red Privada Virtual)
- WordPress (Sitio Web y Blog)
- Zoph (Administración de fotografías)
- Actualizaciones de Software
- Almacenamiento
- Almacén de instantáneas
- Apagado
- BIND (Servidor de Nombre de Dominio)
- Cliente de DNS Dinamico
- Cockpit (Administración de Servidor)
- Configurar
- Copias de respaldo (backups)
- Cortafuegos
- Detección de Servicios
- Diagnósticos
- Fecha y hora
- Let's Encrypt (Certificados)
- PageKite (Visibilidad Publica)
- Performance (Monitorización del sistema)
- Protección
- Redes
- Servicios de Nombre
- Shell Segura
- Usuarios y Grupos
- Hardware Recomendado
- Hardware Soportado
- Más Hardware
- Hardware Obsoleto
- Información común sobre Hardware
- Compilar tus propias imágenes
- FreedomBox Pioneer Edition
- Características del Producto
- Obtener el Código Fuente
- A20 OLinuXino Lime2
- A20 OLinuXino MICRO
- APU
- Cubietruck
- Cubieboard 2
- Beagle Bone Black
- pcDuino3
- Debian
- VirtualBox
- Pine A64+
- Banana Pro
- Orange Pi Zero
- RockPro64
- Rock64
- Raspberry Pi 2 Model B
- Raspberry Pi 3 Model B
- Raspberry Pi 3 Model B+
- Raspberry Pi 4 Model B
- USB Wi-Fi
- FreedomBox 25.7 (2025-04-07)
- FreedomBox 25.6 (2025-03-25)
- FreedomBox 25.5 (2025-03-10)
- FreedomBox 25.4.1 (2025-03-02)
- FreedomBox 25.4 (2025-02-24)
- FreedomBox 25.3.1 (2025-02-15)
- FreedomBox 25.3 (2025-02-10)
- FreedomBox 25.2 (2025-01-27)
- FreedomBox 25.1 (2025-01-13)
- FreedomBox 24.26.1 (2025-01-05)
- FreedomBox 24.26 (2024-12-30)
- FreedomBox 24.25 (2024-12-16)
- FreedomBox 24.24 (2024-11-18)
- FreedomBox 24.23 (2024-11-04)
- FreedomBox 24.22 (2024-10-21)
- FreedomBox 24.21 (2024-10-07)
- FreedomBox 24.20.1 (2024-09-25)
- FreedomBox 24.20 (2024-09-23)
- FreedomBox 24.19 (2024-09-09)
- FreedomBox 24.18 (2024-08-26)
- FreedomBox 24.17 (2024-08-12)
- FreedomBox 24.16 (2024-07-29)
- FreedomBox 24.15 (2024-07-16)
- FreedomBox 24.14 (2024-07-01)
- FreedomBox 24.13 (2024-06-17)
- FreedomBox 24.12 (2024-06-03)
- FreedomBox 24.11 (2024-05-20)
- FreedomBox 24.10 (2024-05-06)
- FreedomBox 24.9 (2024-04-22)
- FreedomBox 24.8 (2024-04-08)
- FreedomBox 24.7 (2024-03-25)
- FreedomBox 24.6 (2024-03-11)
- FreedomBox 24.5 (2024-02-26)
- FreedomBox 24.4 (2024-02-12)
- FreedomBox 24.3 (2024-01-29)
- FreedomBox 24.2 (2024-01-15)
- FreedomBox 24.1 (2024-01-01)
- FreedomBox 23.21 (2023-11-20)
- FreedomBox 23.20 (2023-11-06)
- FreedomBox 23.19 (2023-10-23)
- FreedomBox 23.18 (2023-09-25)
- FreedomBox 23.17 (2023-09-11)
- FreedomBox 23.16 (2023-08-28)
- FreedomBox 23.15 (2023-08-14)
- FreedomBox 23.14 (2023-07-31)
- FreedomBox 23.13 (2023-07-17)
- FreedomBox 23.12 (2023-06-19)
- FreedomBox 23.11 (2023-06-05)
- FreedomBox 23.10 (2023-05-22)
- FreedomBox 23.9 (2023-05-08)
- FreedomBox 23.6.2 (2023-05-01)
- FreedomBox 23.8 (2023-04-24)
- FreedomBox 23.6.1 (2023-04-10)
- FreedomBox 23.7 (2023-03-27)
- FreedomBox 23.6 (2023-03-13)
- FreedomBox 23.5 (2023-02-27)
- FreedomBox 23.4 (2023-02-13)
- FreedomBox 23.3 (2023-01-30)
- FreedomBox 23.2 (2023-01-16)
- FreedomBox 23.1 (2023-01-03)
- FreedomBox 22.27 (2022-12-19)
- FreedomBox 22.26 (2022-12-05)
- FreedomBox 22.25 (2022-11-21)
- FreedomBox 22.24 (2022-11-07)
- FreedomBox 22.23 (2022-10-24)
- FreedomBox 22.22.1 (2022-10-16)
- FreedomBox 22.22 (2022-10-10)
- FreedomBox 22.21.1 (2022-10-01)
- FreedomBox 22.21 (2022-09-26)
- FreedomBox 22.20 (2022-09-12)
- FreedomBox 22.19 (2022-08-29)
- FreedomBox 22.18 (2022-08-15)
- FreedomBox 22.17 (2022-08-01)
- FreedomBox 22.16 (2022-07-18)
- FreedomBox 22.15 (2022-07-04)
- FreedomBox 22.14.1 (2022-06-27)
- FreedomBox 22.14 (2022-06-20)
- FreedomBox 22.13 (2022-06-06)
- FreedomBox 22.12 (2022-05-23)
- FreedomBox 22.11 (2022-05-09)
- FreedomBox 22.10 (2022-04-25)
- FreedomBox 22.9 (2022-04-11)
- FreedomBox 22.8 (2022-03-28)
- FreedomBox 22.7 (2022-03-14)
- FreedomBox 22.6.1 (2022-03-06)
- FreedomBox 22.6 (2022-03-02)
- FreedomBox 22.5 (2022-02-14)
- FreedomBox 22.4 (2022-01-31)
- FreedomBox 22.3 (2022-01-17)
- FreedomBox 22.2 (2022-01-11)
- FreedomBox 22.1 (2022-01-03)
- FreedomBox 21.16 (2021-12-20)
- FreedomBox 21.15 (2021-12-06)
- FreedomBox 21.14.1 (2021-11-24)
- FreedomBox 21.14 (2021-11-22)
- FreedomBox 21.13 (2021-11-08)
- FreedomBox 21.12 (2021-10-25)
- FreedomBox 21.11 (2021-10-11)
- FreedomBox 21.10 (2021-09-27)
- FreedomBox 21.9 (2021-09-18)
- FreedomBox 21.8 (2021-08-30)
- FreedomBox 21.7 (2021-08-16)
- FreedomBox 21.6 (2021-05-31)
- FreedomBox 21.5 (2021-04-19)
- FreedomBox 21.4.2 (2021-03-28)
- FreedomBox 21.4.1 (2021-03-13)
- FreedomBox 21.4 (2021-02-28)
- FreedomBox 21.3 (2021-02-11)
- FreedomBox 21.2 (2021-02-05)
- FreedomBox 21.1 (2021-01-25)
- FreedomBox 21.0 (2021-01-11)
- FreedomBox 20.21 (2020-12-28)
- FreedomBox 20.20.1 (2020-12-19)
- FreedomBox 20.20 (2020-12-14)
- FreedomBox 20.19 (2020-11-30)
- FreedomBox 20.18.1 (2020-11-23)
- FreedomBox 20.18 (2020-11-16)
- FreedomBox 20.17.1 (2020-11-07)
- FreedomBox 20.17 (2020-11-02)
- FreedomBox 20.16 (2020-10-19)
- FreedomBox 20.15 (2020-10-05)
- FreedomBox 20.14.1 (2020-09-23)
- FreedomBox 20.14 (2020-09-15)
- FreedomBox 20.13 (2020-07-18)
- FreedomBox 20.12.1 (2020-07-05)
- FreedomBox 20.12 (2020-06-29)
- FreedomBox 20.11 (2020-06-15)
- FreedomBox 20.10 (2020-06-01)
- FreedomBox 20.9 (2020-05-18)
- FreedomBox 20.8 (2020-05-04)
- FreedomBox 20.7 (2020-04-20)
- FreedomBox 20.6.1 (2020-04-11)
- FreedomBox 20.6 (2020-04-06)
- FreedomBox 20.5.1 (2020-03-26)
- FreedomBox 20.5 (2020-03-23)
- FreedomBox 20.4 (2020-03-09)
- FreedomBox 20.3 (2020-02-24)
- FreedomBox 20.2 (2020-02-10)
- FreedomBox 20.1 (2020-01-27)
- FreedomBox 20.0 (2020-01-13)
- FreedomBox 19.24 (2019-12-30)
- FreedomBox 19.23 (2019-12-16)
- FreedomBox 19.22 (2019-12-02)
- FreedomBox 19.21 (2019-11-18)
- FreedomBox 19.20 (2019-11-04)
- FreedomBox 19.19 (2019-10-21)
- FreedomBox 19.18 (2019-10-07)
- FreedomBox 19.17 (2019-09-23)
- FreedomBox 19.16 (2019-09-09)
- FreedomBox 19.15 (2019-08-26)
- FreedomBox 19.14 (2019-08-12)
- FreedomBox 19.13 (2019-07-29)
- FreedomBox 19.12 (2019-07-22)
- FreedomBox 19.2.2 (2019-07-17)
- FreedomBox 19.2.1 (2019-07-09)
- FreedomBox 19.11 (2019-07-08)
- FreedomBox 19.10 (2019-06-24)
- FreedomBox 19.9 (2019-06-10)
- FreedomBox 19.8 (2019-05-27)
- FreedomBox 19.7 (2019-05-13)
- FreedomBox 19.6 (2019-04-29)
- FreedomBox 19.5 (2019-04-15)
- FreedomBox 19.4 (2019-04-01)
- FreedomBox 19.3 (2019-03-18)
- FreedomBox 19.2 (2019-03-02)
- FreedomBox 19.1 (2019-02-14)
- FreedomBox 19.0 (2019-02-09)
- Version 0.49.1 (2019-02-07)
- Version 0.49.0 (2019-02-05)
- Version 0.48.0 (2019-01-28)
- Version 0.47.0 (2019-01-14)
- Version 0.46.0 (2018-12-31)
- Version 0.45.0 (2018-12-17)
- Version 0.44.0 (2018-12-03)
- Version 0.43.0 (2018-11-19)
- Version 0.42.0 (2018-11-05)
- Version 0.41.0 (2018-10-22)
- Version 0.40.0 (2018-10-08)
- Version 0.39.0 (2018-09-24)
- Version 0.38.0 (2018-09-10)
- Version 0.37.0 (2018-08-27)
- Version 0.36.0 (2018-08-13)
- Version 0.35.0 (2018-07-30)
- Version 0.34.0 (2018-07-16)
- Version 0.33.1 (2018-07-04)
- Version 0.33.0 (2018-07-02)
- Version 0.32.0 (2018-06-18)
- Version 0.31.0 (2018-06-04)
- Version 0.30.0 (2018-05-21)
- Version 0.29.1 (2018-05-08)
- Version 0.29.0 (2018-05-07)
- Version 0.28.0 (2018-04-23)
- Version 0.27.0 (2018-04-09)
- Version 0.26.0 (2018-03-26)
- Version 0.25.0 (2018-03-12)
- Plinth v0.24.0 (2018-02-26)
- Plinth v0.23.0 (2018-02-12)
- Plinth v0.22.0 (2018-01-30)
- Plinth v0.21.0 (2018-01-15)
- Plinth v0.20.0 (2018-01-01)
- Plinth v0.19.0 (2017-12-18)
- Plinth v0.18.0 (2017-12-04)
- Plinth v0.17.0 (2017-11-20)
- Plinth v0.16.0 (2017-11-06)
- Plinth v0.15.3 (2017-10-20)
- Plinth v0.15.2 (2017-09-24)
- Plinth v0.15.0 (2017-07-01)
- Plinth v0.14.0 (2017-04)
- Plinth v0.13.1 (2017-01-22)
- Plinth v0.12.0 (2016-12-08)
- Plinth v0.11.0 (2016-09-29)
- Plinth v0.10.0 (2016-08-21)
- Version 0.9.4 (2016-06-24)
- Version 0.9 (2016-04-24)
- Version 0.8 (2016-02-20)
- Version 0.7 (2015-12-13)
- Version 0.6 (2015-10-31)
- Version 0.5 (2015-08-07)
- Version 0.3 (2015-01-20)
- Version 0.2 (2014-03-16)
- Version 0.1 (2013-02-26)
- Enlaces Rápidos
- Bienvenida a los recién llegados
- Donar
- Correr la voz
- Darnos tus impresiones (Comentar)
- Pedir aplicaciones
- Traducir
- Documentar: Manual de Usuario, Sitio Web y Wiki, Vieos demostrativos
- Asegurar la calidad (probar y comprobar)
- Codificar
- Diseño
- Empaquetar aplicaciones
- Servicio FreedomBox (Plinth)
- Freedom Maker
FreedomBox: Recupera tu privacidad online
FreedomBox es un servidor personal diseñado tomando en cuenta la privacidad y la propiedad de los datos. Es un subconjunto del sistema operativo universal Debian e incluye solo software libre. Puedes ejecutarlo en casa en un ordenador pequeño, barato y energéticamente eficiente dedicado a tal uso. También se puede instalar en cualquier ordenador que ejecute Debian o en una máquina virtual.
Para reeemplazar servicios de comunicaciones de terceros que están espiando toda tu vida, podrás alojar servicios por ti mismo y usarlos en casa o a través de Internet mediante un navegador o aplicaciones especializadas. Estos servicios incluyen chat y audioconferencias, correo electrónico web, compartición de ficheros y calendario, libreta de direcciones y sincronización de feeds de noticias. Por ejemplo, para comenzar a usar un servicio de chat privado activa el servicio desde el interfaz de administración y agrega a tus amistades como usuarios autorizados del servicio. Podrán conectarse al servicio alojado en tu FreedomBox usando clientes de chat XMPP como Conversations para Android, Pidgin para Windows y Linux, o Messages para Mac OS, y acceder a comunicaciones cifradas.
FreedomBox es un producto que puedes comprar, instalar y queda lista para usar. Una vez instalado el interfaz es fácil de usar, parecido a un teléfono inteligente.
Documentación de usuario:
FreedomBox también puede alojar un punto de acceso Wi-Fi, un proxy para bloquear anuncios y una red privada virtual (VPN). Los usuarios más avanzados pueden reemplazar su router por un FreedomBox.
Configurar FreedomBox en casa sobre un hardware específico o en tu ordenador con Debian podría requerir cierto conocimiento técnico o ayuda de la comunidad.
Documentación técnica relacionada:
1. Uso típico: Nube Privada
FreedomBox proporciona servicios a ordenadores y dispositivos móviles en tu hogar, y a tus amistades. Esto incluye mensajería instantánea segura y audioconferencias de alta calidad con poco consumo de banda. FreedomBox te permite publicar tus contenidos en un blog y en un wiki para colaborar con el resto del mundo. Están previstos los servicios de servidor personal de correo electrónico y red social federada, para proporcionar alternativas a Gmail y Facebook que respeten la privacidad.
2. Uso típico: Almacenamiento en Red (NAS)
Se puede extender el espacio de almacenaje disponible para la FreedomBox conectando un disco duro externo. Esto permite a FreedomBox ejercer como biblioteca multimedia para tus fotos, música, y videos. Las carpetas se comparten en la red local con ordenadores y dispositivos móviles, y se pueden retransmitir los contenidos a dispositivos locales, como smart TVs.
3. Uso avanzado: Router Casero Inteligente
FreedomBox se ejecuta en un ordenador físico y puede enrutar tu tráfico. Puede reemplazar a tu router inalámbrico de casa dando salida a internet a dispositivos variados como teléfonos móviles, ordenadores portátiles y televisores. Enrutando tráfico FreedomBox puede eliminar anuncios espía y malware web antes incluso de que alcancen tus dispositivos. FreedomBox puede ocultar tu localización y protejer tu anonimato enrutando tu tráfico por la red Tor. FreedomBox proporciona un servidor VPN que puedes emplear cuando estés lejos de casa para mantener secreto tu tráfico en redes inalámbricas públicas en las que no confíes y para acceder con seguridad a tus dispositivos de casa.
También lo puedes llevar contigo y tu portátil y usarlo para para habilitar sus servicios en redes públicas en la escuela o en la oficina. En el futuro, FreedomBox intentará dar soporte a medios alternativos de conexión a Internet, como redes Mesh.
4. Uso avanzado: Para Comunidades
El objetivo principal del diseño de FreedomBox es ser empleado como servidor personal en el hogar para uso por parte de una única familia y sus amistades. No obstante, en esencia es un software servidor que puede ayudar a un usuario no técnico a desplegar y mantener servicios con facilidad. El software se encarga automáticamente de muchas de las decisiones técnicas de administración del sistema, incluída la seguridad, reduciendo la complejidad para un usuario no técnico. Esta naturaleza de FreedomBox le hace apropiado para alojar servicios para comunidades pequeñas como aldeas o pequeñas empresas. Las comunidades pueden alojar sus propios servicios con un esfuerzo minimo usando FreedomBox. Pueden desplegar redes Wi-Fi que cubran toda el área de la comunidad y traer conexiones a Internet desde largas distancias. Los miembros de la comunidad pueden disfrutar conectividad a Internet, cobertura Wi-Fi omnipresente, servicios de VoIP, contenidos educativos y de entretenimiento offline, etc anteriormente no disponibles. También reforzará la privacidad individual de los miembros de la comunidad, reducirá su dependencia de servicios centralizados proporcionados por grandes compañías y les hará resistentes a la censura.
El libro electrónico libre FreedomBox for Communities describe la motivación y proporciona instrucciones detalladas para configurar FreedomBox para este caso de uso. Miembros del proyecto FreedomBox estan involucrados en desplegar redes Wi-Fi con conectividad gratuíta a Internet en la India rural. Este libro electrónico documenta su conocimiento y experiencias.
5. Interfaz de FreedomBox
5.1. Captura de pantalla
5.3. Recursos en formato video
La charla Eben Moglen - Freedom in the cloud que impartió Eben Moglen antes del arranque del proyecto FreedomBox expone aspectos de la filosofía que hay detrás FreedomBox.
Primera demostración de FreedomBox en SFLC, Universidad de Columbia por Sunil Mohan Adapa.
Guía de Inicio Rápido
1. Lo que necesitas para empezar
La forma fácil es comprar un kit FreedomBox.
Alternativamente podrías optar por montarlo tu mismo reuniendo todas las piezas:
Un dispositivo soportado (incluyendo cualquier dispositivo que pueda funcionar con Debian). En el resto de este manual lo llamaremos la FreedomBox.
- Un cable de alimentación para tu dispositivo.
Un cable de red Ethernet.
Una tarjeta microSD (o un medio de almacenamiento equivalente para tu dispositivo) preparado según las instrucciones de la página de Descargas.
2. Cómo empezar
Conecta un extremo del cable de red al puerto Ethernet de tu FreedomBox y el otro a tu router.
Enciende la FreedomBox.
Nota: En la mayoría de computadoras monoplaca no esperes un efecto de salida en un monitor si lo conectas por HDMI porque el núcleo (kernel) del sistema podría no reconocerlo. Mira más abajo para aprender cómo acceder y controlar tu FreedomBox desde la red.
En el primer arranque FreedomBox ejecutará su configuración inicial (las versiones más antiguas de FreedomBox se reinician tras este paso). Este proceso podría llevar varios minutos en algunas máquinas. Después de darle unos 10 minutos aproximadamente, sigue con el siguiente paso.
Después de que tu FreedomBox haya finalizado su configuración inicial puedes acceder a su interfaz web mediante tu navegador web.
Si tu ordenador está conectado directamente a tu FreedomBox a través de un segundo puerto Ethernet de la red local, puedes navegar a http://freedombox/ o a http://10.42.0.1/.
Si tu ordenador soporta mDNS (GNU/Linux, Mac OSX o Windows con software mDNS instalado), puedes navegar a: http://freedombox.local/ (o a http://<el-hostname-que-estableciste-durante-la-instalación>.local/)
Si te manejas con el interfaz web de tu router, puedes buscar allí la dirección IP de tu FreedomBox y navegar a ella.
Si no están disponibles ninguno de estos métodos necesitarás averiguar la dirección IP de tu FreedomBox. Puedes usar el programa "nmap" de tu ordenador para encontrar su dirección IP:
nmap -p 80 --open -sV 192.168.0.0/24 (remplaza la ip/máscara de red con la que use tu router)
En la mayoría de los casos puedes mirar tu dirección IP actual y cambiar los últimos dígitos por 0 para encontrar tu red local, así: XXX.XXX.XXX.0/24
Tu FreedomBox aparecerá como una dirección IP con un puerto TCP 80 abierto usando el servicio Apache httpd sobre Debian. En el siguiente ejemplo estaría en http://192.168.0.165:
Nmap scan report for 192.168.0.165 Host is up (0.00088s latency). PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.17 ((Debian))
Si nmap no encuentra nada con el comando anterior puedes probar a remplazar 192.168.0.0/24 por 10.42.0.255/24.
nmap -n -sP 10.42.0.255/24
El informe de escaneo mostrará algo similar a esto:Nmap scan report for 10.42.0.1 Host is up (0.00027s latency). Nmap scan report for 10.42.0.50 Host is up (0.00044s latency).
En este ejemplo, la FreedomBox está en http://10.42.0.50. (10.42.0.1 es mi ordenador.)
Al acceder al interfaz web de FreedomBox tu navegador te avisará de que comunica en modo seguro pero que considera invalido el certificado de seguridad. Tienes que aceptarlo porque el certificado es autogenerado en la FreedomBox y "autofirmado" (el navegador podría denominarlo "no confiable", "no privado", "error de privacidad" o "emisor/autoridad desconocida"). Decir a tu navegador que ya lo sabes podría implicar accionar algunos botones como "Entiendo los riesgos", "proceder ... (inseguro)" o "Añadir excepción". Después de la instalación este certificado se puede cambiar a otro normal usando la opción Let's Encrypt.
Si el nombre de dominio que usas tiene un certificado válido de una authoridad de certificación reconocida, como Let's Encrypt no podrás acceder al interfaz web. Por ello no se te ofrecerá la opción de continuar. Esto podría ocurrir, por ejemplo, si estás reinstalando tu FreedomBox o estás reutilizande de algón modo un nombre de dominio con un certificado asociado. Esto es normal, porque tu navegador recuerda haber visitado el sitio con el certificado oficial válido. En consecuancia el navegador no aceptará un certificado autofirmado y te verás bloqueado. Hay dos maneras de superar este obstáculo.
El primer método es acceder a tu FreedomBox por su dirección IP en vez de por el dominio. Así, en vez de usar algo como https://ejemplo.com usarías algo como https://198.51.100.2 (substituyendo tu priopia dirección IP).
El segundo método es crear un perfil nuevo en tu navegador y acceder a tu FreedomBox con él. El perfil nuevo no recordará ni el sitio ni el certificado. Una vez tu FreedomBox tenga su nuevo certificado Let's Encrypt puedes volver a usar el perfil antiguo en el navegador.
La primera vez que accedes al interfaz web de tu FreedomBox verás una página de bienvenida. Haz clic en el botón "Iniciar configuración" para continuar.
Si has instalado FreedomBox usando un paquete Debian se te pedirá una clave secreta. Esta clave se habrá generado durante la instalación del paquete Debian. Se puede leer en el archivo /var/lib/plinth/firstboot-wizard-secret.
- La siguiente página te pide un nombre de usuario y contraseña. Rellena el formulario y haz clic en "Crear Cuenta."
Nota: El usuario que creas aquí tendrá privilegios de Admin y también podrá entrar por SSH. Por mayor seguridad deberías emplear para tareas administrativas una cuenta diferente de la de uso habitual. Luego puedes añadir más usuarios, entre ellos el tuyo de uso habitual.
Tras completar el formulario estarás en el interfaz web de FreedomBox y podrás acceder a las apps y a la configuración mediante el interfaz web.
Ahora puedes probar cualquier App disponible en FreedomBox.
3. Orientándote
3.1. Página principal
La página principal es la que verás al acceder a la raíz web de tu FreedomBox. También puedes acceder a ella haciendo clic sobre el logo de FreedomBox de la esquina de arriba a la izquierda del interfaz web de FreedomBox.
La página principal tiene accesos directos a las apps instaladas que estén habilitadas. Haciendo clic en los accesos directos de aplicaciones web te llevarán a la página web correspondiente de cada app. Si son otro tipo de servicios hacer clic en los accesos directos te mostrará información acerca de cada servicio.
3.2. Menú de Aplicaciones
Al Menú de Aplicaciones se accede por el icono de rejilla que está junto al logo de FreedomBox. Esta página lista todas las apps disponibles para instalar en tu FreedomBox. Haz click sobre el nombre de la app para visitar su página, desde la que podrás instalarla y configurarla.
3.3. Menú de Ayuda
Al Menú de Ayuda se accede por el icono del signo de interrogación de la esquina de arriba a la derecha. Incluye enlaces útiles y el manual de FreedomBox.
3.4. Menú del Sistema
Al Menú del Sistema se accede por el icono del engranaje de la esquina de arriba a la izquierda. Incluye páginas relacionadas con la configuración del sistema.
3.5. Menú del Usuario
En la esquina superior derecha se muestra el nombre del usuario actual. Un menú desplegable incluye opciones para editar el perfil del usuario o sacarle del interfaz web.
3.6. Menú de Hamburgesa
El interfaz web de FreedomBox's es autoadaptativo. En pantallas o ventanas de navegador estrechas las opciones del menú podrían estar ocultas.
Esto se debe a que las opciones del menú han colapsado en el icono de hamburguesa mostrado en la esquina superior derecha de la ventana. Haz clic en él para desplegar el menú.
Obtener Ayuda
La comunidad FreedomBox proporciona ayuda en vivo a través de foros, chat y correo electrónico. Contacta y pregunta lo que quieras. Si recibes ayuda, considera por favor informar de tu solución en la página Preguntas y Respuestas para que otros puedan beneficiarse en el futuro.
1. Foro de Debate
La forma más fácil de obtener soporte es usando el foro de debate. Puedes hojear soluciones a problemas conocidos o pedir ayuda a los contribuyentes de la comunidad preguntando. Esta es también la mejor manera de aportar a los contribuyentes de la comunidad información acerca de tu experiencia con FreedomBox.
Para publicar contenido nuevo necesitarás registrarte con un nombre y una dirección de correo electrónico (pero puedes usar un pseudonimo y una dirección secundaria). Habilitando el 'modo lista de correo' ('mailing list mode') en las preferencias de tu cuenta, puedes interactuar con el foro simplemente enviando y recibiendo correos electrónicos como en una lista de correo.
2. Matrix
Puedes unirte a la sala Matrix #freedombox:matrix.org. La sala está federada con el canal IRC y recuerda la historia del chat. Si aún no tienes un cliente instalado puedes usar tu navegador web para unirte. Para más opciones, visita la página de introducción al cliente matrix.
3. IRC #freedombox
Si te manejas con IRC (Internet Relay Chat) y sus clientes puedes obtener ayuda en línea instantánea de la comunidad en el canal #freedombox de irc.debian.org. Quizá pase un tiempo antes de que algún miembro te responda. Sé paciente. Ya llegará alguna respuesta.
4. Correo Electrónico
Se puede acceder a los usuarios y contribuyentes de FreedomBox mediante e-mail con la lista de correo. Para formular preguntas y recibir respuestas de la comunidad por favor regístrate en la página de la lista de correo dando tu dirección de correo electrónico y creando una contraseña. También puedes leer los hilos archivados. Esta lista reune a cerca de 700 lectores.
5. Devuelve tu Ayuda
Una vez tengas tu solución, no olvides añadirla a la página de Preguntas y Respuestas. Cuéntanos las funcionalidades que empleas de FeedomBox en la página de Casos de Uso. Podría ayudar a otros a usar FreedomBox de modos que no hayan imaginado.
Descarga e Instalación
Bienvenido a la página de descargas de FreedomBox.
Nota: Si has comprado un kit FreedomBox esta sección no está pensada para tí, así que puedes simplemente saltártela entera. (A no ser que quieras específicamente compilarte una imagen alternativa del software).
Puedes instalar FreedomBox sobre alguno de los baratos dispositivos hardware soportados, sobre cualquier sistema operativo Debian Linux, o sobre una máquina virtual.
Instalar en una máquina que lleve el sistema Debian es fácil porque FreedomBox está disponble como paquete. Recomendamos instalar FreedomBox sobre una placa SBC soportada. La placa estaría dedicada al uso de FreedomBox en el hogar. Esto evitará un montón de riesgos, como configuraciones accidentalmente incorectas por el usuario. En caso de duda decidiendo qué hardware es el más apropiado para tí o durante la instalación, usa por favor la página de soporte o lee la página de Preguntas y Respuestas basada en los archivos de la lista de correo Freedombox-discuss.
1. Descargando en Debian
Si estás instalando sobre un sistema Debian existente no necesitas descargar las imágenes. Lee las instrucciones para configurar FreedomBox en Debian.
2. Descargando para placa SBC o Máquina Virtual
2.1. Preparar tu dispositivo
Lee las instrucciones específicas para tu hardware respecto a como preparar tu dispositivo en la sección Hardware. En la web hay abundante documentación respecto a como configurar tu dispositivo y grabar USB's o tarjetas SD para arrancar tu hardware.
2.2. Descargar Imágenes
Las imágenes recientes para hardware soportado están disponibles aquí:
Imágenes Oficiales: https://freedombox.org/download/
Imágenes Oficiales: https://ftp.freedombox.org/pub/freedombox/
2.3. Verificar las Imágenes Descargadas
Es importante verificar las imágenes que has descargado para asegurar que el fichero no se ha corrompido durante la transmisión y que efectívamente es la imagen construída por los desarrolladores de FreedomBox.
Nota: Las imágenes de prueba y nocturnas las firma el servidor de integración contínua de FreedomBox automaticamente.
Primero abre un terminal e importa las claves publicas de los desarrolladores de FreedomBox que construyeron las imágenes:
$ gpg --keyserver keyserver.ubuntu.com --recv-keys BCBEBD57A11F70B23782BC5736C361440C9BC971 $ gpg --keyserver keyserver.ubuntu.com --recv-keys 7D6ADB750F91085589484BE677C0C75E7B650808 # Esta es la clave del servidor de integración contínua de FreedomBox $ gpg --keyserver keyserver.ubuntu.com --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8 # Esta es la clave del uevo servidor de integración contínua de FreedomBox $ gpg --keyserver keyserver.ubuntu.com --recv-keys D4B069124FCF43AA1FCD7FBC2ACFC1E15AF82D8C
- A continuación, verifica la huella de las claves públicas:
$ gpg --fingerprint BCBEBD57A11F70B23782BC5736C361440C9BC971 pub 4096R/0C9BC971 2011-11-12 Key fingerprint = BCBE BD57 A11F 70B2 3782 BC57 36C3 6144 0C9B C971 uid Sunil Mohan Adapa <sunil@medhas.org> sub 4096R/4C1D4B57 2011-11-12 $ gpg --fingerprint 7D6ADB750F91085589484BE677C0C75E7B650808 pub 4096R/7B650808 2015-06-07 [expires: 2020-06-05] Key fingerprint = 7D6A DB75 0F91 0855 8948 4BE6 77C0 C75E 7B65 0808 uid James Valleroy <jvalleroy@mailbox.org> uid James Valleroy <jvalleroy@freedombox.org> sub 4096R/25D22BF4 2015-06-07 [expires: 2020-06-05] sub 4096R/DDA11207 2015-07-03 [expires: 2020-07-01] sub 2048R/2A624357 2015-12-22 $ gpg --fingerprint 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8 pub rsa4096 2018-06-06 [SC] 013D 86D8 BA32 EAB4 A669 1BF8 5D41 53D6 FE18 8FC8 uid [ unknown] FreedomBox CI (Continuous Integration server) <admin@freedombox.org> sub rsa4096 2018-06-06 [E] $ gpg --fingerprint D4B069124FCF43AA1FCD7FBC2ACFC1E15AF82D8C pub rsa4096 2022-03-09 [SC] D4B0 6912 4FCF 43AA 1FCD 7FBC 2ACF C1E1 5AF8 2D8C uid [ unknown] FreedomBox CI (Continuous Integration server) <admin@freedombox.org> sub rsa4096 2022-03-09 [E]
Finalmente, verifica tu imágen descargada con su archivo de firma .sig. Por ejemplo:
$ $ gpg --verify freedombox-bookworm_all-amd64.img.xz.sig gpg: assuming signed data in 'freedombox-bookworm_all-amd64.img.xz' gpg: Signature made Wed 14 Jun 2023 03:22:04 PM PDT gpg: using RSA key D4B069124FCF43AA1FCD7FBC2ACFC1E15AF82D8C gpg: Good signature from "FreedomBox CI (Continuous Integration server) <admin@freedombox.org>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: D4B0 6912 4FCF 43AA 1FCD 7FBC 2ACF C1E1 5AF8 2D8C
2.4. Instalación
Tras la descarga puedes emplear la imágen para arrancar tu hardware (incluyendo máquinas virtuales). Necesitarás copiar la imágen a la tarjeta de memoria o pincho USB así:
- Averigua en qué dispositivo está tu tarjeta.
- Desconecta tu tarjeta (Sácala de la ranura).
Ejecuta dmesg -w mara mostrar y seguir los mensajes del núcleo (kernel).
- Conecta tu tarjeta (insértala en su ranura). Verás mensajes como estos:
[33299.023096] usb 4-6: new high-speed USB device number 12 using ehci-pci [33299.157160] usb 4-6: New USB device found, idVendor=058f, idProduct=6361 [33299.157162] usb 4-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [33299.157164] usb 4-6: Product: Mass Storage Device [33299.157165] usb 4-6: Manufacturer: Generic [33299.157167] usb 4-6: SerialNumber: XXXXXXXXXXXX [33299.157452] usb-storage 4-6:1.0: USB Mass Storage device detected [33299.157683] scsi host13: usb-storage 4-6:1.0 [33300.155626] scsi 13:0:0:0: Direct-Access Generic- Compact Flash 1.01 PQ: 0 ANSI: 0 [33300.156223] scsi 13:0:0:1: Direct-Access Multiple Flash Reader 1.05 PQ: 0 ANSI: 0 [33300.157059] sd 13:0:0:0: Attached scsi generic sg4 type 0 [33300.157462] sd 13:0:0:1: Attached scsi generic sg5 type 0 [33300.462115] sd 13:0:0:1: [sdg] 30367744 512-byte logical blocks: (15.5 GB/14.4 GiB) [33300.464144] sd 13:0:0:1: [sdg] Write Protect is off [33300.464159] sd 13:0:0:1: [sdg] Mode Sense: 03 00 00 00 [33300.465896] sd 13:0:0:1: [sdg] No Caching mode page found [33300.465912] sd 13:0:0:1: [sdg] Assuming drive cache: write through [33300.470489] sd 13:0:0:0: [sdf] Attached SCSI removable disk [33300.479493] sdg: sdg1 [33300.483566] sd 13:0:0:1: [sdg] Attached SCSI removable disk
En este caso, el disco insertado recientemente está disponible en /dev/sdg. Toma nota con mucho cuidado para emplearla en el paso de copia más adelante.
- Descomprime la descarga usando tar:
$ xz -d freedombox-stable-free_buster_cubietruck-armhf.img.xz
El comando de arriba es un ejemplo para la imagen estable para cubietruck. El nombre de archivo de tu descarga será diferente.
Copia la imágen a tu tarjeta. Asegúrate de que NO escribes sobre el almacenamiento principal de tu ordenador (como /dev/sda). Asegúrate
también de que NO ejecutas este paso como root para evitar sobreescribir datos en tu disco duro por una identificación errónea del dispositivo o fallos al teclear el comando. No habitual es que los usuarios normales tuvieran acceso de escritura sobre los discos USB y tarjetas SD pinchados en el sistema. Si no tienes permiso para escribir en tu tarjeta SD como usuario normal quizá necesites ejecutar éste comando como root. En tal caso comprueba y recomprueba todo antes de ejecutar el comando. Otra precaución de seguridad es desconectar todos los demás discos externos excepto la tarjeta SD antes de ejecutar el comando.
Por ejemplo, si tu tarjeta SD es /dev/sdg, como en el paso anterior, para copiar la imágen, ejecuta:
$ dd bs=1M if=freedombox-stable-free_buster_cubietruck-armhf.img of=/dev/sdg conv=fdatasync status=progress
Un comando alternativo para copiar a la tarjeta SD:
$ cat freedombox-unstable-free_2015-12-13_cubietruck-armhf.img > /dev/sdg ; sync
En MS Windows necesitarás una herramienta como etcher. En MacOS (OSX) puedes usar programas como balenaetcher y rosaimagewriter.
El comando anterior es un ejemplo para la imagen estable para cubietruck. El nombre del archivo de tu imágen será diferente.
Al identificar el dispositivo, usa el destino con letra de unidad como /dev/sdg, NO un destino numerado como /dev/sdg1. El dispositivo sin número refiere al dispositivo completo, mientras que el numerado refiere a una partición concreta. Queremos usar todo el dispositivo. Las imágenes descargadas contienen información completa acerca de cuantas particiones debería haber, sus tamaños y tipos. No necesitas formatear tu tarjeta SD ni crear particiones. Todo el contenido previo de la tarjeta será eliminado durante el proceso de escritura.
- Usa la imágen insertando la tarjeta SD o disco USB en el dispositivo de destino y arrancándolo. Tu dispositivo también debe estár preparado
(ver la sección Hardware).
Lee (el resto de) el Manual para obtener instrucciones acerca de como usar las aplicaciones de FreedomBox.
3. Obtener el Código Fuente
FreedomBox es 100% software libre y puedes obtener el código fuente para estudiarlo, modificarlo y distribuir mejoras.
3.1. Desde (dentro de) FreedomBox
FreedomBox se compone de diferentes programas de software y puedes obtener el código fuente de cualquiera de ellos. Estas instrucciones son similares a obtener y construír código fuente de Debian ya que FreedomBox es una variante pura de Debian. Usando este procedimiento puedes obtener el código fuente de la misma versión del paquete que estás usando actualmene en FreedomBox.
Para ver la lista de paquetes software instalados en tu FreedomBox, ejecuta lo siguiente en un terminal:
dpkg -l
- Para obtener el código fuente de cualquiera de esos programas ejecuta:
apt source <nombre_del_paquete>
Esto requiere que el archivo /etc/apt/sources/list contenga información acerca de los repositorios de código fuente. Esto es así por defecto en todas las imágenes FreedomBox. Pero si has instalado FreedomBox desde Debian necesitas asegurarte de que los repositorios de código fuente figuren en este archivo.
- Para construir el paquete desde su código fuente, primero instala sus dependencias
apt build-dep <nombre_del_paquete>
Cambia al directorio fuente creado con el comando apt source:
cd <directorio_fuente>
Y construye el paquetedpkg-buildpackage -rfakeroot -uc
- Instala el paquete:
dpkg -i ../<paquete_construído>.deb
3.2. Otras Maneras de Obtener el Código Fuente
El código fuente de cualquier paquete se puede ver y buscar usando el interfaz web de sources.debian.org. Por ejemplo, mira el paquete plinth.
El código fuente y el binario precompilado de cualquier version de un paquete, incluyendo versiones antigüas, se pueden obtener de snapshot.debian.org. Por ejemplo, mira el paquete plinth.
También puedes obtener los enlaces a la web del proyecto original, al control de versiones del proyecto original, al control de versiones de Debian, registro de cambios, etc. desde la página de control Debian para el proyecto en tracker.debian.org. Por ejemplo, mira la página de control para el paquete plinth.
- Puedes compilar e instalar un paquete desde el control de versiones de Debian. Por ejemplo,
git clone https://salsa.debian.org/freedombox-team/freedombox.git cd freedombox apt build-dep . dpkg-buildpackage -rfakeroot -uc dpkg -i ../freedombox*.deb
3.3. Construyendo Imágenes de disco
También puedes construír imágenes de disco FreedomBox para varias platformas de hardware usando la herramienta freedom-maker. Esta también está disponible como paquete Debian y su código fuente se puede obtener empleando los métodos anteriores. Hay disponibles Instrucciones de Construcción para generar imágenes de disco incluídas en el código fuente del paquete freedom-maker.
Las imágenes de disco de FreedomBox se construyen y suben a los servidores oficiales empleando la infraestructura de integración contínua automatizada. Esta infraestructura está disponible también como código fuente y proporciona información precisa acerca de como se contruyen las imágenes de FreedomBox.
3.3.1. Imágenes U-boot sobre Pioneer Edition
Hay una excepción menor en el paquete u-boot que viene con el hardware que se vende como Kits de Servidor Doméstico FreedomBox Pioneer Edition. Contiene un parche pequeño pero importante que no está en el código fuente de Debian. Tanto el repositorio fuente de Debian u-boot como el parche de FreedomBox están disponibles como un repositorio aparte. Esperamos que en algún momento este parche esté integrado en u-boot de serie y este repositorio ya no sea necesario. Este paquete se puede compilar en una máquina Debian armhf como sigue (también se puede hacer compilación cruzada, simplemente sigue las instrucciones para compilación cruzada de paquetes Debian):
apt install git git-buildpackage git clone https://salsa.debian.org/freedombox-team/u-boot.git cd u-boot pbuilder create --distribution=buster gbp buildpackage --git-pbuilder
El paquete u-boot Debian estará en u-boot-sunxi*.deb. Este paquete contendrá
mkdir temp dpkg -x u-boot-suxi*.deb temp unxz <lime2_image_built_with_freedom_maker> dd if=temp/usr/lib/u-boot/A20-OLinuXino-Lime2/u-boot-sunxi-with-spl.bin of=<lime2.img> seek=8 bs=1k conv=notrunc
La imagen resultante tendrá el u-boot modificado.
Apps
1. Bepasty (Compartición de apuntes y archivos)
|
Disponible desde: versión 20.14
1.1. ¿Qué es bepasty?
bepasty es una aplicación web que permite cargar y compartir archivos grandes. También se pueden cargar y compartir recortes de texto y código. Los textos, imágenes, audio, video y documentos PDF se pueden previsualizar en el navegador. Se puede asignar una caducidad a los archivos.
1.2. Captura de pantalla
1.3. Contraseñas y permisos
bepasty solo usa contraseñas (sin usuarios) para controlar el acceso. El usuario tendrá permisos diferentes dependiendo de la contraseña empleada para ingresar a bepasty. Podría tener cualquier combinación de los siguentes permisos:
read: Leer un archivo, si conoce la URL.
list: Listar todos los archivos.
create: Pegar o cargar un archivo nuevo.
delete: Eliminar un archivo.
admin: Bloquear y desbloquear archivos.
Tras instalar bepasty viene pre-configurado con los siguientes roles:
- Viewer: puede ver y listar archivos.
- Editor: puede ver, listar, crear y eliminar archivos.
- Administrator: tiene todos los permisos
Estos roles dan soporte a un caso de uso de compartición de archivos entre usuarios authorizados y conocidos. Si lo necesitas puedes reconfigurar bepasty para otros roles y casos de uso.
1.4. Distribuir contraseñas
Por omisión, la configuración de Acceso Público está puesta a None, de modo que se requiere contraseña para cada uso de bepasty. Esto implica que necesitarás distribuir las contraseñas a los usuarios mediante cualquier canal de comunicación del que dispongas.
Observa que quizá quieras crear múltiples contraseñas con los mismos permisos de modo que puedas distribuir una contraseña única a cada usuario (o grupo de usuarios) y si necesitas revocar acceso a un usuario puedas símplemente borrar su contraseña sin afectar a los demás usuarios.
1.5. Usar bepasty
Tras ingresar a bepasty, si tienes el permiso Create verás una caja grande de texto en la que podrás pegar cualquier texto. Opcionalmente puedes proporcionar un nombre de fichero o tipo de contenido (Content-Type) para los datos. Tras pulsar Submit se crea el fichero.
Puedes también arrastrar archivos al area de abajo. Se cargan inmediatamente al soltarlos en este área. También puedes crear una lista para controlar la colección de archivos cargados.
En ambos casos puedes establecer una caducidad y cuando expire se eliminará el archivo.
Si tienes el permiso List verás un enlace List all Items en la zona superior de la página. Esto mostrará todos los archivos creados o cargados.
Si tienes el permiso Delete o Admin verás acciones junto a cada archivo en la página de la lista.
Si sólo tienes el permiso Read para leer los archivos necesitarás tento una contraseña como una o más URLs de archivos existentes.
1.6. Administrando contraseñas
La página de configuración de bepasty en el interfaz de FreedomBox te permite crear contraseñas nuevas, o eliminar alguna. Al crear una contraseña puedes elegir cualquier combinación de permisos descritos anteriormente. Observa que un administrador típico debiera tener todos los permisos (no solo "Admin").
También puedes establecer un comentario. Se recomienda. Y deberías usarlo para ayudarte a recordar el propósito de la contraseña o quién la va a usar.
Puedes configurar también el Acceso Público, que establece los permisos disponibles por omisión incluso sin ingresar con contraseña. Puedes establecer esto para permitir leer archivos por su URL, o leer y listar todos los archivos.
1.7. Enlaces externos
Proyecto original: https://github.com/bepasty
Documentación de uso: https://bepasty-server.readthedocs.io/en/latest/user.html
2. Calibre (biblioteca de libros electrónicos)
|
Disponible desde: versión 20.15
Calibre es una solución para administrar libros electrónicos. Puedes organizar tus libros en "bibliotecas". Calibre puede cambiar a la mayoría de formatos habituales de libro electrónico. También administra metadatos como portadas, descripciones, autores, editoriales, etc.
Trasladar tu biblioteca desde el escritorio a FreedomBox te permite acceder a tus libros desde cualquier dispositivo de la red local o desde Internet.
Sólo los usuarios del grupo calibre tienen acceso a las bibliotecas. Puedes asignar usuarios a este grupo mediante la aplicación del sistema Usuarios y grupos.
Quizá ya estés familiarizado con el lector de libros para escritorio que viene con Calibre. El servidor Calibre que se instala en tu FreedomBox viene con un lector web con aspecto similar, lo que te permite leer tus libros desde cualquier dispositivo con navegador web.
2.1. Administrar Bibliotecas
Tras la instalación, estará disponible una biblioteca inicial "Library". El administrador de FreedomBox puede añadir o eliminar cualquier biblioteca incluyendo la inicial desde los ajustes de la app en el interfaz web de FreedomBox.
2.2. Acceso
Tras la instalación se puede acceder a Calibre mediante el cliente web en https://<mi_freedombox>/calibre.
2.3. Enlaces externos
Sitio web: https://calibre-ebook.com
Manual de usuario: https://calibre-ebook.com/help
3. Coturn (Asistente para VoIP)
|
Disponible desde: versión 20.8
Coturn es un servidor para facilitar llamadas y conferencias de audio/video proporcionando una implementación de los protocolos TURN y STUN. Los servidores de comunicación por WebRTC, SIP y otros pueden usarlo para establecer una llamada entre partes que de otro modo no podrían conectarse entre si.
No está pensado para que lo usen diréctamente los usuarios. Los servidores como Matrix Synapse necesitan configurarse con los datos proporcionados en la página de app de Coturn. Además de Matrix Synapse, Jitsi, Ejabberd, Nextcloud Talk, etc. pueden usar el servidor Coturn para llamadas y conferencias de audio/video. No hace falta que los servidores se ejecuten en la misma máquina que FreedomBox. Los servidores externos pueden usar un Coturn ejecutado en FreedomBox.
Coturn está configurada en FreedomBox como app avanzada. Esto implica que para ver el icono de Coturn en la sección "Apps" necesitas marcar en "Mostrar apps y funcionalidades avanzadas" en "Configuración General".
3.1. Cómo funciona
Al hacer una llamada de audio/video lo mejor es enrutar los flujos multimedia directamente entre los pares porque minimiza la latencia (mejor calidad de señal) y evita depender de un servidor centralizado (privacidad). Esto escala bien porque un servidor de chat simple puede albergar miles de llamadas sin involucrarse de ningún otro modo que para establecer la llamada. Sin embargo este enfoque no suele funcionar la mayoría de las veces por cómo se configuran las redes. La mayoría de los pares de la red carecen de una dirección IP propia reservada para ellos y suelen operar detrás de un dispositivo de red que les traduce las direcciones de red (NAT: "Network Address Translation"). Esto significa que en realidad estos pares no tienen modo de alcanzarse entre sí directamente.
Para abordar este problema se introdujo una técnica simple conocida como STUN. Con ayuda de un servidor STUN los pares pueden prescindir de los dispositivos NAT para transmitir entre ellos. Desafortunadamente este truco solo funciona un 80% de las ocasiones. Así que si STUN falla, los pares no tienen más opción que enrutar su comunicación a través de un intermediario llamado servidor TURN. Todo el mecanismo de intentar primero con STUN y recaer en TURN se describe en un protocolo llamado ICE.
En FreedomBox, Coturn proporciona servidores STUN y TURN. Ambos servicios se proporcionan tanto sobre TCP como sobre UDP y tanto en canales cifrados (que tienen mayor probabilidad de éxito) como sin cifrar. Como los servidores STUN son baratos y no consumen muchos recursos no se necesita autenticación para usarlos. Por otra parte los servidores TURN sí la necesitan. Esta autenticación está altamente simplificada y no requiere mantener una base de datos de usuarios. Un servidor como matrix-synapse que vaya a establecer una llamada de audio/video entre dos pares generará un nombre de usuario y contraseña empleando un secreto compartido. Cuando los pares usen el servidor TURN se les validará usando estas credenciales porque el servidor TURN conoce este secreto.
En resumen, un servidor de comunicaciones necesita saber las URLs de los servidores STUN/TURN junto con el secreto de autenticación para TURN. Después, durante el establecimiento de la llamada de audio/video guiarán a los pares a usar los servidores STUN/TURN. La app Coturn de FreedomBox proporciona exactamente ésta información, que se puede usar para configurar un servidor de comunicaciones independientemente de que se ejecute en la misma máquina que FreedomBox o en otro servidor.
3.2. Configurar Matrix Synapse
Para configurar Matrix Synapse para que use el servidor de TURN/STUN Coturn tienes que marcar "Gestionar automáticamente el establecimiento de llamadas de audio/video" en la sección de configuración de Matrix Synapse y a continuación clicar en "Actualizar configuración".
3.3. Redirección de Puertos
Si tu FreedomBox está detrás de un router, necesitarás configurar la redirección de los siguientes puertos para Coturn:
- UDP 3478
- TCP 3478
- UDP 3479
- TCP 3479
- UDP 5349
- TCP 5349
- UDP 5350
- TCP 5350
- UDP 49152-50175
- TCP 49152-50175
3.4. Enlaces externos
Proyecto original: https://github.com/coturn/coturn
Wiki de Coturn (quizá esté anticuado): https://github.com/coturn/coturn/wiki/
4. Deluge (Compartición distribuída de archivos mediante BitTorrent)
|
Disponible desde: versión 0.5
4.1. ¿Qué es Deluge?
Deluge es un nodo (servidor y cliente, ambos a la vez) BitTorrent.
BitTorrent es un protocolo de comunicaciones para compartir ficheros entre pares (P2P = peer-to-peer).
No es anónimo; debes asumir que otros puedan ver qué ficheros estás compartiendo.
- Este protocolo destaca compartiendo ficheros grandes y populares.
Hay 2 nodos web para BitTorrent disponibles en FreedomBox: Transmission y Deluge. Tienen funcionalidades similares pero quizá prefieras uno sobre otro.
Deluge es un cliente BitTorrent altamente configurable. Se puede añadir funcionalidad adicional instalando extensiones (plugins).
4.2. Captura de pantalla
4.3. Configuración Inicial
Tras instalar Deluge se puede acceder apuntando tu navegador a https://<tu freedombox>/deluge. Necesitarás introducir una contraseña para ingresar:
La contraseña inicial es deluge. La primera vez que ingreses Deluge te preguntará si quieres cambiarla. Debes cambiarla por algo más dificil de adivinar.
A continuación se te mostrará el administrador de conexiones. Haz clic sobre la primera entrada (Offline - 127.0.0.1:58846). Luego pulsa "Arrancar el Demonio" para que arranque el servicio Deluge service que se ejecutará en segundo plano.
Ahora debería poner "Online". Haz clic en "Conectar" para completar la configuración.
En este punto ya estás usando Deluge. Puedes hacer más cambios en las Preferencias o añadir un fichero o una URL de torrent.
4.4. Enlaces externos
- Proyectos originales:
Deluge: https://www.deluge-torrent.org
BitTorrent: https://www.bittorrent.org
Documentación de uso: https://dev.deluge-torrent.org/wiki/UserGuide
- Descripciones del protocolo:
Del proyecto original: https://www.bittorrent.org/introduction.html
De Wikipedia: https://es.wikipedia.org/wiki/BitTorrent
5. Ejabberd (Servidor de Mensajería Instantánea)
|
Disponble desde: versión 0.3
5.1. ¿Qué es ejabberd?
Ejabberd es un servidor de conversaciones (chat) que usa el protocolo Extensible Messaging and Presence Protocol (XMPP).
5.2. ¿Qué es XMPP?
XMPP es un protocolo cliente-servidor federado para Mensajería Instantánea. Esto significa que los usuarios que tengan cuenta en un servidor XMPP pueden conversar con los usuarios que estén en el mismo u otros servidores XMPP.
XMPP se puede usar también para llamadas de voz y vídeo si los clientes las soportan.
Actualmente FreedomBox ofrece ambas partes desde su interfaz web: un servidor (ejabberd) y un cliente web (JSXC).
5.3. Privacidad
Con XMPP las conversaciones se pueden securizar de 2 maneras:
- TLS: Esto securiza la conexión entre el cliente y el servidor o entre 2 servidores. Esto está altamente recomendado y ya debería estar soportado por todos los clientes.
Punto a punto: Esto securiza los mensajes enviados entre los clientes de modo que ni siquiera el servidor pueda ver los contenidos. El último protocolo y también el más cómodo se llama OMEMO. Algunos clientes que no soportan OMEMO podrían soportar otro protocolo llamado OTR. Para que funcione ambos clientes tienen que ser compatibles con el mismo protocolo.
5.4. Establer un Nombre de Dominio
Para que funcione XMPP tu FreedomBox necesita tener Nombre de Dominio accesible desde la red.
Si sólo necesitas que los usuarios de tu red local (LAN) conversen entre sí, puedes inventarte un nombre de dominio. Pero si quieres que participen usuarios de internet en tus salas necesitas un nombre de dominio público. Puedes leer acerca de la obtención de un Nombre de Dominio en la sección DNS Dinámico de este manual.
Una vez tengas ya tu Nombre de Dominio puedes decirle a tu FreedomBox que lo use dándolo de alta en la configuración del sistema.
Nota: Tras cambiar tu Nombre de Dominio la página del servidor (XMPP) de mensajería instantánea podría mostrar que el servicio no está funcionando. En un minuto más o menos se actualizará y lo volverá a mostrar operativo.
Ten en cuenta que de momento PageKite no soporta el protocolo XMPP.
5.5. Habilitar a usuarios para usar XMPP
Actualmente todos los usuarios creados con FreedomBox podrán ingresar al servidor XMPP. Puedes añadir usuarios nuevos con el módulo Usuarios y Grupos del Sistema. Los grupos seleccionados para el usuario nuevo no importan.
5.6. Enrutado de Puertos
Si tu FreedomBox está detrás de un router tendrás que configurar en él la redirección de puertos. Redirije los siguientes puertos de XMPP:
- TCP 5222 (cliente-a-servidor)
- TCP 5269 (servidor-a-servidor)
5.7. Clientes compatibles
FreedomBox proporciona un cliente web: JSXC.
Hay clientes XMPP disponibles para varias plataformas de escritorio y móviles. FreedomBox enlaza a las fuentes de descarga de algunos. Eres libre de incluir más aquí (requiere registro libre). Nosotros lo notaremos y quizá lo listemos en FreedomBox.
5.7.1. Cliente Web de FreedomBox
Para máxima facilidad FreedomBox proporciona un cliente web: JSXC. Tus usuarios no necesitan instalarse software adicional por su parte. Podrán simplemente usar el navegador. Esta es la opción habitual para usuarios nuevos y eventuales.
5.7.2. Clientes para móvil
Puedes descargar uno de los cliente XMPP para tu smartphone o tableta listados a continuación.
5.7.2.1. Conversations (Android)
Conversations es un cliente XMPP para Android con soporte de llamadas de audio y/o video disponible en F-Droid o en la Play Store. Las llamadas de audio y video funcionan entre Conversations y Monal sobre iOS. Además de para mensajería de texto puedes usar Conversations para enviar imágenes y/o ficheros y tener conversaciones grupales.
|
De izquierda a derecha: (1) Primera pantalla - (2) Pantalla de acceso - (3) Añadir contactos.
All abrir Conversations por primera vez se te preguntará si quieres crear una cuenta nueva o si quieres usar una que tengas. Selecciona "Ya tengo una cuenta" (1).
Con ejabberd instalado FreedomBox proporciona una cuenta XMPP a cada usuario. Se pueden crear usuarios (no-administradores) FreedomBox en Sistema -> Usuarios y Grupos.
Una vez ingresado en tu cuenta !Freedombox/XMPP la app Conversations proporciona un botón + que ofrece varias opciones para contactar a otra gente (3).
5.7.2.2. Monal (iOS)
Monal es un cliente XMPP libre con soporte a videollamadas disponible en App Store. Las llamadas de audio y video funcionan entre Conversations sobre Android y Monal. Además de para mensajería de texto puedes usar Monal para enviar imágenes y/o ficheros y tener conversaciones grupales.
5.7.2.3. Siskin (iOS)
Siskin es un cliente XMPP libre con soporte a videollamadas disponible en App Store.
5.7.3. Clientes de escritorio
5.7.3.1. Gajim (Windows, MacOS, Linux)
Gajim es un cliente libre de XMPP en el escritorio para Windows, MacOS y Linux. Esta aplicación está disponible en Debian, y para otros sistemas operativos puedes descargarla desde esta página y encontrar instrucciones para instalarla.
|
De izquierda a derecha: (1) Primera pantalla - (2) Pantalla de acceso - (3) Pantalla principal.
Al arrancar Gajim por primera vez aparece un diálogo (1) pidiendo ingresar a tu cuenta XMPP (FreedomBox) o registrar una nueva. Al elegir ingresar, tras hacer clic en "Siguiente" se te pide tu Jabber ID y contraseña (2): aquí tienes que introducir tu cuenta en FreedomBox y su contraseña.
Finallmente, tras ingresar con éxito verás la pantalla principal de Gajim (3). Desde aquí puedes añadir contactos (Cuenta > Añadir contacto...) e iniciar conversaciones (Gajim > Empezar conversación).
5.7.3.2. Dino (Linux)
Dino es un cliente libre para XMPP en el escritorio. Está disponible en https://github.com/dino/dino/wiki/Distribution-Packages.
|
De izquierda a derecha: (1) Primera pantalla - (2) Pantalla de acceso - (3) Comenzar una conversación
Tras la instalación, al abrir Dino por primera vez haz clic en el botón Configurar cuenta. Se te pedirá tu JID: es tu usuario en FreedomBox. Introdúcelo y haz clic en Seguir (2). O puedes hacer clic en Crear cuenta si no tienes usuario en FreedomBox.
Una vez ingreses podrás comenzar una conversación con algún contacto XMPP o unirte a un canal (3).
5.7.3.3. Movim (Linux)
Movim es un cliente XMPP libre para Linux con soporte a videollamadas. El proyecto proporciona un paquete Debian extraoficial.
5.7.3.4. Monal (MacOS)
Monal es un cliente XMPP libre con soporte a llamadas de audio y/o video disponible en Mac App Store.
5.8. Enlaces externos
5.8.1. Ejabberd
Sitio web: https://www.ejabberd.im
Documentación de uso: https://docs.ejabberd.im
5.8.2. Aplicaciones cliente
FreedomBox recomienda algunas aplicaciones cliente. Selecciona su icono en la página de Aplicaciones y haz clic en el botón> Aplicaciones Cliente.
5.8.3. Protocolo XMPP
Sitio web: https://xmpp.org
Resumen en Wikipedia: https://en.wikipedia.org/wiki/XMPP
6. Postfix/Dovecot/Rspamd (Servidor de correo electrónico)
Disponible desde: 22.6
6.1. Acerca del servidor de correo electrónico
FreedomBox proporciona una solución completa para servir correo electrónico empleando Postfix, Dovecot, y Rspamd. Postfix envía y recibe correo. Dovecot permite a los clientes de correo acceder a tu buzón empleando los protocolos IMAP y POP3. Rspamd trata el correo indeseado. Esta solución ofrece las siguientes funcionalidades:
- Enviar y recibir correo electrónico
- Interoperar con otros servidores de correo electrónico
- Evitar mediante SPF que otros suplanten tu dirección de correo
- Firmar todo to correo saliente mediante DKIM
- Recibir informes de intentos de suplantación mediante DMARC
- Acceder al correo fácilmente
Acceder al correo desde cualquier dispositivo mediante el lector de correo web Roundcube
- Configurar clientes de correo sólo con introducir una dirección de correo electrónico y una contraseña
Autoconfiguración con clientes que usen el esquema autoconf, como Thunderbird
Autoconfiguración con clientes que usen el esquema DNS
- Guardar los mensajes en el servidor y acceder a ellos con múltiples clientes mediante IMAP
- Descargar los mensajes a un dispositivo local mediante POP3
- Direcciones de correo electrónico para todos tus usuarios
Cada usuario registrado en tu FreedomBox automaticamente obtiene una dirección de correo del tipo usuario@mi.dominio
Cada usuario registrado obtiene psedónimos ilimitados automaticamente. usuario+proposito@mi.dominio apunta a usuario@mi.dominio
Los usuarios pueden añadir pseudónimos por sí mismos. fulano@mi.dominio puede apuntar a usuario@mi.dominio
Muchos pseudónimos habituales como info@mi.dominio y postmaster@mi.dominio apuntan a la dirección de correo del administrador.
- Filtrar mensajes en el servidor empleando filtros sieve
- Configurar contestadores automáticos (por ejemplo, para vacaciones) que funcionan aunque no estés usando tu cliente de correo
- Reenviar a direcciones externas/internas, guardar ficheros en carpetas, eliminar, etc.
- Administrar filtros en el servidor desde clientes de correo (por ejemplo, Thunderbird con la extensión sieve)
- Configuración automatica de certificados TLS obtenidos de Let's Encrypt
Todos los servicios (SMTP, IMAP, POP3 y manageseive) vienen configurados para usar TLS/STARTTLS
- Los certificados se renuevan aproximadamente cada trimestre
- Con cada renovación, se instalan los certificados y se reinician los servicios
- Copias de respaldo y restauración de correos, pseudónimos y configuración
- Agendar respaldos periódicos
- Escanear correo entrante buscando correo indeseado
- Comprueba el mensaje contra varias listas negras
- Mueve el correo indeseado a la carpeta de basura (Junk)
- Marca el mensaje cuando la puntuación de indeseado alcanza un umbral
- Rechaza el mensaje a la recepción cuando la puntuación de indeseado alcanza un umbral más alto
- Entiende decisiones respecto al correo indeseado mediante cabeceras extendidas añadidas al mensaje
- Ver detalles del procesamiento de correo indeseado y administrar ajustes mediante la interfaz web de Rspamd
Los administradores pueden ingresar a la interfaz web para correo indeseado mediante el ingreso único de FreedomBox
- Enseñar a distinguir correo indeseado mediante mensajes de ejemplo
6.2. Prerequisitos
Deber poseer un dominio donde configurar registros DNS avanzados (MX, TXT y SRV). Se puede obtener un dominio alquilándolo a un registro o pagando a un proveedor de servicio de DNS dinámico (como freedns.afraid.org). De momento los subdominios gratuitos que proporciona el servicio de DNS dinámico de la FreedomBox Foundation en ddns.freedombox.org no sirven. Hay planes a futuro para soportarlos.
- Tu ISP o proveedor de nube debe permitir el tráfico de tu conexión a internet hacia servidores de correo externos. No pocos bloquean el tráfico saliente por el puerto 25. Esto impedirá al servidor enviar correos a direcciones externas. Muchos de estos proveedores te permiten solicitar que se desactive esta restricción. Para probar si esto es un problema en tu conexión a internet ejecuta la siguiente orden (deberías ver algo así):
usuario@miservidor:~$ nc freedombox.org 25 220 mx.sflc.info ESMTP Postfix (Debian/GNU) ^C
6.3. Instalar
Ve al menú Apps.
Si ya está instalado, se mostrará el Servidor de Correo encima de la línea Deshabilitadas. Probablemente no sea tu caso, pero si lo es salta este paso y vé al siguiente.
Si el Servidor de Correo se muestra entre los iconos debajo de la línea Deshabilitadas es que no está instalado todavía o está deshabilitado. Este es el estado habitual de partida.
Seleccionando la app Postfix/Dovecot llegas a su página. Si no está instalado se te mostrará el botón Instalar. Haz clic en él.
Esto desencadenará el proceso de instalación.
Tras instalar y configurar todos los paquetes de software FreedomBox te dirá que la instalación tuvo éxito y la página de la app mostrará contenido adicional como información de puertos, formulario de configuración y ajustes de DNS.
La próxima vez que vayas al menú Apps mostrará la app habilitada (por encima de la línea deshabilitadas).
6.4. Configurar el servidor de correo
Si quieres enviar y recibir correo a/de usuarios de otros servidores en Internet necesitas un dominio en condiciones. Como se explica en la sección Prerequisitos, o alquilas uno a un registro o pagas a un proveedor de servicio de DNS dinámico. Si alquilaste un dominio a un registro añádelo en la página Sistema → Configuración. Si es un DNS dinámico configuralo en la página Sistema → Cliente DNS dinámico.
Cuando se añade un dominio a FreedomBox se obtiene automáticamente un certificado TLS para dicho dominio. Este certificado se emplea entonces para comunicaciones cifradas con todos los servicios configurados con el dominio. Vé a la sección Sistema, página de Let's Encrypt y verifica que el certificado se haya obtenido con éxito para el dominio. Si no, haz clic en el botón Obtener y resuelve los problemas que surjan. Para obtener el certificado tu FreedomBox tiene que ser accesible desde Internet y tu router, si lo hay, tiene que estar configurado para redirigirle el tráfico de los puertos web (80 y 443).
Tras añadir un dominio a FreedomBox, visita la página del Servidor de Correo. En la sección Configuración selecciona el dominio configurado como dominio primario para enviar y recibir correo electrónico.
- Tras establecer el dominio primario aparecerá información en la sección Registros DNS de la página. Estos son los registros que hay que ajustar manualmente en el dominio. Ingresa el interfaz web de tu proveedor de DNS para administrar los registros DNS de tu dominio. Introduce allí todas las entradas que muestra la tabla de registros DNS.
La longitud del valor del registro DNS para DKIM excede los 255 caracteres. Típicamente hay que romperlo en una serie de valores entrecomillados con comillas dobles y separados por espacios. Esto es lo que hace FreedomBox. Si tu proveedor de DNS tiene un modo diferente para introducir estos valores, consulta su documentación.
- Todos los valores se suponen "bajo" el dominio que estás ajustando pero se puede proporcionar un valor autocontenido. Por ejemplo, el valor "Dominio" de "dkim._domainkey" significa "dkim._domainkey.mi.dominio.". Usa este formato si fuera necesario.
Instala la app Roundcube si quieres acceder a los mensajes mediante una interfaz web. En la configuración de Roundcube asegurate de habilitar la opción de "Usar solo el servidor de correo local". Esto oculta el campo del servidor de la página de login y hace que la app funcione sin más configuración.
6.5. Usar el servidor de correo
Como usuario puedes:
- Empezar a enviar y recibir correos electrónicos empleando la mayoría de clientes de correo.
Crear y/o administrar tus pseudónimos en la solapa Pseudónimos de la página Servidor de correo del interfaz web de FreedomBox.
- Administrar filtros en el servidor empleando sieve.
Una vez que un administrador ha establecido la configuración de RoundCube para que funcione con el servidor de correo de FreedomBox puedes ingresar a RoundCube empezar a enviar y recibir correos electrónicos sin necesitar más clientes de correo. Usa las mismas credenciales para ingresar a RoundCube que usas para ingresar al interfaz web de FreedomBox.
6.5.1. Mediante el cliente web de correo de FreedomBox (RoundCube)
FreedomBox proporciona el cliente de correo electrónico RoundCube como app opcional. Si se ha instalado RoundCube antes que el servidor de correo hay una opción de hacerlo funcionar con el servidor de correo de FreedomBox's. Una vez ambas apps estén instaladas, tienes una instalación de webmail completa.
6.5.2. Mediante Thunderbird
Abre Thunderbird. Ve a menú de hamburguesa → Nuevo → Cuenta de correo existente. Introduce un nombre, la dirección de correo de FreedomBox, y tu contraseña de FreedomBox. Haz clic en Continuar.
FreedomBox implementa el endpoint de configuración automática de cuenta (AAC, Automatic Account Configuration) del que hará uso Thunderbird.
6.5.3. Configuración manual
Dile a tu cliente de correo electrónico que use estos parámetros:
Username: tu dirección de correo electrónico de FreedomBox o solo la parte del nombre de usuario
Incoming mail: IMAPS, puerto 993, SSL forzoso, autenticación normal mediante contraseña
Outgoing mail: SMTPS, puerto 465, SSL forzoso, autenticación normal mediante contraseña
También soporta STARTTLS en el puerto de envío SMTP.
6.5.4. Pseudónimos de correo electrónico
Los pseudónimos de correo electrónico son útiles para la privacidad. Ahora, como usuario del correo electrónico de FreedomBox (no necesitas ser administrador) puedes tener direcciones de correo electrónico bajo tu control, ya sean temporales de usar y tirar o específicas. Puedes listar, crear y eliminar pseudónimos de correo electrónico desde el acceso directo Mis pseudónimos que hay en la página principal de FreedomBox.
Los mensajes dirigidos a usuarios o pseudónimos inexistentes o a usuarios de sistema se rechazarán a nivel de conexión SMTP.
6.5.5. Pseudónimos de correo electrónico automáticos
Además de permitir a los usuarios crear sus propios pseudónimos FreedomBox reconoce pseudónimos automáticos adjuntando una cadena a tu nombre de usuario mediante un signo '+'. Si tu dirección de correo es minombre@mi.dominio, entonces todos los minombre+cualquiercosa@mi.dominio se toman como pseudónimos automáticos de tu dirección. Por ejemplo, al subscribirte a una lista de correo, llamémosla foolist, puedes dar tu dirección de correo como minombre+foolist@mi.dominio. Los mensajes que lleguen a esa dirección acabarán en el buzón de minombre@mi.dominio. Esto es útil para organizar el correo y controlar el correo indeseado.
6.6. Avanzado: Resolución de problemas
6.6.1. ¿Cómo depuro un fallo en un action script? ¿Cómo accedo al log del sistema?
Abre una conexión SSH a tu FreedomBox. Teclea sudo journalctl -b -o short-monotonic --no-pager
-b muestra entradas desde el arranque
-o short-monotonic usa formato corto para las marcas tiempo
--no-pager facilita el copia-pega
6.6.2. ¿Por qué dice el servidor "relay access denied"?
Porque Postfix no reconoce el dominio del correo. Para arreglarlo
Asegurate de que FreedomBox conoce el nombre del dominio en internet. Si no tienes un nombre de dominio salta al paso 2.
Ingresa al interfaz web de FreedomBox como administrador.
Ve a Sistema → Servicios de nombres
- Añade un nombre de dominio, si no lo has hecho ya.
6.6.3. No puedo enviar nada desde Roundcube. Dice "SMTP Error (250): Authentication failed".
Causa raíz: Roundcube intentó enviar tu mensaje desde una conexión sin cifrar, pero los puertos 465 y 587 requieren cifrados SSL y STARTTLS respectivamente.
Soluciones:
Para RoundCube, edita el fichero /etc/roundcube/config.inc.php para que use el puerto 25 (sin cifrar). Ajústalo así:
$config['smtp_server'] = 'smtp://localhost'; $config['smtp_port'] = 25;
Notas:
Accede a tu FreedomBox mediante SSH.
Puedes editar el fichero con el editor de texto nano. El fichero tiene el acceso restringido, así que tienes que acceder como superusuario: sudo nano /etc/roundcube/config.inc.php.
Si empleas otro cliente de correo electrónico como Thunderbird, fuerza que use SSL o STARTTLS.
6.7. Comentar tu experiencia
Por favor, comenta tu experiencia usando el servidor de correo en esta conversación del foro.
6.8. Información y debate técnicos
El servidor de correo de FreedomBox se presentó en la Debconf21. Las Diapositivas y la grabación en vídeo están disponibles por cortesía del equipo Outreach de Debian.
Este asunto en Salsa dirige la implementación. Siéntete libre de participar en los debates y proporcionar ideas técnicas.
6.9. Enlaces externos
- Sitios web de origen:
- Wiki de la comunidad Debian:
6.9.1. Aplicaciones cliente
FreedomBox recomienda algunas aplicaciones cliente. Selecciona su icono en la página de Aplicaciones y haz clic en el botón> Aplicaciones Cliente.
7. GitWeb (Alojamiento simple para Git)
|
Disponible desde versión: 19.19
GitWeb proporciona alojamiento Git en FreedomBox. Proporciona un interfaz web para realizar acciones comunes sobre repositorios Git como ver archivos, diferencias, descripciones de cambio, etc. Git es un sistema de control de versiones distribuído para trazar cambios en código fuente durante el desarrollo de software. Con GitWeb puedes hojear la historia y el contenido del código fuente, y usar la búsqueda para encontrar cambios y código específicos. También puedes clonar repositorios y subir cambios al código con un cliente Git de línea de órdenes o con múltiples clientes gráficos que hay disponibles. Y puedes compartir tu código con gente de todo el mundo.
Para aprender a usar Git visita su tutorial.
7.1. Administrar los repositorios
Tras instalar GitWeb se puede crear un nuevo repositorio. Se puede marcar como privado para limitar el acceso.
7.2. Acceso
Tras instalar GitWeb se puede acceder a GitWeb mediante el cliente web (p.ej) en https://<mi_freedombox>/gitweb.
7.3. Autenticación básica HTTP
Actualmente el GitWeb de FreedomBox solo soporta remotos HTTP(S) (no SSH). Para evitar tener que introducir la contraseña cada vez que haces pull/push al repositorio puedes editar tu remoto para incluír credenciales.
Ejemplo: https://usuario:contrasena@mi.freedombox.mola/gitweb/mirepo
Tu nombre de usuario y contraseña se cifrarán. Quien monitorize el tráfico de la red solo apreciará el nombre de dominio.
Nota: Al usar este método tu contraseña se almacenará en claro en el fichero .git/config del repositorio local. Por este motivo debes crear un usuario FreedomBox que solo tenga acceso a gitweb y no usar nunca una cuenta de administrador.
Para usuarios de GNOME (Avanzado) La utilidad "Contraseñas y claves" de GNOME se puede emplear para almacenar el usuario y su contraseña. Más detalles de cómo hacerlo en esta respuesta en StackOverflow.
7.4. Réplicas espejo
Aunque tus repositorios se albergan principalmente en tu propia FreedomBox puedes configurar un repositorio en otro servicio de alojamiento Git como GitLab a modo de copia espejo.
7.5. (Des)habilitar funciones
Algunas funciones que en gitweb vienen de serie se han cambiado en FreedomBox:
Habilitada: Funcionalidad blame para mostrar qué quién y en qué revisión modificó cada línea de un fichero.
Habilitada: Funcionalidad pickaxe para listar los commits que introdujeron o eliminaron una cadena de texto dada.
- Habilitada: Funcionalidad de resaltado de sintaxis para los blobs.
- Deshabilitada: Funcionalidad de instantánea que descarga un fichero comprimido tar con una revisión dada (por su alto consumo de recursos).
Un administrador puede ajustar estas selecciones editando el fichero de configuration de git de cada repositorio en FreedomBox. Más detalles de sintaxis y funciones en la página man de gitweb.conf(5). Por ejemplo, para rehabilitar las instantánes en el repositorio mirepo, ingresa como administrador al terminal de FreedomBox por SSH o consola web y edita el fichero /var/lib/git/mirepo/config para que contenga la sección siguiente:
[gitweb] snapshot = tgz
7.6. Enlaces externos
Sitio web: https://git-scm.com
Documentación de uso: https://git-scm.com/docs/gitweb
Wiki de Debian: https://wiki.debian.org/CategoryGit
8. Ikiwiki (Wiki y Blog)
|
8.1. ¿Qué es Ikiwiki?
Ikiwiki convierte páginas wiki a páginas HTML listas para publicar en un sitio web. En particular, proporciona blogs, podcasts, calendarios y una amplia selección de extensiones (plugins).
8.2. Crear un wiki o blog
Puedes crear un wiki o blog para albergarlo en tu FreedomBox mediante la página Wiki y Blog (Ikiwiki). La primera vez que visites esta página te pedirá instalar paquetes requiridos por Ikiwiki.
Tras completar la instalación de paquetes selecciona la solapa Crear.
Puedes elegir el tipo: Wiki o Blog. Teclea también un nombre para el wiki o blog, y el usuario y contraseña para su cuenta de administrador. Al hacer clic en Actualizar configuración verás el wiki/blog añadido a tu lista. Observa que cada wiki/blog tiene su propia cuenta de administrador.
8.3. Acceder a tu wiki o blog
Tus wikis y blogs se listan en la app de Ikiwiki. Hacer clic en tu sitio web te llevará a su página de inicio.
Desde aquí, si le das a Editar o a Preferencias se te llevará a una página de ingreso. Para ingresar con la cuenta de administrador que creaste antes selecciona la solapa Otros, introduce el usuario y la contraseña y haz clic en Ingresar.
8.4. Ingreso único de usuarios (SSO)
Se puede dar permiso para editar a otros usuarios de FreedomBox además de al administrador del wiki/blog. Sin embargo no tendrán todos los permisos del administrador. Podrán añadir o editar páginas pero no podrán cambiar la configuración del wiki.
Para añadir a un usuario al wiki ve a la página Usuarios y Grupos de FreedomBox (bajo Configuración del Sistema, el icono del engranaje de la esquina superior derecha de la página). Crea o modifica un usuario y añádele al grupo wiki. (Los usuarios del grupo admin tendrán también acceso al wiki.)
Para ingresar como usuario FreedomBox ve a la página de ingreso del wiki/blog y selecciona la solapa Otros. Luego haz clic en el botón Ingresar con autenticación HTTP. El navegador mostrá un diálogo emergente en el que podrás introducir el usuario y la contraseña del usuario de FreedomBox.
8.5. Añadir usuarios FreedomBox como admnistradores de wiki
- Ingresa al wiki con su cuenta de administrador.
Haz clic en Preferencias y luego en Configurar.
Debajo de Principal, en usuarios administradores de algún wiki, añade el nombre de un usuario de FreedomBox.
(Opcional) Desmarca la opción habilitar autenticación mediante contraseña de extensión de autenticación: autenticación mediante contraseña. (Nota: Esto deshabilitará el ingreso con la cuenta de administrador anterior. Solo se podrá ingresar mediante ingreso único usando autenticación HTTP.)
Haz clic en Grabar Configuración.
Pulsa Preferencias y a continuación Salir.
Ingresa como el nuevo usuario administrador usando Ingresar con autenticación HTTP.
8.6. Evitar Spam
Por defecto cada página del wiki tiene una página de "Discusión" que se puede editar anónimamente, sin ingresar. Para evitar spam quizá quieras deshabilitar totalmente la funcionalidad Discusión deseleccionando la opción "¿Habilitar páginas de discusión?" en la configuración.
8.7. Aparencia: Temas
- Ingresa al wiki con la cuenta de administración especificada al crearlo.
Pulsa en Preferencias, y luego en Configurar.
Debajo de web plugin: tema, selecciona ¿habilitar tema?.
- Justo debajo de la caja del selector, escribe el nombre del tema. Puedes elegir entre los siguientes temas soportados oficialmente:
- actiontabs - apropiado para móviles
- blueview - inapropiado para móviles
- goldtype - inapropiado para móviles
- monochrome - apropiado para móviles
Al final de la página haz clic Grabar Configuración.
Para visibilizar tus cambios quizá tengas que refrescar la caché de tu navegador o esperar unos minutos y refrescar tu página de ikiwiki.
También se pueden instalar temas contribuidos por usuarios desde el Mercado de temas de ikiwiki. Ten en cuenta que esto requiere conocimiento técnico adicional.
8.8. Enlaces externos
Sitio web: https://ikiwiki.info
Documentación de uso: https://ikiwiki.info
Foro de usuarios: https://ikiwiki.info/forum/
Mercado de temas: https://ikiwiki.info/theme_market/
9. Infinoted (Edición colaborativa de textos mediante Gobby)
|
Disponible desde: versión 0.5
Infinoted es un servidor de edición colaborativa de textos para Gobby.
Para usarlo descarga el cliente Gobby para escritorio e instalalo. Inicialo, selecciona "Conectar a un Servidor" e introduce el nombre de dominio de tu FreedomBox.
9.1. Redirección de Puertos
Si tu FreedomBox está detras de un router necesitarás configurar la redirección de puertos en tu router. Redirije los siguientes puertos de infinoted:
- TCP 6523
9.2. Enlaces externos
Sitio web: https://gobby.github.io/libinfinity
9.2.1. Aplicaciones Cliente
FreedomBox recomienda algunas aplicaciones cliente. Selecciona su icono en la página de Aplicaciones y haz clic en el botón> Aplicaciones Cliente.
El cliente principal de Infinoted se llama "Gobby: https://gobby.github.io
Documentación de uso: https://github.com/gobby/gobby/wiki
Wiki de Gobby: https://github.com/gobby/gobby/wiki
10. Janus (servidor WebRTC)
|
Disponible desde: versión 22.13
Janus es un servidor WebRTC ligero de propósito general. Puede soportar diferentes tipos de aplicaciones de comunicación en tiempo real, como llamdas y retransmisiones de video.
Actualmente FreedomBox incluye con Janus una sala simple de videoconferencia. Cualquiera que visite tu FreedomBox puede acceder a esta sala. No requiere ingresar con una cuenta de usuario.
En el futuro será reemplazada por Jangouts, una app de videoconferencia completa.
11. Captura de pantalla
Para usar Janus se necesita Coturn, así que también debe estar instalado y funcionando en tu FreedomBox.
12. Usar Janus
El acceso directo a Janus te llevará a la página Sala de Video de Janus. Pulsa aquí el botón Comenzar enla parte superior de la página.
A continución tendrás que dar un nombre de pantalla. Puede ser cualquiera. Pulsa el botón "Unirse a la sala" para entrar.
La primera vez que entres a la sala, tu navegador te preguntará si le das permiso a esta página para acceder a tu cámara y micrófono. Pulsa "Permitir" para seguir.
Se mostrará tu propia imagen en la ventana "Video local". Desde aquí podrás acallar tu sonido o usar despublicar para dejar de compartir tu imagen y/o sonido. Si otra gente entra en la sala aparecerán en las ventanas de "Vídeo remoto".
12.1. Enlaces externos
Proyecto original: https://janus.conf.meetecho.com
Documentación de usuario: https://janus.conf.meetecho.com/docs
13. JSXC (Cliente Web de Mensajería Instantánea)
|
Disponible desde: versión 0.11.0
JSXC is un cliente web de mensajería instantánea. Sirve para conectar con servidores de mensajería instantánea compatibles.
FreedomBox ofrece ambas partes desde su interfaz web: un servidor (ejabberd) y un cliente web (JSXC).
13.1. Especificaciones técnicas
JSXC está hecho con HTML5 e implementa el protocolo XMPP sobre BOSH.
XMPP es un protocolo cliente-servidor para Mensajería Instantánea federado. Esto significa que los usuarios con cuenta en un servidor pueden conversar con usuarios de otro servidor.
Se puede usar XMPP también para llamadas de voz y/o vídeo, si los clientes las soportan.
13.2. Instalación
Puedes instalar JSXC mediante su icono de la sección Apps de la interfaz web de FreedomBox. El icono de ejabberd (servidor XMPP) también ofrece lanzar el cliente web (instalando JSXC de paso si fuera preciso).
13.3. Uso
Tras completar la instalación del módulo JSXC, queda accesible mediante su icono en la sección Apps de la interfaz web de FreedomBox. El icono de ejabberd (servidor XMPP) también ofrece lanzar el cliente web. Ambos te redirigirán a https://<tu_freedombox>/plinth/apps/xmpp/jsxc/.
Para usarlo necesitas introducir el nombre de dominio del servidor al que quieres conectarte. Automáticamente comprueba la conexión al servidor BOSH cuando tecléas el nombre de dominio.
|
|
Más detalles en https://www.jsxc.org.
JSXC ofrece funcionalidades de videoconferencia y transferencia de ficheros pero no parecen funcionar aún en FreedomBox.
13.4. Redirección de puertos
Si tu FreedomBox está detrás de un router y quieres conectarte a otros servidores, necesitarás configurar la redirección de puertos de tu router. Para XMPP deberás redirigir los siguientes puertos:
- TCP 5222 (cliente-a-servidor)
13.5. External links
Sitio web: https://www.jsxc.org
Documentación de uso: https://www.jsxc.org/manual.html
Manual de FreedomBox del servidor ejabberd: https://wiki.debian.org/es/FreedomBox/Manual/ejabberd
14. Matrix Synapse (Servidor de Mensajería Instantánea)
|
Disponible desde: versión 0.14.0
14.1. ¿Qué es Matrix?
Matrix es un protocolo abierto para comunicaciones sobre IP en tiempo real interoperables y descentralizadas. Synapse es la implementación de referencia de un servidor Matrix. Se puede usar para montar mensajería instantánea sobre FreedomBox para albergar salas de chat con comunicaciones cifradas punto a punto y llamadas de audio/vídeo. Matrix Synapse es una aplicación federada en la que puede haber salas de chat en un servidor y los usuarios de cualquier otro servidor de la red federada pueden unirse a ellas. Más información acerca de Matrix.
14.2. ¿Cómo acceder a tu servidor Matrix Synapse?
Para acceder al servidor Matrix Synapse recomendamos el cliente Element. Puedes descargar Element para escritorio. Las aplicaciones para Android e iOS están disponibles en sus tiendas (app stores) respectivas.
14.3. Configurar Matrix Synapse en tu FreedomBox
Para habilitar Matrix Synapse, primero navega a la página de tu servidor de chat (Matrix Synapse) e instálalo. Matrix necesita un nombre de dominio válido configurado. Tras la instalación, se te pedirá que lo configures seleccionandolo de entre un menú desplegable con dominios disponibles. Los dominios se configuran en la página Sistema -> Configuración y actualmente no podrás cambiar el dominio una vez esté configurado. Tras configurar un dominio verás que el servicio se está ejecutando. El servicio estará accesible en el dominio de FreedomBox configurado.
Tendrás que configurar tu router para que reenvíe el puerto 8448 a tu FreedomBox.
Todos los usuarios registrados en tu FreedomBox tendrán sus IDs Matrix @usuario:dominio. Si está habilitado el registro público tu cliente se puede usar también para registrar una cuenta de usuario nueva.
14.4. Configurar llamadas de audio/vídeo
El servidor Matrix Synapse solo es responsable de establecer las conexiones entre los participantes de la sala. Los clientes Matrix como Element son los responsables de transmitir el audio/vídeo. Element soporta tanto llamadas individuales como de grupo.
Para conversaciones individuales, Element intenta establecer una conexión directa entre ambos participantes. Esto funciona cuando ambos participantes están empleando Element en máquinas con una IP pública o si están en la misma red (local). Si ambos participantes están detrás de diferentes NATs no será posible establecer una conexión directa entre ellos. Esta dificultad se resuelve configurando Matrix Synapse contra un servidor STUN/TURN. FreedomBox proporciona una app llamada Coturn para este propósito. FreedomBox no instala Coturn automaticamente al instalar Matrix Synapse. No obstante, en cuanto se instala la app Coturn FreedomBox automáticamente reconfigura Matrix Synapse para usarla en llamadas de audio/vídeo. Se puede ajustar esta configuración en la interfaz web para emplear otro servidor STUN/TURN.
Para llamadas de grupo Element emplea una instancia de Jitsi Meet externa; por omisión, jitsi.riot.im. Si se configura el servidor Matrix Synapse para usar una instancia Jitsi Meet diferente Element la usará para todos los usuarios del servidor.
14.5. Federarse con otras instancias Matrix
Podrás interactuar con cualquier otra persona que ejecute otra instancia de Matrix. Esto se hace simplemente iniciando una conversación con ellos usando su matrix ID que seguirá el formato @su-usuario:su-dominio. También podrás unirte a salas de otros servidores y tener llamadas de audio/video con contactos de otros servidores.
14.6. Uso de Memoria
El servidor de referencia Synapse implementado en Python es conocido por consumir mucha RAM, especialmente al cargar salones grandes con miles de participantes como #matrix:matrix.org. Se recomienda evitar unirse a estos salones si tu dispositivo FreedomBox solo tiene 1 GiB RAM o menos. Debería ser seguro unirse a salas con hasta 100 participantes. El equipo de Matrix está trabajando en una implementación de servidor Matrix escrita en Go llamada Dendrite que debería tener mejor rendimiento en entornos con poca memoria.
Algunos salones públicos muy grandes de la red Matrix están también disponibles como canales IRC (p.ej. #freedombox:matrix.org está disponible también como #freedombox en irc.debian.org). Es mejor usar IRC en vez de Matrix para estos salones tán grandes. Puedes unirte a los canales de IRC usando Quassel.
14.7. Uso Avanzado
- Si quieres crear una gran cantidad de usuarios en tu servidor de Matrix Synapse usa los siguientes comandos en una shell remota como usuario root:
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1 | sed "s+^+registration_shared_secret: +" > /etc/matrix-synapse/conf.d/registration_shared_secret.yaml chmod 600 /etc/matrix-synapse/conf.d/registration_shared_secret.yaml chown matrix-synapse:nogroup /etc/matrix-synapse/conf.d/registration_shared_secret.yaml systemctl restart matrix-synapse register_new_matrix_user -c /etc/matrix-synapse/conf.d/registration_shared_secret.yaml
- Si quieres ver la lista de usuarios registrados en Matrix Syanpse haz lo siguiente como usuario root:
apt install sqlite3 echo 'select name from users' | sqlite3 /var/lib/matrix-synapse/homeserver.db
Para crear una comunidad en Matrix Synapse se necesita un usuario Matrix con privilegios de admin en el servidor. Para dárselos a miusuario ejecuta los siguientes comandos como usuario root:
sudo apt install sqlite3 echo "UPDATE users SET admin=1 WHERE name='@miusuario:dominio'" | sudo sqlite3 /var/lib/matrix-synapse/homeserver.db
14.8. Redirección de Puertos
Si tu FreedomBox está detrás de un router, necesitarás configurar la redirección de los siguientes puertos para Matrix:
- UDP 3478
- TCP 3478
- UDP 3479
- TCP 3479
- UDP 5349
- TCP 5349
- UDP 5350
- TCP 5350
14.9. Enlaces externos
Sitio web de Matrix: https://matrix.org
Sección de Synapse: https://github.com/element-hq/synapse
Documentación de uso: https://matrix.org/docs/chat_basics/matrix-for-im/
Matrix en el wiki de Debian : https://wiki.debian.org/Matrix
Video tutorial para instalar Matrix Synapse sobre una instancia en la nube: https://youtu.be/8snpMHHbymI
14.9.1. Aplicaciones cliente
FreedomBox recomienda algunas aplicaciones cliente. Selecciona su icono en la página de Aplicaciones y haz clic en el botón> Aplicaciones Cliente.
15. MediaWiki (Wiki)
|
Disponible desde: versión 0.20.0
15.1. Acerca de MediaWiki
MediaWiki es el software de base de la gama de wikis Wikimedia.
Lee más acerca de MediaWiki en Wikipedia
15.2. MediaWiki en FreedomBox
MediaWiki viene configurado en FreedomBox para ser públicamente legible y editable en privado. Sólo los usuarios ingresados pueden editar el wiki. Esta configuración evita publicidad indeseada (spam) y otros vandalismos en tu wiki.
15.2.1. Administración de Usuarios
Solo el administrador de MediaWiki (usuario "admin") puede crear los usuarios. El usuario "admin" puede usarse también para restablecer contraseñas de usuarios MediaWiki. Si se olvida la contraseña del administrador se puede restablecer desde la página de MediaWiki del interfaz web de FreedomBox.
15.2.2. Casos de uso
MediaWiki es muy versátil y se puede emplear para muchos usos creativos. También es áltamente adaptable y viene con un montón de extensiones (plugins) y estilos estéticos.
15.2.2.1. Repositorio Personal de Conocimiento
El MediaWiki de FreedomBox puede ser tu propio repositorio de conocimiento personal. Como MediaWiki tiene buen soporte multimedia puedes escribir notas, almacenar imágenes, crear listas de comprobación, guardar referencias y enlaces, etc. de manera organizada. Puedes almacenar el conocimiento de una vida en tu instancia de MediaWiki.
15.2.2.2. Wiki Comunitario
Una comunidad de usuarios podría usar MediaWiki como su repositorio común de conocimiento y material de referencia. Se puede emplear como un tablón de anunciós de universidad, como un servidor de documentación para una pequeña empresa, como un bloc de notas para grupos de estudio o como un wiki de fans al estilo de wikia.
15.2.2.3. Sitio Web Personal implementado mediante un Wiki
Varios sitios web de internet son sólo instancias de MediaWiki. El MediaWiki de FreedomBox es de solo lectura para visitantes. Se puede por tanto adaptar para servir como tu sitio web y/o blog personal. El contenido de MediaWiki es fácil de exportar y puede moverse después a otro motor de blogs.
15.2.3. Editar Contenido del Wiki
FreedomBox monta MediaWiki con dos tipos de editores: el editor WikiText y el Editor Visual.
15.2.3.1. El editor WikiText
Este editor es para editar el wiki directamente en el lenguaje de marcado de MediaWiki.Tiene una barra de herramientas con opciones de uso habitual como negrita, cursiva etc. Haz clic en la sección Avanzadas para acceder a más opciones como cabaceras, listas con viñetas, etc.
15.2.3.2. Editor Visual
Como su nombre indica, la extensión Editor Visual de MediaWiki proporciona un interfaz de usuario visual (WYSIWYG) para crear páginas del wiki. Esta extension viene con MediaWiki desde la versión 1.35 y está habilitada por omisión desde FreedomBox 21.9.
Como este es esencialmente un editor de texto enriquecido no se necesita conocimiento del lenguaje de marcado de MediaWiki. Para usar funcionalidades avanzadas no disponibles (aún) en el editor VisualEditor vuelve a la edición mediante código fuente.
15.2.3.3. Otros Formatos
No es imprescindible que aprendas el lenguaje de formateo de MediaWiki. Puedes escribir en tu formato favorito (Markdown, Org-mode, LaTeX etc.) y convertirlo al formato de MediaWiki usando Pandoc.
15.2.3.4. Cargar Imágenes
Se puede habilitar la carga de imágenes desde FreedomBox versión 0.36.0. También puedes usar directamente imágenes de Wikimedia Commons mediante una funcionalidad llamada Instant Commons.
15.2.4. Personalización
15.2.4.1. Temas de estilo
El tema por defecto de MediaWiki suele ser Vector. El de FreedomBox es Timeless.
Vector es un tema optimizado para visualizarlo en pantallas grandes pero no se adecúa bien a los tamaños de pantalla de los móviles. Wikimedia usa otro sitio específico para móviles. Para instalaciones pequeñas como las de FreedomBox no merece la pena un segundo sitio dedicado. Usar un tema de estilo más polivalente como Timeless es una solución más eficiente al problema.
Los administradores pueden elegir el tema por defecto desde la configuración de la app. Los usuarios del sitio tienen también la opción de visualizarlo con temas diferentes.
15.3. Enlaces externos
Sitio web: https://www.mediawiki.org/wiki/MediaWiki
Documentación de uso: https://www.mediawiki.org/wiki/Help:Contents
MediaWiki en el wiki de Debian: https://wiki.debian.org/MediaWiki
16. Minetest (Sandbox de bloques)
|
Disponible desde: versión 0.9
Minetest es un Block Sandbox multijugador para mundos infinitos. Este módulo permite ejecutar el servidor Minetest en esta FreedomBox, en su puerto por defecto (30000). Para conectar al servidor se necesita un cliente de Minetest.
16.1. Enrutado de Puertos
Si tu FreedomBox está detrás de un router necesitarás configurar la redirección de puertos en tu router para los siguientes puertos de Minetest:
- UDP 30000
16.2. Instalar y habilitar módulos (mods)
Accediendo mediante SSH a servidor FreedomBox, instalar los mods (mediante unzip o git clone) en /var/games/minetest-server/.minetest/mods (Por ejemplo, para el mod mobs_animal mod se tendría el directorio /var/games/minetest-server/.minetest/mods/mobs_animal/.
Para habilitar el mod primero reinicia minetest:
sudo systemctl restart minetest-server.service
Esto actualizará el fichero de configuración del mundo, situado en /var/games/minetest-server/.minetest/worlds/world/world.mt, con una línea relativa al mod recientemente añadido. Para habilitar el nuevo mod en tu instancia de minetest cambia el estado de la línea de false a true . Por ejemplo:
load_mod_mobs_animal = true
Después, guarda los cambios, vuelve a reiniciar minetest y ya lo deberías tener disponible.
16.3. Enlaces externos
Proyecto original: https://www.minetest.net
Documentación original: https://wiki.minetest.net
Minetest en el wiki de Debian: https://wiki.debian.org/Games/Minetest
Usar MineTest en educación: https://www.minetest.net/education/
16.3.1. Aplicaciones cliente
Debian: el nombre de paquete del cliente es minetest.
Otras plataformas: https://www.minetest.net/downloads/
17. MiniDLNA / ReadyMedia (Servidor multimedia básico)
|
Disponible desde: versión 19.23
MiniDLNA es un servidor multimedia que intenta ser compatible con clientes DLNA/UPnP.
MiniDLNA ha cambiado recientemente su nombre a ReadyMedia.
Nota: Este servicio solo está disponible en redes configuradas como zona "interna". Tampoco está disponble a través de OpenVPN (es incompatible).
17.1. ¿Qué es UPnP/DLNA?
UPnP (Universal plug & play) es un conjunto de protocolos de red que permite a los dispositivos de una red, como PCs, TVs, impresoras etc, reconocerse entre sí y establecer comunicación para compartir datos. Es un protocolo con cero configuración y require solo un servidor multimedia y un reproductor multimedia compatibles con el protocolo.
DLNA se deriva de UPnP como una forma de estandarizar interoperabilidad entre medios. Conforma un estándar/certificación que cumplen muchos dispositivos electrónicos de consumo.
17.2. Desplegando MiniDLNA en tu FreedomBox.
Para instalar/habilitar el servidor multimedia necesitas navegar a la página MiniDLNA y habilitarlo. Se intenta que la aplicación esté disponible en la red interna y por ello requiere asignarle un interfaz de red configurado para tráfico interno.
Tras la instalación queda disponible en la red local una página web en http://<dirección_IP_de_tu_freedombox>:8200 (observa que un nombre mDNS como freedombox.local no funciona aquí). La página web incluye información de cuántos ficheros detecta el servidor, cuántas conexiones existen etc. Esto resulta muy útil cuando conectas discos externos con contenido para para verificar que detecta los nuevos archivos como debe. Si no ocurre así, desconectar y activar el servidor lo arreglará.
17.3. Usar MiniDLNA para reproducir contenidos multimedia en tus dispositivos
Cualquier dispositivo compatible con DLNA debiera ser capaz de detectar, hojear y reproducir automáticamente contenido multimedia de MiniDLNA en FreedomBox. Los siguientes dispositivos y reproductores se han probado:
GNOME Videos: Videos es el reproductor multimedia por defecto en el popular entorno de escritorio GNU/Linux GNOME. Abre Videos, cambia a 'Canales'. Deberías ver un canal denominado 'freedombox: minidlna'. Deberías poder hojear y reproducir su contenido.
VLC media player: VLC es un reproductor multimedia para GNU/Linux, Android, Windows y macOS muy popular. Abre VLC y haz clic en 'Ver -> Lista de reproducción'. En la barra lateral de la lista de reproducción que aparece selecciona 'Universal Plug'n'Play'. Deberías ver un elemento denominado 'freedombox: minidlna'. Deberías poder hojear y reproducir su contenido.
Kodi: Kodi es un software popular de centro multimedia con un interfaz de usuario diseñado para televisores. Abre Kodi, ve a 'Sistema -> Configuración del Servicio -> UPnP/DLNA' y 'Habilitar soporte UPnP'. Visita entonces 'Home -> Videos -> Archivos -> Añadir videos... -> Navegar -> dispositivos UPnP'. Deberías ver 'freedombox: minidlna'. Selecciónalo y elige 'OK'. Entonces, elige 'OK en el diálogo 'Anadir entrada de video'. A partir de ahora , deberías ver 'freedombox: minidlna' en la sección 'Videos -> Archivos'. Deberías poder hojear y reproducir su contenido. Para más información mira la documentación de Kodi.
Roku: Roku es un aparato conectado a una TV para reproducir contenido de servicios de retransmisión por Internet. También hay muchas TVs que llevan a Roku integrado. Encuentra en el interfaz de Roku un canal denominado 'Roku Media Player' y ábrelo. Deberías ver un elemento denominado 'freedombox: minidlna'. Deberías poder hojear y reproducir su contenido.
Rhythmbox: Rhythmbox es el reproductor de sonido por defecto en el popular entorno de escritorio GNU/Linux GNOME. Abre Rhythmbox y asegura que el panel lateral esté abierto pulsando en 'Menú de Aplicación -> Ver -> Panel Lateral'. En el panel lateral deberías ver 'freedombox:minidlna' bajo la sección 'Compartidos'. Deberías poder hojear y reproducir sus archivos de sonido. Los archivos de video no aparecerán.
17.4. Formatos multimedia soportados
MiniDLNA soporta una amplia variedad de formatos de archivo de video y sonido.
Video: Archivos terminados en .avi, .mp4, .mkv, .mpg, .mpeg, .wmv, .m4v, .flv, .mov, .3gp, etc.
Sonido: Archivos terminados en .mp3, .ogg, .flac, .wav, .pcm, .wma, .fla, .aac, etc.
Imágen: Archivos terminados en .jpg, .jpeg
Listas de Reproducción: Archivos terminados enh .m3u, .pls
Subtítulos: Archivos terminados en .srt, .smi
Obsérvese que no soporta archivos con las siguientes extensiones. Parece que renombrar el archivo a una extensión reconocida funciona el la mayoría de casos.
Video: Archivos terminados en .webm
Además del soporte al formato de archivo por parte de MiniDLNA, tu dispositivo o reproductor de medios necesita soportar el codec de sonido/video con el que se haya codificado tu contenido. MiniDLNA carece de la habilidad de traducir archivos a un codec compatible con el reproductor. Si te topas con problemas en la reproducción de contenido, usa VLC para identificar el codec empleado en el contenido y comprueba en la documentación de tu dispositivo o reproductor de medios si lo soporta.
17.5. Sistemas de archivo para discos externos.
Al usar un disco externo que se usa también desde sistemas Windows el mejor formato para el sistema de archivos es NTFS. NTFS conservará los permisos de acceso de Linux y la codificación UTF-8 para los nombres de fichero. Esto es útil si los nombres de archivos tienen tildes, eñes u otros signos raros.
17.6. Enlaces externos
Sitio del proyecto original: http://minidlna.sourceforge.net (en)
Documentación y soporte del proyecto original: https://sourceforge.net/projects/minidlna/support
Acerca de DLNA: https://es.wikipedia.org/wiki/Digital_Living_Network_Alliance
MiniDLNA en el wiki de Debian: https://wiki.debian.org/minidlna
18. Miniflux (Lector de noticias)
|
Disponible desde: FreedomBox en Debian 13 (Trixie)
Miniflux es un lector de noticias minimalista y con una marcada personalidad que soporta una amplia variedad de formatos - RSS, ATOM, RDF y JSON. En FreedomBox es una alternativa a Tiny Tiny RSS.
18.1. Clientes
La interfaz web primaria es amigable con los dispositivos móviles y maximiza la legibilidad. Miniflux es una aplicación web progresiva. Se puede añadir a la pantalla principal del móvil y acceder como si fuera nativa.
El servidor Miniflux proporciona una API para clientes. También es compatible con aplicaciones existentes creadas para Fever o la API de Google Reader. Hay una lista de clientes para varias plataformas de escritorio y móviles en el sitio web oficial del projecto original.
18.2. Lector
El lector de Miniflux soporta varios tipos de contenido. Además de los blogs y comics habituales que soportan la mayoría de lectores, puedes también escuchar podcasts y reproducir videos desde Miniflux. Los videos de YouTube se reproducen usando youtube-nocookie.com o (opcionalmente) un proxy como invidious.io para evitar que se rastreen tus preferencias entre sitios webs. Miniflux también elimina los pixeles de rastreo y todo el JavaScript externo.
Miniflux tiene un extractor de contenido qu te permite obtner y leer el artículo completo incluso si el sitio solo publica un resumen en su feed. Solo se extrae el contenido relevante, proporcionando una experiencia de lectura similar a Firefox Reader View. Este extractor es también capaz de obtener la duración de un video de YouTube o Invidious.
18.3. Otras funcionalidades
Miniflux proporciona algunas funcionalidades de comodidad como búsqueda de texto completo (basada en una base de datos PostgreSQL), reglas de filtrado, atajos de teclado y eventos táctiles. Hay integraciones con varias aplicaciones como soluciones de lectura diferida, marcapáginas (Shaarli) y apps de mensajería (Matrix). Si no usas Shaarli, marca un artículo con una estrella en Miniflux.
Miniflux no permite instalar extensiones ni estilos. Puedes elegir uno de los estilos existentes o instalar una extensión de navegador para leer con otro estilo.
18.4. Miniflux en FreedomBox
18.4.1. Administración de usuarios
Miniflux no se integra con los mecanismos de ingreso único de FreedomBox. La app de FreedomBox para Miniflux proporciona una opción para crear usuarios administradores. Una vez creado el usuario administrador se pueden crear y administrar más usuarios (administradores o no) desde los ajustes de Miniflux.
La app de FreedomBox app también permite restablecer la contraseña de cualquier usuario de Miniflux. Esto es especialmente útil en caso que solo una persona use Miniflux. Sin esta opción, si el único usuario de Miniflux olvida su contraseña habría que crear un administrador para restablecerla desde los ajustes de Miniflux.
Como las cuentas de Miniflux no están conectadas a las de FreedomBox puedes dar cuentas Miniflux a tus amigos aunque carezcan de cuenta en FreedomBox.
18.4.2. Migrar desde Tiny Tiny RSS
Por hacer
18.4.3. Integraciones
- Añadir un marcapáginas a Shaarli
- Publicar feeds en un canal de Matrix
- Puente RSS
18.5. Enlaces externos
Proyecto original: https://miniflux.app
Documentación del proyecto original: : https://miniflux.app/docs/index.html
19. Servidor Mumble (Chat de voz)
|
Disponible desde: versión 0.5
19.1. ¿Qué es Mumble?
Mumble es un software de conversaciones de voz. Principalmente diseñado para uso con juegos multijugador por red, sirve para hablar con alta calidad de audio, cancelación de ruido, comunicación cifrada, autenticación de interlocutores por defecto mediante par de claves pública/privada, y "asistentes" para configurar tu micrófono, por ejemplo. Se puede marcar a un usuario dentro de un canal como "interlocutor prioritario".
19.2. Usar Mumble
FreedomBox incluye el servidor Mumble. Para conectar con el servidor los usuarios pueden descargar algún cliente de entre los disponibles para plataformas de escritorio y móviles.
19.3. Redirección de Puertos
Si tu FreedomBox está detrás de un router necesitarás configurar la redirección de puertos de tu router. Deberías redirigir los siguientes puertos para Mumble:
- TCP 64738
- UDP 64738
19.4. Administrar Permisos
En Mumble un superusuario puede crear cuentas de administrador que a su vez pueden administrar permisos a grupos y canales. Esto se puede hacer tras ingresar con el usuario "SuperUser" y la contraseña de superusuario. Ver la Guía de Mumble para obtener información respecto a cómo hacer esto. La interfaz web de FreedomBox permite establecer la contraseña de superusuario.
19.5. External links
Sitio web: https://www.mumble.info
Documentación de uso: https://www.mumble.info/documentation
20. OpenVPN (Red Privada Virtual)
|
Disponible desde: versión 0.7
20.1. ¿Qué es OpenVPN?
OpenVPN proporciona un servicio de red privada virtual a tu FreedomBox. Puedes usar este software para acceso remoto, VPNs punto-a-punto y seguridad Wi-Fi. OpenVPN incluye soporte para direcciones IP dinámicas y NAT.
20.2. Redirección de puertos
Si tu FreedomBox está detrás de un router necesitarás configurar la redirección de puertos en tu router. Debes redirigir los siguientes puertos para OpenVPN:
- UDP 1194
20.3. Configurar
En el menú de apps de FreedomBox selecciona Red Privada Virtual (OpenVPN) y haz clic en Instalar.
- Tras instalar el módulo todavía queda un paso de configuración que puede llevar largo tiempo completar. Haz clic en "Iniciar configuración" para empezar.
- Espera a que termine la configuración. Puede tardar un rato.
Una vez completada la configuración del servidor OpenVPN puedes descargar tu perfil. Esto descargará un archivo llamado <usuario>.ovpn, siendo <usuario> un usuario de FreedomBox. Todos los usuarios de FreedomBox podrán descargar un perfil propio y diferente. Los usuarios que no sean administradores pueden descargar el perfil desde la portada después de ingresar.
- El archivo ovpn contiene toda la información que necesita un cliente vpn para conectar con un servidor.
El perfil descargado contiene el nombre de dominio de FreedomBox al que debe conectarse el cliente. Este se obtiene del dominio configurado en la sección 'Configuración' de la página de 'Sistema'. En caso de que tu dominio no esté configurado adecuadamente quizá necesites cambiar este valor después de descargar el perfil. Si tu cliente OpenVPN lo permite puedes hacer esto después de importar el perfil OpenVPN. De lo contrario puedes editar el perfil .ovpn con un editor de texto y cambiar la línea 'remote' para que contenga la dirección IP WAN o el hostname de tu FreedomBox como se indica aquí.
client remote tu.freedombox.org 1194 proto udp
20.4. Resolución de problemas
Si tu red no soporta IPv6 quizá tengas que eliminar la siguiente línea de la configuración del cliente OpenVPN. Especialmente en casos en los que tu servidor soporta IPv6 pero tu cliente no, lo que causa confusión en el cliente respecto a qué protocolo emplear.
proto udp6
Para conectar por IPv4, asegúrate de que la siguiente línea consta.
proto udp
20.5. Navegar por Internet tras conectar a una VPN
Tras conectar a la VPN el dispositivo cliente podrá navegar por Internet sin más configuración adicional. No obstante una pre-condición para que esto funcione es que necesitas tener al menos 1 interfaz (tarjeta) de red conectado a Internet en la zona Externa del cortafuegos. Usa la página de configuración de redes para editar la zona del cortafuegos con los interfaces (tarjetas) de red del dispositivo.
20.6. Uso
20.6.1. En Android/LineageOS
Visita la página principal de FreedomBox. Ingresa con tu cuenta de usuario. Desde la página principal descarga el perfil OpenVPN. El archivo se llamará <usuario>.ovpn.
Descarga un cliente OpenVPN como OpenVPN for Android. Se recomienda el repositorio F-Droid. En la app, selecciona Importar perfil.
En el diálogo Seleccionar perfil elige el archivo <usuario>.opvn que acabas de descargar. Pon un nombre a la conexión y graba el perfil.
El perfil recién creado aparecera. Si hace falta edita el perfil y pon el nombre de dominio de tu FreedomBox como dirección de servidor.
- Conecta haciendo clic sobre el perfil.
- Cuando esté desconecta haciendo clic sobre el perfil.
20.6.2. En Debian
Instala un cliente OpenVPN para tu sistema
$ sudo apt install openvpn
Abre el archivo ovpn con el cliente OpenVPN.
$ sudo openvpn --config /ruta/a/<usuario>.ovpn
Si te sale un error como configuration error: invalid 1th argument to “proto” (line 5) edita el fichero .ovpn y elimina la línea proto udp6.
20.7. Comprobar si estás conectado
20.7.1. En Debian
Trata de hacer ping a tu FreedomBox u otros dispositivos de tu red.
El comando ip addr debe mostrar una conexión tun0.
El comando traceroute freedombox.org debiera mostrar la dirección IP del servidor VPN como primer salto.
Si usas Network Manager puedes crear una conexión nueva importando el fichero:
$ sudo apt install network-manager-openvpn-gnome $ sudo nmcli connection import type openvpn file /ruta/a/<USUARIO>.ovpn
20.8. Acceso a servicios internos
Tras conectar por OpenVPN, podrás acceder a algunos servicios FreedomBox restringidos a acceso interno, además de a los de acceso externo. Esto se puede hacer usando la dirección IP 10.91.0.1 como hostname para esos servicios. (Por ejemplo, usa smb://10.91.0.1 en vez de smb://freedombox.local para acceder a carpetas compartidas Samba).
Los siguientes servicios funcionan con OpenVPN:
Algunos servicios no funcionan aún con OpenVPN:
20.9. Enlaces Externos
Sitio web del proyecto original: https://openvpn.net
Documentación del proyecto original: https://openvpn.net/connect-docs
OpenVPN en el wiki de Debian: https://wiki.debian.org/OpenVPN
Wiki y Administrador de tareas: https://community.openvpn.net/openvpn
21. Privoxy (Proxy Web)
|
Disponible desde: versión 0.1
Un proxy web actúa como filtro para tráfico web entrante y saliente. Por tanto, puedes ofrecer a los ordenadores de tu red pasar su tráfico internet a través del proxy para eliminar anuncios y mecanismos de rastreo indeseados.
Privoxy es un software para la seguridad, privacidad, y control certero sobre la web. Proporciona una navegación web mucho más controlada (y anónima) que la que te puede ofrecer tu navegador. Privoxy "es un proxy enfocado principalmente al aumento de la privacidad, eliminación de anuncios y morralla, y a liberar al usuario de las restricciones impuestas sobre sus propias actividades" (fuente: Preguntas frecuentes acerca de Privoxy).
21.1. Vídeo
Mira el vídeo acerca de como configurar y usar Privoxy en FreedomBox.
21.2. Configurar
Instala Proxy Web (Privoxy) desde FreedomBox
Adapta las preferencias de proxy de tu navegador al hostname (o dirección IP) de tu FreedomBox con el puerto 8118. Observa por favor que Privoxy sólo puede tratar tráfico HTTP y HTTPS. No funciona con FTP u otros protocolos.
Vé a la página http://config.privoxy.org/ o http://p.p. Si Privoxy está instalado adecuadamente podrás configurarlo en detalle y si no verás un mensaje de fallo.
Si usas un portátil que tenga a veces que conectarse con FreedomBox y Privoxy pasando por routers de terceros quizá quieras instalar una extensión proxy switch que te permite activar y desactivar el proxy más fácilmente.
21.3. Usuarios Avanzados
La instalación de serie debería proporcionar un punto de partida razonable para la mayoría de los usuarios. Indudablemente habrá ocasiones en las que quieras ajustar la configuración. Eso se puede afrontar cuando surja la necesidad.
- Planifica primero:
Con Privoxy activado puedes ver su documentación y los detalles de su configuración en http://config.privoxy.org/ o en http://p.p.
La Guía rápida es un buen punto de partida para leer acerca de cómo definir reglas de bloqueo y filtrado propias.
Lee el manual con atención, especialmente esre aviso de seguridad:
No se puede controlar por separado el accesso al editor por "ACLs" o authenticación HTTP, así que cualquiera con acceso a Privoxy puede modificar la configuración de todos los usuarios. Esta opción no se recomienda para entornos con usuarios no confiables. Nota que un código de cliente malicioso (p.ej. Java) también puede usar el editor de acciones y no deberías habilitar estas opciones a no ser que entiendas las consecuencias y estés seguro de que los navegadores están correctamente configurados.
- Solo cuando ya estés preparado, realiza los cambios:
Para habilitar los cambios en estas configuraciones primero tienes que cambiar el valor de habilitar-acciones-de-edición en /etc/privoxy/config a 1.
Ahora encontrarás un botón EDITAR en la pantalla de configuración de http://config.privoxy.org/.
21.4. Enlaces externos
Sitio web del proyecto original: https://www.privoxy.org
Manual de usuario del proyecto original: https://www.privoxy.org/user-manual/index.html
22. Quassel (Cliente IRC)
|
Disponible desde: versión 0.8
Quassel es una aplicación IRC separada en 2 partes: un "núcleo" y un "cliente". Esto permite que el núcleo permanezca conectado a los servidores IRC recibiendo mensajes aunque el cliente esté desconectado. Ejecutando el servicio nucleo de Quassel FreedomBox puede mantenerte siempre en línea. Se pueden usar uno o varios clentes Quassel para conectarse intermitentemente desde escritorios o dispositivos móviles.
22.1. ¿Para qué ejecutar Quassel?
Muchos debates acerca de FreedomBox tienen lugar en el canal IRC irc://irc.debian.org/freedombox. Si tu FreedomBox ejecuta Quassel recolectará todos ellos mientras estás ausente, capturando las respuestas a tus preguntas. Recuerda que el proyecto FreedomBox es mundial y participa gente de casi todos los husos horarios. Usarás tu cliente para conectar al núcleo de Quassel y leer y/o responder cuando tengas tiempo y disponibilidad.
22.2. ¿Cómo activar Quassel?
En el interfaz web de FreedomBox
selecciona Aplicaciones
ve a Cliente IRC (Quassel) e
- instala la aplicación y asegúrate de que está habilitada
- tu núcleo de Quassel se está ejecutando
22.3. Redirección de Puertos
Si tu FreedomBox está detras de un router necesitarás configurar la redirección de puertos en tu router. Redirije los siguientes puertos de Quassel:
- TCP 4242
- Ejemplo de configuración en el router:
22.4. Clientes
Hay disponibles clientes para escritorio y dispositivos móviles para conectar a Quassel.
22.4.1. Escritorio
En un sistema Debian puedes, p. ej. usar quassel-client. Los siguientes pasos describen cómo conectar el Cliente Quassel con el Núcleo de Quassel de tu FreedomBox. La primera vez que te conectes el Núcleo de Quassel se inicializará también.
Abre el Cliente Quassel. Te guiará paso a paso para Conectarse al núcleo.
Haz clic en el botón Añadir para abrir el diálogo Añadir cuenta de núcleo.
Rellena cualquier cosa en el campo Nombre de la cuenta. Introduce el hostname DNS de tu FreedomBox en el campo Servidor. El campo Puerto debe tener el valor 4242. Pon el usuario y la contraseña de la cuenta que quieres crear para conectar con el Núcleo de Quassel en los campos Usuario y Contraseña. Si no quieres que se te pida la contraseña cada vez que arranques el cliente de Quassel marca la opción Recordar.
Tras pulsar OK en el diálogo Añadir cuenta de núcleo deberías ver la cuenta en el diálogo Conectarse al núcleo.
Selecciona la cuenta del núcleo recién creada y dale a OK para conectar con él.
Si es la primera vez que te conectas a este núcleo verás un aviso de Certificado de seguridad no confiable y necesitarás aceptar el certificado del servidor.
Selecciona Continuar. Se te preguntará si quieres aceptar el certificado permanentemente. Selecciona Para siempre.
Si nadie se ha conectado nunca antes a este Núcleo Quassel antes verás un diálogo por pasos Asistente de configuración del núcleo. Selecciona Siguiente.
En la página Crear usuario administrador introduce el usuario y la contraseña que has usado antes para crear la conexión al núcleo. Selecciona Recordar la contraseña para que recuerde la contraseña para futuras sesiones. Haz clic en Siguiente.
En la página Seleccionar un motor de almacenamiento selecciona SQLite y haz clic en Enviar.
La configuración del núcleo está completa y verás un asistente Quassel IRC para configurar tus conexiones IRC. Haz clic en Siguiente.
A continuación en la página de Configurar identidad pon un nombre y múltiples pseudónimos. Te presentarás con estos a otros usuarios de IRC. No es necesario dar tu nombre real. Los pseudónimos múltipes son útiles como suplentes cuando el primero no se pueda usar por cualquier motivo. Tras aportar la información haz clic en Siguiente.
A continuación en la página de Configurar conexión de red pon el nombre de red que quieras y una lista de servidores a los que se deba conectar el Núcleo de Quassel para unirte a esa red IRC (por ejemplo irc.debian.org:6667).
Selecciona un servidor de la lista y dale a Editar. En el diálogo Información del servidor pon el puerto 6697 (consulta la lista real de servidores y sus puertos seguros en la documentación de tu red) y haz clic en Usar conexión cifrada. Clic en OK. Esto es para asegurar que la comunicación entre tu FreedomBox y el servidor de la red IRC va cifrada.
Ya de vuelta en el diálogo Configuración de Conexión de Red proporciona una lista de canales IRC (como #freedombox) a los que unirte al conectarte a la red. Dale a Grabar y Conectar.
Deberías conectar con la red y ver la lista de canales a los que te has unido en el panel Todas las conversaciones de la izquierda de la ventana principal del Cliente Quassel.
- Selecciona un canal y empieza a recibir mensajes de otros participantes del canal y a enviar los tuyos.
22.4.2. Android
Para dispositivos Android puedes usar p.ej. Quasseldroid obtenido desde F-Droid
- introduce el núcleo, usuario, etc.
Por cierto el verbo alemán quasseln significa hablar mucho, rajar.
22.5. Enlaces externos
Sitio web del proyecto original: https://quassel-irc.org
Wiki del proyecto original: https://bugs.quassel-irc.org/projects/quassel-irc/wiki
23. Radicale (Calendario y Contactos)
|
Disponible desde: versión 0.9
Con Radicale puedes sincronizar tus calendarios, listas de tareas y agendas de contactos personales entre varios ordendores, tabletas, y/o teléfonos inteligentes y compartirlos con tus amistades. Todo sin tener que permitir a terceros que accedan a tu información privada.
23.1. ¿Porque debería usar Radicale?
Usando Radicale puedes evitar servicios centralizados como Google Calendar o Apple Calendar (iCloud) que explotan los datos de tus eventos y conexiones sociales.
23.2. ¿Cómo configurar Radicale?
Primero el servidor Radicale necesita estar activado en tu FreedomBox.
En el servicio FreedomBox
selecciona Apps
ve a Radicale (Calendario y Libreta de contactos) e
instala la aplicación. Tras completar la instalación asegúrate de que la aplicación está marcada como "habilitada" en el interfaz de FreedomBox. Habilitar la aplicación arranca el servidor CalDAV/CardDAV Radicale.
- define los permisos de acceso:
- Solo el dueño de un calendario/libreta de contactos puede ver o hacer cambios
- Cualquier usuario puede ver cualquier calendario/libreta de contactos pero solo el dueño puede hacer cambios
- Cualquier usuario puede ver o hacer cambios en cualquier calendario/libreta
Nota: Solo los usuarios dados de alta en FreedomBox pueden acceder a Radicale.
Si quieres compartir un calendario solo con algunos usuarios determinados la manera más simple es crear un nuevo usuario común para ellos y compartir con ellos el nombre del usuario común y su contraseña.
Radicale proporciona un interfaz web básico que solo soporta crear calendarios y libretas nuevos. Para añadir eventos o contactos se necesita una aplicación cliente soportada externa.
- Crear calendarios y/o libretas usando el interfaz web
Visita https://<dirección_IP_o_dominio_de_tu_servidor>/radicale/
Ingresa con tu cuenta de FreedomBox
- Selecciona "Crear nuevo calendario o libreta"
- Proporciona un título y selecciona el tipo
- Opcionalmente, proporciona una descripción o selecciona un color
- Haz clic en "Crear"
- La página mostrará la URL de tu created nuevo calendario o libreta
Ahora abre tu aplicación cliente para crear calendarios y/o libretas nuevos que usarán tu FreedomBox y servidor Radicale. El sitio web de Radicale proporciona una lista de clientes soportados pero no uses las URLs que se mencionan allí; sigue este manual porque FreedomBox usa otra configuración. A continuación se muestran los pasos para 2 ejemplos:
Ejemplo de configuración con el cliente Evolution:
- Calendario
- Crea un calendario nuevo
- Selecciona el "Tipo" "CalDAV"
- Con "CalDAV" seleccionado aparecerán más opciones en el cuadro de diálogo.
URL: https://<dirección_IP_o_dominio_de_tu_servidor> cambiando los elementos marcados entre <> de acuerdo a tu configuración.
- Habilita "Usar una conexión segura."
Usuario: <NOMBREUSUARIO>. Tu usuario en FreedomBox.
- Haz clic en "Encontrar Calendarios"
- Introduce to contraseña y selecciona un calendario.
- Lista de tareas: Añadir una lista de tareas es prácticamente igual que con un calendario.
- Contactos
Sigue los mismos pasos anteriores reemplazando CalDAV por WebDAV.
- Calendario
23.3. Sincronizar via Tor
Configurar un calendario en FreedomBox con Radicale sobre Tor es lo mismo que sobre la red en claro, en resumen:
Cuando hayas ingresado al interfaz web de FreedomBox desde Tor haz clic en Radicale e introduce un usuario de tu FreedomBox y su contraseña.
Ingresa en el interfaz web de Radicale usando el usuario de tu FreedomBox y su contraseña.
- Haz clic en "Crear libreta o calendario nuevo", proporciona un título, selecciona un tipo y haz clic en "Crear".
Anota la URL, p.ej. https://<direccion_onion_de_tu_servidor>.onion/radicale/<usuario>/<código_del_calendario>/ cambiando los elementos marcados entre <> de acuerdo a tu configuración.
Estas instrucciones son para Thunderbird/Lightning. Nota: necesitarás estar conectado a Tor con el Tor Browser Bundle.
Abre Thunderbird, la extensión (add-on) Torbirdy y reinicia Thunderbird. (Quizá no haga falta.)
En el interfaz Lightning, en el panel izquierdo bajo Calendario haz clic con el botón derecho del ratón y selecciona "Nuevo calendario".
- Selecciona "En la red" como localización de tu calendario.
Selecciona "CalDAV" copia la URL, p.ej., https://<direccion_onion_de_tu_servidor>.onion/radicale/<usuario>/<código_del_calendario>/. como localización cambiando los elementos marcados entre <> de acuerdo a tu configuración.
Proporciona un nombre, etc. Haz clic en "Siguiente". Tu calendario está ahora sincronizando con tu FreedomBox a través de Tor.
Si no has generado un certificado con "Let's Encrypt" para tu FreedomBox quizá necesites seleccionar "Confirmar Excepción de Seguridad" cuando se te indique.
23.4. Sincronizar con tu teléfono Android
Hay varias Apps que admiten integración con el servidor Radicale. Este ejemplo usa DAVx5, que está disponible p.ej. en F-Droid. Si también quieres usar listas de tareas hay que instalar primero la app compatible OpenTasks.
Sigue estos pasos para configurar tu cuanta con el servidor Radicale de tu FreedomBox.
Instala DAVx5.
- Crea una cuenta nueva en DAVx5 haciendo clic en el botón flotante [+].
Selecciona la 2ª opción como se muestra en la primera imagen más abajo e introduce la URL base https://<dirección_de_tu_freedombox>/radicale/<usuario>/ (no olvides la / del final). DAVx5 averiguará las cuentas CalDAV y WebDAV del usuario.
Sigue este video del FAQ de DAVx5 para aprender cómo importar tus contactos existentes a Radicale.
Sincronizar contactos
Haz clic en los menús de hamburguesa de CalDAV y CardDAV y selecciona "Refrescar ..." en caso de cuentas existentes o "Crear ..." en caso de cuentas nuevas (ver la 2ª captura de pantalla más abajo).
- Marca las cajas de las libretas y/o contactos que quieras sincronizar y haz clic en el botón de sincronización de la cabecera. (ver la 3ª captura de pantalla más abajo)
23.5. Usuarios Avanzados
23.5.1. Compartir recursos
Arriba se mostrá una manera fácil de crear un recurso para un grupo de gente creando una cuenta dedicada común. Aquí de describe un método alternativo con el que se otorga acceso a un calendario a 2 usuarios Usuario1 y Usuario2. Esto requiere acceso por SSH a la FreedomBox.
crea un archivo /etc/radicale/rights
[friends_calendar] user: ^(Usuario1|Usuario2)$ collection: ^.*/calendario_de_mis_amigos.ics$ permission: rw # Dar permisos de escritura a los dueños: [owner-write] user: .+ collection: ^%(login)s/.+$ permission: rw
[calendario_de_mis_amigos] es solo un identificador, puede ser cualquier nombre.
La sección [owner-write] asegura que los dueños tengan acceso a sus propios archivos.
Edita el archivo /etc/radicale/config y haz los siguientes cambios en la sección [rights]
[rights] type = from_file file = /etc/radicale/rights
Reinicia el servidor Radicale o la FreedomBox
23.5.2. Importar archivos
Si estás usando un archivo de contactos exportado desde otro servicio o aplicación hay que copiarlo a: /var/lib/radicale/collections/<usuario>/<nombre_del_archivo_de_contactos>'.vcf.
23.6. Enlaces externos
Sitio web del proyecto original: https://radicale.org/3.0.html
Documentación de uso del proyecto original: https://radicale.org/v3.html#documentation-1
Radicale en el wiki de Debian: https://wiki.debian.org/Radicale
24. Roundcube (Cliente de Correo Electrónico (Email))
|
Disponible desde: versión 0.5
24.1. ¿Qué es Roundcube?
Roundcube es un cliente de correo electrónico (email) para navegador con un interfaz de usuario parecido a una aplicación de escritorio. Admite varios lenguajes. Roundcube usa el protocolo de acceso a mensajes de Internet (IMAP = Internet Message Access Protocol) para acceder a los correos en un servidor remoto. Soporta MIME para enviar archivos adjuntos y en particular proporciona libreta de contactos, gestión de carpetas, búsquedas de mensajes y verificación ortográfica.
Roundcube se puede usar para leer y enviar correos electrónicos de una de dos maneras: Usando una cuenta de correo alojada fuera de FreedomBox, como Riseup o Gmail, o bien con una cuenta alojada en FreedomBox. La segunda es posible si se despliega una app de servidor de correo como Postfix/Dovecot/Rspamd en FreedomBox. Actualmente Roundcube solo se puede configurar en uno de estos modos (no con ambos coexistiendo). Esto se controla con la opción Usar solo el servidor de correo local mail de la página de configuración de la app de Roundcube.
24.2. Privacidad con Correo Electrónico
En el primer caso solo obtienes privacidad sobre tus borradores. Una vez envías el correo una copia reside en el servicio externo (Riseup, Gmail, etc), salvo que la borres expresamente. En cualquier caso tu tráfico transita a través de ellos.
En el segundo caso (autoalojando) tu copia del correo reside en tu servidor FreedomBox. Pero solo mantienes privacidad mientras el destinatario también use un sistema privado y no revele tu contenido.
24.3. Usar Roundcube
Tras instalar Roundcube se puede acceder a él en https://<tu_freedombox>/roundcube. Introduce tu usuario y contraseña. El usuario de muchos servicios de correo electrónico suele ser la propia dirección completa, como usuario_de_ejemplo@servicio_de_ejemplo.org, no solo el usuario usuario_de_ejemplo. Introduce la dirección del servidor IMAP de tu servicio de correo electrónico en el campo Servidor. Puedes probar a poner aquí tu nombre de dominio como servicio_de_ejemplo.org si la dirección es usuario_de_ejemplo@servicio_de_ejemplo.org y si esto no funciona consulta la dirección del servidor IMAP en la documentación de tu proveedor de correo electrónico. Se recomienda encarecidamente usar una conexión cifrada a tu servidor IMAP. Para ello inserta el prefijo "imaps://" al principio de la dirección del servidor IMAP. Por ejemplo, imaps://imap.servicio_de_ejemplo.org.
24.4. Usar Gmail con Roundcube
Si quieres usar Roundcube con tu cuenta Gmail necesitas habilitar primero el ingreso con contraseña en las preferencias de tu cuenta Google porque Gmail no va a permitir por defecto que ingresen aplicaciones mediante contraseña. Para hacerlo visita las preferencias de la Cuenta Google y habilita Apps Menos seguras. A continuación ingresa en Roundcube introduciendo tu dirección de Gmail como Usuario y tu contraseña. En el campo servidor pon imaps://imap.gmail.com.
24.5. Enlaces externos
Sitio web: https://roundcube.net
Documentación de uso: https://roundcube.net/support/
25. RSS Bridge (Generador de feeds RSS)
|
Disponible desde: versión 22.16
25.1. ¿Qué es RSS Bridge?
RSS-Bridge es una aplicación web capaz de generar feeds RSS y Atom para sitios web que no los tienen. Por ejemplo, con ayuda de RSS Bridge puedes suscribirte a canales de YouTube sin necesidad de darte de alta.
25.2. Ejemplo de uso
25.2.1. Suscribirse a una cuenta de YouTube
En este ejemplo veremos una de las maneras de suscribirse a un canal de YouTube dado.
Visita el canal de YouTube y copia su nombre al portapapeles.
Encuentra "YouTube Bridge" y haz clic en mostrar más.
Pega el nombre del canal en la sección Nombre personalizado y haz clic en Generar Feed.
De entre los tipos de feed disponibles selecciona Atom. Si empleas un navegador basado en Chromium esto abrirá el feed Atom en una pestaña nueva, que podrás copiar fácilmente a un lector de feeds como Tiny Tiny RSS.
25.3. Suscribirse a un feed con Tiny Tiny RSS
- Copia la URL que generó RSS Bridge.
En Tiny Tiny RSS selecciona Suscribirse a un feed en el menú desplegable de la derecha.
Pega el enlace generado del paso 1 en la caja de texto y selecciona Este feed requiere autenticación.
Envía el nombre de usuario en FreedomBox y la contraseña, y haz clic en Suscribirse.
Para una descripción más detallada de Tiny Tiny RSS, visita su página en el manual.
25.4. Enlaces externos
Sitio web: https://rss-bridge.github.io/rss-bridge/
Documentación de usuario: https://rss-bridge.github.io/rss-bridge/General/Project_goals.html
26. Samba (Almacenamiento de Ficheros en Red)
|
Disponible desde: versión 19.22
Samba te permite tener una carpeta compartida en la red local que se puede usar desde multiples ordenadores con sistemas operativos diferentes. De ahora en adelante nos referiremos a estas carpetas como "shares". Puedes tener una carpeta personal compartida por tus propios dispositivos (share casero), una compartida con un grupo de confianza (share de grupo) o una compartida con todo dispositivo de la red (share abierto).
Samba te permite tratar un share como si fueran carpetas locales de tu ordenador. No obstante los shares solo están disponibles en la red local.
Para aprender más acerca de Samba, mira la documentación de usuario de su wiki.
26.1. Usar Samba
Tras la instalación, puedes elegir qué discos compartir. Los shares habilitados están accesibles en el administrador de archivos de tu ordenador en la ruta \\freedombox (en Windows) o smb://freedombox.local (en Linux y Mac). Hay 3 tipos de share para elegir:
Share abierto - accesible a cualquiera en tu red local.
Share de grupo - accesible solo a usuarios FreedomBox que estén en el grupo freedombox-share.
Share casero - cada usuario del grupo freedombox-share puede tener su propio espacio privado.
26.1.1. Conectar desde dispositivos Android
Para acceder a shares Samba desde un dispositivo Android instala el "Cliente Samba para Android" desde F-Droid o Google Play. Introduce smb://freedombox.local/<disco> como ruta del share en la app. Tus carpetas compartidas deberían estar visibles en la app de administración de archivos. También VLC para Android puede detectar automáticamente y usar los shares Samba.
26.1.2. Conectar desde dispositivos macOS
Abre una ventana de Finder window en tu Mac.
Usa Ir -> Conectarse al servidor... desde el menú o pulsa Cmd+K para abrir el diálogo Conectarse al servidor.
Introduce la dirección de tu compartición Samba, p.ej. smb://192.168.0.105/disco y haz clic en Conectar.
26.2. Integración con otras apps
La app Transmission de FreedomBox proporciona una configuración para permitir que las descargas se graben directamente en un share Samba.
Si quieres dejar disponibles en Samba ficheros sincronizados con Syncthing tienes que asegurarte de sincronizar en la carpeta compartida de Samba. Además, para dejar las carpetas de Syncthing disponibles en carpetas abiertas o de grupo de Samba necesitas asegurarte de pulsar el botón "Permisos > Ignorar" bajo la pestaña "Avanzado" de la carpeta en el interfaz web de usuario de Syncthing. Esto permitirá escribir los ficheros mediante Samba.
26.3. Comparación con otras apps
26.3.1. Syncthing
Syncthing mantiene una copia de la carpeta compartida en cada dispositivo con el que se comparte. Samba mantiene solo una copy en tu dispositivo FreedomBox.
Syncthing puede sincronizar tus carpetas compartidas entre dispositivos por Internet. Los shares Samba solo están disponibles en tu red local.
Como Syncthing es primordialmente una solución de sincronización, tiene funcionalidades como resolución de conflictos y versionado. Samba solo tiene una copia del fichero, así que no necesita tales funcionalidades. Por ejemplo, si dos personas están editando una hoja de cálculo almacenada en un share Samba el último que grabe el fichero gana.
26.4. Enlaces externos
Sitio web del proyecto original: https://www.samba.org
Documentación de uso del proyecto original: https://www.samba.org/samba/docs
Samba en el wiki de Debian: https://wiki.debian.org/Samba
27. Searx (Búsqueda Web)
|
Disponible desde: versión 0.24.0
27.1. Acerca de Searx
Searx es un metabuscador. Un metabuscador agrega los resultados de varios buscadores y los presenta en un interfaz unificado.
Lee más acerca de Searx en su sitio web oficial.
27.2. Captura de pantalla
27.3. Vídeo
Searx installation and first steps (14 MB)
27.4. ¿Por qué usar Searx?
27.4.1. Personalización y Burbujas por Filtrado
Los buscadores tienen la capacidad de perfilar a sus usuarios y les sirven los resultados más relevantes para ellos, encerrandoles en burbujas por filtrado y distorsionando la visión que la gente tiene del mundo. Los buscadores tienen un incentivo financiero para servir publicidad interesante a sus usuarios, ya que incrementa la probabilidad de que hagan clic en los anuncios.
Un metabuscador es una solución posible a este problema, ya que agrega resultados de multiples buscadores puenteando así los intentos de personalización de los buscadores.
Searx evita almacenar cookies de buscadores para eludir traceos y perfilados de buscadores.
27.4.2. Filtrado de publicidad
Searx filtra anuncios de los resultados de búsqueda antes de servirlos al usuario, con lo que mejora la relevancia de tus resultados y te evita distracciones.
27.4.3. Privacidad
Searx usa por defecto HTTP POST en vez de GET para enviar tus consultas de búsqueda a los buscadores, así que si alguien espía tu tráfico no podrá leerlas. Tampoco se almacenarán las consultas en el histórico de tu navegador.
Nota: Searx usado desde la barra (omnibar) del navegador Chrome hará peticiones GET en vez de POST.
27.5. Searx en FreedomBox
En FreedomBox Searx usa las credenciales únicas de Single Sign On. Esto implica que tienes que haber ingresado en tu FreedomBox con el navegador en el que estás usando Searx.
- Se puede acceder fácilmente a SearX a través de Tor.
Se puede añadir a Searx a la barra de buscadores del navegador Firefox. Mira la Ayuda de Firefox acerca de este asunto. Una vez esté Searx añadido también podrás establecerlo como tu buscador por defecto.
- Searx también ofrece resultados de búsqueda en formatos csv, json y rss, que se pueden usar desde scripts para automatizar algunas tareas.
27.6. External links
Sitio web del proyecto original: https://searx.github.io/searx/
Documentación de uso del proyecto original: https://searx.github.io/searx/user/index.html
Wiki del proyecto original: https://github.com/searx/searx/wiki
28. Shaarli (Marcapáginas)
|
Disponible desde: versión 21.15
28.1. ¿Qué es Shaarli?
Shaarli es un marcapáginas personal (de usuario único) para instalar en tu FreedomBox. Se puede usar también para micro-blogging, portapapeles, bloc de notas en red y archivo de recortes. Shaarli está diseñada como un clon de delicious sin base de datos. Como tal, proporciona servicios muy rápidos, respaldos fáciles y enlaces de importación/exportación en forma de mrgapáginas para navegadores de escritorio o móviles. Los enlaces se pueden almacenar públicos o privados. Shaarli produce feeds ATOM y RSS desde su interfaz minimalista.
28.2. Enlaces externos
Sitio web del proyecto original: https://shaarli.readthedocs.io/en/master/index.html
Documentación de uso del proyecto original: https://shaarli.readthedocs.io/en/master/Usage/
29. Shadowsocks (Eludir censura)
|
Disponible desde: versión 0.18.0
29.1. ¿Qué es Shadowsocks?
Shadowsocks es una herramienta para reenviar peticiones de red a un servidor remoto de forma segura. Consiste de dos partes: (1) un servidor Shadowsocks y (2) un cliente Shadowsocks con un proxy SOCKS5.
Nota: Shadowsocks está disponible en FreedomBox a partir de la versión 0.18.
Se puede emplear Shadowsocks para eludir el filtrado de Internet y con ello la censura. Esto requiere un servidor Shadowsocks situado donde pueda acceder con libertad a Internet, sin filtros.
Tu FreedomBox puede ejecutar un cliente Shadowsocks que puede conectar con el servidor Shadowsocks. Ejecutará también un proxy SOCKS5. Los dispositivos locales pueden conectar con este proxy, y sus datos se cifrarán y enrutarán a través del servidor Shadowsocks.
O bien tu FreedomBox puede ejecutar un servidor Shadowsocks para que los clientes Shadowsocks conecten con él. Los datos de estos clientes se cifrarán y enrutarán a través de este servidor.
29.2. Usar Shadowsocks
El uso de Shadowsocks sería así:
El cliente de Shadowsocks (FreedomBox) está en una región en la que partes de Internet están bloqueadas o censuradas.
- El servidor de Shadowsocks está en una región diferente que no tiene esos bloqueos.
FreedomBox proporciona un servicio de proxy SOCKS en la red local para que otros dispositivos hagan uso de la conexión Shadowsocks.
29.3. Configurar tu FreedomBox para el cliente Shadowsocks
Para habilitar el cliente Shadowsocks primero navega a la página del cliente Shadowsocks (Eludir censura) e instalalo.
Servidor: el servidor Shadowsocks no es la IP o la URL de FreedomBox, sino que será otro servidor o VPS configurado como tal (servidor Shadowsocks). También hay algunos servidores Shadowsocks públicos listados en la web, pero sé consciente de que quienquiera que opere el servidor puede ver a dónde van las peticiones y cualquier dato no cifrado que se transmita.
Para usar Shadowsocks una vez instalado configura la URL del proxy SOCKS5 en tu dispositivo, navegador o aplicación como http://<tu_freedombox>:1080/.
29.4. Configurar tu FreedomBox para el servidor Shadowsocks
Para habilitar el servidor Shadowsocks ve a su página (Ayudar a otros a eludir la censura) e instalalo.
Nota: En general, una FreedomBox se configuraría bien como servidor Shadowsocks o bien como cliente, ¡pero no como ambos!
Para que otros clientes Shadowsocks se conecten a tu servidor necesitarán conocer tu nombre de dominio, la contraseña y el método de cifrado.
29.4.1. Redirección de puertos
Si tu FreedomBox está detrás de un router, necesitarás configurar la redirección de los siguientes puertos para el servidor Shadowsocks:
- TCP 8388
- UDP 8388
29.5. Enlaces externos
Sitio web del proyecto original: https://shadowsocks.org
Documentación de uso del proyecto original: https://shadowsocks.org/doc/what-is-shadowsocks.html
30. Sharing (Publicación de Archivos)
|
Disponible desde: versión 0.25
30.1. ¿Qué es la app Sharing?
Sharing es una aplicación que te permite compartir contenido via web. El contenido compartido pueden ser archivos individuales o directorios completos.
El contenido se puede compartir públicamente o restringido a usuarios de una lista de grupos autorizados. Los usuarios autorizados podrán acceder al contenido compartido desde su navegador web en https://tu_freedombox/share/nombre_del_contenido. Los usuarios que no pertenezcan a ninguno de los grupos autorizados no verán ni accederán al contenido mediante este mecanismo.
30.2. Editando comparticiones
Para que los usuarios accedan al contenido mediante su navegador debe existir y tener una compartición. Una compartición es una entrada en la aplicación Sharing que relaciona:
- El Nombre (y por tanto la URL) que usarán los usuarios para solicitar el contenido,
- el Ruta de acceso al contenido a servir y
- el modo de compartición. Si es restringido, también contendrá la lista de grupos autorizados.
En el mismo servidor pueden coexistir múltiples comparticiones.
Sólo los administradores pueden crear, editar o eliminar comparticiones. Encontrarán la aplicación Sharing en la sección Aplicacions del interfaz web de FreedomBox. La aplicación Sharing es una aplicación web fácil de usar y con un interfaz evidente.
Cada compartición tiene su priopio ajuste de modo de compartición (pública o restrigida). Sólo los grupos que reconoce el servicio FreedomBox se pueden combinar en la lista de grupos autorizados. La aplicación Sharing no ofrecerá los grupos creados en el interfaz de línea de órdenes.
30.3. Provisionar/actualizar el contenido
El contenido se puede crear antes o después de crear la compartición y se pueden actualizar independientemente.
No hay que ser administrador para provisionar el contenido. Cualquier usuario con acceso de escritura en la ruta de acceso a la compartición puede crearlo o actualizarlo.
Varias comparticiones podrían apuntar al mismo contenido.
Si eres usuario de FreedomBox y tu administrador se niega a crearte comparticiones, y no necesitas restringir el acceso a tu contenido, todavía puedes recurrir al mecanismo de Sitios web de Usuario o a las redes entre pares (P2P) (Deluge o Transmission para Torrent) para publicar tus archivos.
30.4. Tecnicismos
Sharing compartirá el contenido usando el servidor web Apache que viene de serie.
30.5. Enlaces externos
Sitio web del proyecto original: https://projects.apache.org/project.html?httpd-http_server
Documentación de uso del proyecto original: https://httpd.apache.org/docs/2.4/en/mod/mod_alias.html
Apache en el wiki de Debian: https://wiki.debian.org/Apache
31. Syncthing (Sincronización de Archivos)
|
Disponible desde: versión 0.14.0
Con Syncthing instalado en tu FreedomBox puedes sincronizar contenido desde otros dispositivos a tu FreedomBox y vice-versa. Por ejemplo puedes mantener sincronizadas las fotos tomadas desde tu teléfono móvil con tu FreedomBox.
Syncthing es una solución de sincronización entre pares, no una de tipo cliente-servidor. Esto implica que FreedomBox no es realmente el servidor y tus otros dispositivos no son sus clientes. Desde la perspectiva de Syncthing todos son dispositivos equivalentes. Puedes emplear Syncthing para sincronizar tus archivos entre cualquiera de tus dispositivos. La ventaja que aporta FreedomBox consiste en que como es un servidor está encendida (casi) siempre. Supón que quieres sincronizar las fotos de tu teléfono con tu portátil. Si sincronizas tu teléfono con FreedomBox el portátil podrá obtenerlas desde la FreedomBox cuando vuelva a conectarse. No necesitas preocuparte de cuando se conectan los otros dispositivos. Si tu FreedomBox es uno de los dispositivos configurados con la carpeta compartida de Syncthing puedes estár tranquilo que tus otros dispositivos se sincronizarán en cuanto se conecten.
Tras instalarlo sigue estas instrucciones del proyecto Syncthing: Arrancando.
Syncthing permite compartir selectivamente carpetas individuales. Antes de compartir los dispositivos tienen que estar emparejados leyendo códigos QR o introduciendo manualmente identificadores de dispositivo. Syncthing tiene un servicio de autodescubrimiento para identicar fácilmente a los otros dispositivos de la misma subred que tengan Syncthing instalado.
Para acceder al cliente web de la instancia Syncthing que se ejecuta en tu FreedomBox, usa la ruta /syncthing. Actualmente este cliente web está accesible solo a los usuarios de FreedomBox que tengan privilegios de administrador aunque en alguna futura versión podría estarlo a todos los usuarios de FreedomBox.
Syncthing tiene apps Android disponibles en F-Droid y Google Play. También hay disponibles aplicaciones de escritorio multiplataforma.
Para más información acerca de Syncthing visita su sitio web oficial y su documentación.
31.1. Sincronizar via Tor
Syncthing debe sincronizar automáticamente con tu FreedomBox incluso cuando esta solo sea accesible como servicio Tor Onion.
Si quieres enrutar tu cliente Syncthing via Tor configura la variable de entorno all_proxy:
$ all_proxy=socks5://localhost:9050 syncthing
Para más información mira la documentación de Syncthing acerca de el uso de proxies.
31.2. Evitar repetidores de Syncthing
Syncthing emplea por defecto conexiones dinámicas para conectar con otros pares. Esto significa que si estás sincronizando a través de Internet, los datos quizá tengan que atravesar repetidores de Syncthing públicos para alcanzar tus dispositivos. Esto desaprovecha que tu FreedomBox tenga una dirección IP pública.
Al añadir tu FreedomBox como dispositivo en otros clientes de Syncthing establece tu dirección como "tcp://<mi.dominio.freedombox>" en vez de "dinámica". Esto permite a tus pares Syncthing conectarse diréctamente a tu FreedomBox eludiendo la necesidad de repetidores. También permite sincronización rápida bajo demanda si no quieres mantener a Syncthing ejecuándose todo el tiempo en tus dispositivos móviles.
31.3. Usar Syncthing con otras aplicaciones
31.3.1. Administrador de contraseñas
Los administradores de contraseñas que almacenan sus bases de datos en ficheros son susceptibles de sincronizarse usando Syncthing. El siguiente ejemplo describe el uso de un administrador de contraseñas libre llamado KeePassXC en combinación con Syncthing para servir como remplazo para administradores de contraseñas privativos que almacenan tus contraseñas en la nube.
KeePassXC almacena usuarios, contraseñas, etc en ficheros con la extensión .kdbx. Estos ficheros .kdbx se pueden almacenar en una carpeta compartida Syncthing para mantenerlos sincronizados en multiples máquinas. Hay disponibles, tanto para escritorio como para dispositivos móviles, aplicaciones de software libre que pueden leer este formato de fichero. Habitualmente sólo tienes que apuntar la aplicación al fichero .kdbx e introducir la contraseña maestra para acceder a tus credenciales almacenadas. Por ejemplo, el mismo fichero .kdbx se puede consultar empleando KeePassXC en el escritorio y KeePassDX en Android. Instalando una extensión se puede usar también KeePassXC para rellenar credenciales en los campos de ingreso (login) en el navegador.
31.3.2. Anotaciones y Bitácoras
Varias aplicaciones de notas permiten guardar las notas en ficheros de texto plano o en formato _Markdown_. logseq es una de ellas, con licencia AGPLv3. Se puede usar para escribir una bitácora o páginas sueltas por temas enlazadas formando un esquema. El texto no se guarda cifrado. Un equipo puede usar logseq como software de notas en vez de un wiki.
Zim es un software de wiki disponible en escritorios Debian. Puedes configurar el almacenaje de un wiki Zim personal para que use un carpeta Syncthing.
Si tus notas van a ser siempre personales, hay un solución más simple. Se llama "quine". Un wiki implemented como quine es un único fichero HTML con CSS y JavaScript que lo vuelven útil para tomar notas, llevar un diario o como documentación. Tras editar el fichero HTML de quine en un navegador puedes grabarlo sobreescrbiendo el fichero HTML de tu carpeta Syncthing folder. Los Quines son la solución wiki más simple para anotaciones personales que funciona en todos los sistemas operativos y que solo requiere un navegador web. TiddlyWiki y FeatherWiki son muy populares.
31.4. Enlaces externos
Sitio web del proyecto original: https://syncthing.net
Documentación de uso del proyecto original: https://docs.syncthing.net
32. TiddlyWiki (Bloc de notas no lineal)
|
Disponible desde: versión 24.17
TiddlyWiki en un bloc de notas web no lineal interactivo para capturar y organizar información compleja. Puede servir como un sistema unipersonal de gestión de conocimientos. Es portable (un único archvo HTML), altamente personalizable y fácil de usar. Pese a ser un único archivo HTML TiddlyWiki puede incrustar multiples tipos de multimedia - imagenes, audio, video y archivos PDF (o apuntar a ellos mediante rutas, aunque esto ya no es tán portable). También puede almacenar datos en formato JSON.
32.1. TiddlyWiki en FreedomBox
FreedomBox incluye una implementación nativa de un nido Feather Wiki (un servidor para guardar tus archivos de wiki). Se usa el mismo para alojar los archivos TiddlyWiki. Esta implementación no es tán eficiente como el servidor oficial TiddlyWiki, que puede grabar entradas (Tiddlers) individualmente, en vez de grabar todo el archivo HTML.
32.1.1. Consideraciones respecto al ancho de banda en la configuración de grabación automática
Cada archivo TiddlyWiki vacío es 40 veces mayor (2.4 MB) que uno de Feather Wiki (60 KB). TiddlyWiki viene con la grabación automática activa por omisión. Esto provoca que se transmita al servidor el archivo entero cada vez que se guarda un Tiddler. En Feather Wiki el texto es corrido así que quizá escribas páginas largas pero TiddlyWiki invita a escribir muchos Tiddlers cortos, lo que deviene en más grabaciones por el mismo texto. Los archivos de TiddlyWiki tienden a crecer a medida que añades contenido multimedia. Hay a quien le crecen sus wikis hasta 100 MB con el transcurso de los años.
Si editas con datos móviles o por conexión telefónica, cientos de grabaciones de 2.4 MB + contenido se notan. En estos casos se recomienda deshabilitar la grabación automática en los ajustes y grabar a mano.
32.2. Casos de uso
Wiki personal: TiddlyWiki se puede usar como wiki personal para almacenar todo tipo de información en notas cortas llamadas Tiddlers. Puede alojar una pequeña base de datos de perlas de conocimiento personal enlazadas en estructura de grafo y fáciles de busar y organizar.
Notas de investigación: TiddlyWiki se puede usar como un tarjetero o un segundo cerebro. Esto puede llevar a revelaciones creativas cruzando conceptos diferentes.
Diario cifrado: TiddlyWiki soporta protección mediante contraseña y secuencias de entradas (un Tiddler con la fecha del día como título). Tu diario personal puede ser un archivo TiddlyWiki.
TiddlyWiki se puede emplear para gestión de proyectos, por ejemplo planificar una boda.
Aunque el formato de TiddlyWiki's es declarativo se puede usar para crear contenido interactivo como tarjetas flash y listas auto-actualizadas. Soporta plantillas y macros en JavaScript.
Blog de enlaces: Un archivo TiddlyWiki puede reemplazar a Shaarli si quieres mantener tus marcapáginas privados.
TiddlyWiki se puede usar como gestor de incidencias para tus proyectos de GitWeb.
32.3. Actualizaciones
Actualizar TiddlyWiki es un proceso manual.
Salva una copia local del fichero desde tu navegador. Haz clic con el botón derecho del ratón -> Guardar como...
Usa el Asistente de actualización del sitio web oficial.
- Tras descargar el archivo actualizado, cárgalo al navegador para verificar tu contenido.
Reemplaza el archivo antiguo en tu FreedomBox con el archivo actualizado.
Si alguna vez pierdes un archivo TiddlyWiki puedes recuperar una copia ligaramente anticuada de la app de Copias de Respaldo. Es mejor conservar tu copia local tras la actualización, si quieres revertir.
32.4. Consejos
32.4.1. Establecer un favicon
A diferencia de Feather Wiki, TiddlyWiki no usa automaticamente el favicon de tu FreedomBox's. Para configurarlo sigue estos pasos:
Crea un tiddler nuevo con el títluo $:/favicon.ico. Deja vacía la sección de contenido.
En el desplegable Tipo selecciona icono ICO (imagen/icono-x).
En la sección Añadir un campo nuevo: pon el primer campo a _canonical_uri y el segundo a https://<la-ulr-de-tu--freedombox>/favicon.ico.
- Graba el tiddler nuevo y el wiki.
Ver: Establecer un favicon: TiddlyWiki
Tambiñen pueder user una imagen como favicon para cada TiddlyWiki. Usar favicons diferentes facilita identificar la pestaña en el navegador. Pongamos que el archivo TiddlyWiki es tu diario personal y como favicon quieres ponerle la imagen "notebook.png" que aparenta un diario.
- Abre la carpeta donde esté la imagen mediante el explorador de archivos de tu escritorio.
Arrastrala a la pestaña del navegador de TiddlyWiki.
Se abrirá un tiddler especial llamado $:/import.
En este tiddler tendrás la opción de renombrar el archivo. Renómbralo a $:/favicon.ico.
Haz clic en el botón Importar y graba el wiki.
32.5. Enlaces externos
Proyecto original: https://tiddlywiki.com
Grok TiddlyWiki (libro electrónico en línea): https://groktiddlywiki.com/read/
33. Tiny Tiny RSS (Lector de Feeds de Noticias)
|
Disponible desde: versión 0.9
Tiny Tiny RSS es un lector y agregador de feeds de noticias (RSS/Atom) diseñado para leer noticias desde cualquier lugar con una experiencia lo más parecida posible a una aplicación de escritorio.
Cualquier usuario creado mediante el interfaz web de FreedomBox podrá ingresar y usar esta app. Cada usuario tiene sus propios feeds, estado y preferencias.
33.1. Usar el interfaz web
Cuando esté habilitado Tiny Tiny RSS estará disponible en la ruta /tt-rss del servidor web. Cualquier usuario creado mediante FreedomBox podrá ingresar y usar esta app.
33.1.1. Añadir un nuevo feed
1. Ve a la página cuyo feed quieras y copia su enlace RSS/Atom feed.
2. Selecciona "Subscribirse al feed.." en el desplegable Acciones.
3. Pega la URL que has copiado en el diálogo que aparece y pulsa el botón Subscribirse.
Dale un minuto a la aplicación para obtener los feeds.
En algunos sitios web el botón de feeds RSS no está claramente visible. En tal caso simplemente pega la URL del sitio web en el diálogo Subscribirse y deja que TT-RSS detecte automáticamente los feeds RSS que haya en la página.
Puedes probarlo ahora con la página principal de WikiNews
Como puedes ver en la imagen seguiente TT-RSS ha detectado y añadido el feed Atom de WikiNews a nuestra lista de feeds.
Si no quieres conservar este feed haz clic con el botón derecho del ratón en el feed de la imagen anterior, selecciona Editar feed y dale a Desubscribir en el diálogo que aparece.
33.1.2. Importar tus feeds desde otro lector
Encuentra en tu lector de feeds previo una opción para Exportar tus feeds a un fichero. Si tiene que elegir entre varios formatos elige OPML. Pongamos que tu fichero de feeds exportados se llama Subscriptions.opml
Haz click en la esquina superior izquierda el menú Acciones y selecciona Preferencias. Se te llevará a otra página.
En la cabecera superior selecciona la 2ª solapa llamada Feeds. Tiene varias secciones y la 2ª se llama OPML. Selecciónala.
Para importar tu fichero Subscriptions.opml a TT-RSS,
Haz clic en Examinar... y selecciona el fichero en tu sistema de archivos.
Haz clic en Importar mi OPML
Tras importar se te llevará a la sección Feeds que está en la página encima de la de OPML. Puedes ver que los feeds del lector previo figuran ahora importados en Tiny Tiny RSS. Ahora puedes empezar a usar Tiny Tiny RSS como tu lector principal.
33.2. Usar la app para dispositivos móviles
La app oficial para Android del proyecto Tiny Tiny RSS funciona con el servidor Tiny Tiny RSS de FreedomBox. Se sabe que la aplicación anterior TTRSS-Reader no funciona.
Desafortunadamente la app oficial para Android solo está disponible en la Play Store de Google y no en F-Droid. Todavía puedes obtener el código fuente y compilar el fichero apk por tu cuenta.
Para configurarla, primero instálala y entonces en la página de configuración pon https://<tu_freedombox>/tt-rss-app/ como URL. Pon tu usuario y contraseña en los detalles del Login así como los detalles de Autenticación HTTP. Si tu FreedomBox no tiene un certificado HTTPS válido configuralo para que admita cualquier certificado SSL y cualquier servidor.
33.3. Suscribirse a contenidos
33.3.1. Cualquier contenido en general
Se puede usar RSS Bridge junto con Tiny Tiny RSS para generar enlaces Atom/RSS para sitios web que no proporcionan ninguno.
33.3.2. YouTube
1. Abre un editor de texto en tu ordenador y copia la siguiente línea: https://www.youtube.com/feeds/videos.xml?channel_id=</code>
2. Abre un video del canal al que quieres suscribirte. En este ejemplo nos suscribiremos al canal de la FreedomBox Foundation en !Youtube.
3. Bajo el video haz clic con el botón derecho sobre el nombre del canal y selecciona Copiar Enlace. Tienes que asegurarte de copiar así la URL del canal porque hay muchos canales con URL personalizada y así obtienes la URL con su identificador genérico.
4. Pega también este enlace en tu fichero de texto.
5. Con ambos enlaces selecciona el texto que viene detrás de /channel/ y ponlo junto al primer enlace como se muestra en las imágenes:
6. Ahora puedes usar este enlace como un feed RSS válido.
Además puedes mostrar vídeos dentro de Tiny Tiny RSS:
1. Selecciona "Preferencias" en el desplegable Acciones.
2. Selecciona Plugins
3. Activa el plugin titulado "af_youtube_embed"
4. Haz clic en "Habilitar los plugins seleccionados"
Se recomienda encarecidamente usar alguna de las extensiones orientadas a la privacidad, como uBlockOrigin para evitar publicidad y rastreadores intrusivos.
33.3.3. Reddit
1. Toma el enlace del subreddit al que quieres suscribirte.
2. Añade .rss detras de la URL del subreddit.
Por ejemplo, el subreddit de FreedomBox es https://www.reddit.com/r/Freedombox/, y https://www.reddit.com/r/Freedombox/.rss es su feed RSS.
33.4. Enlaces externos
Sitio web del proyecto original: https://tt-rss.org
Documentación de uso del proyecto original: https://tt-rss.org/wiki.php
34. Tor (Red para el anonimato)
|
Disponible desde: versión 0.3
34.1. ¿Qué es Tor?
Tor es una red de servidores operada por voluntarios. Permite a los usuarios de esos servidores mejorar su privacidad y seguridad cuando navegan por Internet. Tu y tus amigos podéis acceder a tu FreedomBox a través de la red Tor sin revelar su dirección IP. Activando la aplicación Tor en tu FreedomBox podrás ofrecer servicios remotos (chat, wiki, file sharing, etc...) sin mostrar tu localización. Esta aplicación te dará una protección mejor que un servidor web público porque estarás menos expuesto a gente intrusiva.
Para descargar paquetes de software a través de Tor, o ejecutar un proxy SOCKS que salga a internet por Tor, ve a Proxy via Tor.
34.2. Usar Tor para navegación anónima
Tor Browser es la manera recomendada para navegar la web a través de Tor. Puedes descargar Tor Browser desde https://www.torproject.org/projects/torbrowser.html y seguir sus instrucciones para instalarlo y ejecutarlo.
34.3. Usar Servicio Tor Onion para acceder a tu FreedomBox
El Servicio Tor Onion proporciona una manera de acceder a tu FreedomBox incluso aunque esté detrás de un router, cortafuegos, o redirector NAT (p.ej. si tu proveedor de Internet no proporciona una dirección pública IPv4 para tu router). Para habilitar el Servicio Tor Onion primero navega a la página Red para el anónimato (Tor). (Si no la ves haz clic en el logo de FreedomBox de arriba a la izquierda de la página y ve a la página principal de Apps.) En la página Red para el anónimato (Tor), bajo Configuración, habilita la caja Habilitar los Servicios Tor Onion y pulsa el botón de Actualizar configuración. Tor se reconfigurará y se reiniciará.
Transcurrido un rato la página se refrescará bajo Estado verás la tabla que lista la dirección .onion del servicio. Copia toda la dirección (que termina en .onion) y pégala en el campo dirección de Tor Browser. Deberías poder acceder a tu FreedomBox. (Quizá veas un aviso de certificado porque FreedomBox tiene un certificado autofirmado.)
- Onion
Actualmente solo HTTP (puerto 80), HTTPS (puerto 443) y SSH (puerto 22) están accesibles a través del Servicio Tor Onion configurado en la FreedomBox.
34.4. Apps accesibles via Tor
Las siguientes apps se pueden acceder a través de Tor. Esta lista puede ser incompleta.
Calendario y Libreta de direcciones (Radicale)
Sincronización de ficheros (Syncthing)
Búsqueda Web (Searx)
Wiki (MediaWiki)
Wiki y Blog (Ikiwiki)
34.5. Ejecutar un nodo Tor
Cuando se instala Tor se configura por defecto para ejecutarse como puente a la red (bridge relay). Esta opción se puede deshabilitar en la página de configuración de Tor de FreedomBox.
En la parte inferior de página de Tor de FreedomBox hay una lista de puertos que usa el puente a la red Tor. Si tu FreedomBox está detrás de un router necesitarás configurar la redirección de puertos de tu router para que estos puertos sean accesibles desde Internet.
Los requisitos para ejecutar un puente a la red se listan en la Tor Relay Guide. En resúmen, se
- recomienda que un puente tenga disponibles para Tor al menos 16 Mbit/s (Mbps) de ancho de banda para subida y bajada. Mejor más.
- requiere que a se le permita al puente usar un mínimo de 100 GByte de tráfico mensual de salida y de entrada.
recomienda que un nodo sin salida (mero reenrutador) de <40 Mbit/s tenga al menos 512 MB de RAM disponible; Uno más rápido de 40 Mbit/s debería tener al menos 1 GB de RAM.
34.6. Enlaces externos
Sitio web del proyecto original: https://www.torproject.org
Documentación de uso del proyecto original: https://support.torproject.org
35. Proxy Tor (Red Anónima)
|
Disponible desde: versión 23.14
35.1. ¿Qué es el Proxy Tor?
Tor es una red de servidores operada por voluntarios. Permite a los usuarios de esos servidores mejorar su privacidad y seguridad cuando navegan por Internet.
La aplicación de proxy para Tor proporciona la posibilidad de descargar paquetes de software por Tor, mejorando el anonimato. También proporciona un proxy web en tu FreedomBox para redes internas, que varias apps pueden usar para acceder a internet via Tor. En caso de censura del proveedor de internet se pueden configurar pasarelas para circundarla.
Para usar el servicio Tor Onion o ejecutar un repetidor Tor ve a la app Tor.
35.2. Navegación anónima con el navegador Tor
El navegador Tor es la manera recomendada de navegar la web usando Tor. Puedes descargar el navegador Tor de https://www.torproject.org/projects/torbrowser.html y seguir sus instrucciones para instalarlo y usarlo.
35.3. Usar el Proxy Tor como un proxy SOCKS (Avanzado)
El Proxy Tor proporciona un puerto SOCKS al que se pueden conectar otras aplicaciones para enrutar su tráfico a través de la red Tor. Este puerto está accessible en cualquier interfaz configurado en la zona interna del cortafuegos. Para configurar la aplicación, asigna el anfitrión SOCKS a la dirección IP de la conexión de red interna y pon el puerto SOCKS a 9050.
35.3.1. Ejemplo con Firefox
Tu navegador web se puede configurar para que toda tu actividad de navegación pase por la red Tor. Esto permite eludir la censura y también oculta tu dirección IP a los sitios web. Para el anonimato se recomienda el navegador Tor.
Configura la dirección IP local de tu FreedomBox y el puerto 9050 como proxy SOCKS v5 en Firefox. Hay extensiones que facilitan (des)activar el proxy.
Con el proxy SOCKS configurado, puedes acceder a cualquier URL onion directamente desde Firefox. Si también habilitas la app de Tor, FreedomBox tendrá una dirección onion v3 a la que puedes conectarte a tavés de la red Tor (anótala para emergencias).
35.4. Eludir la censura de Tor
Si tu proveedor de internet te bloquea el tráfico a la red Tor puedes usar pasarelas para acceder.
1. Obtén la configuración de la pasarela de la base de datos de pasarelas Tor
2. Añade las líneas a la configuración del proxy Tor en FreedomBox como se muestra a continuación.
35.5. Enlaces externos
Sitio web del proyecto original: https://www.torproject.org
Documentación de uso del proyecto original: https://support.torproject.org
35.5.1. Clientes compatibles
FreedomBox recomienda algunas aplicaciones cliente. Selecciona su icono en la página de Aplicaciones y haz clic en el botón> Aplicaciones Cliente.
El proxy Tor se puede usar configurando el proxy en tu navegador web. O mejor, usando el Navegador Tor
Descargar el navegador Tor: https://www.torproject.org/download/
36. Transmission (Compartición distribuída de archivos mediante BitTorrent)
|
Disponible desde: versión 0.5
36.1. ¿Qué es Transmission ?
Transmission es un nodo (servidor y cliente, ambos a la vez) BitTorrent.
BitTorrent es un protocolo de comunicaciones para compartir ficheros entre pares (P2P = peer-to-peer).
No es anónimo; debes asumir que otros puedan ver qué ficheros estás compartiendo.
- Este protocolo destaca compartiendo ficheros grandes y populares.
Hay 2 nodos web para BitTorrent disponibles en FreedomBox: Transmission y Deluge. Tienen funcionalidades similares pero quizá prefieras uno sobre otro.
Transmission es un cliente BitTorrent ligero, famoso por su simplicidad y una configuración por defecto que "símplemente funciona".
36.2. Captura de pantalla
36.3. Usar Transmission
Tras instalar Transmission está accesible en https://<tu freedombox>/transmission. Transmission emplea el ingreso único de FreedomBox lo que significa que si has ingresado en tu FreedomBox puedes acceder diréctamente a Transmission sin tener que volver a introducir las credenciales. Si no, se te pedirá que ingreses primero y luego se te redirigirá a la app Transmission.
36.4. Consejos
36.4.1. Transferir Descargas desde la FreedomBox
Se puede añadir el directorio de descargas de Transmission como directorio compartido en la app Sharing y así acceder a tus descargas en este directorio compartido empleando un navegador web.
(Avanzado) Si tienes acceso SSH a tu FreedomBox puedes usar sftp o scp para ver el directorio de descargas usando un gestor de archivos o un navegador apropiados
36.5. Redirección de puertos
Si tu FreedomBox está detras de un router quizá quieras mejorar la comunicación de Transmission con otros pares redirigiendo en el router los siguientes puertos:
TCP 51413 (o el puerto de escucha de pares que tengas configurado en Transmission)
36.6. Usar Apps Remotas
Para controlar Transmission en FreedomBox, además del interfaz web se pueden usar aplicaciones móviles y de escritorio. En en interfaz web de FreedomBox, en la página de la aplicación, se listan clientes probados y sus plataformas. Al configurar estos clientes la URL para conectar será /transmission-remote/rpc y el puerto 443.
36.7. Enlaces externos
- Proyectos originales:
Transmission: https://transmissionbt.com
BitTorrent: https://www.bittorrent.org
- Descripciones del protocolo:
Del proyecto original: https://www.bittorrent.org/introduction.html
De Wikipedia: https://es.wikipedia.org/wiki/BitTorrent
Transmission en el wiki de Deban: https://wiki.debian.org/Transmission
37. Sitios web de usuario (User Websites)
Disponible desde: versión 0.9.4
37.1. ¿Qué es User Websites?
User Websites es una ubicación del sistema de ficheros prefijada para que los servidores web permitan a los usuarios del sistema anfitrión exponer archivos estáticos a modo de sitio web a la red local y/o a internet de acuerdo a la configuración de la red y el cortafuegos.
El servidor web predeterminado en FreedomBox es Apache e implementa esto mediante un módulo específico.
37.2. Captura de pantalla
37.3. Usar User Websites
El módulo está siempre activado y el interfaz web de FreedomBox no ofrece configuración ni página de estado para este módulo. Para servir documentos con el módulo solo se necesita poner los documentos en un subdirectorio designado /home/<un_usuario_de_plinth>/public_html.
User websites servirá los archivos que haya en este directorio cuando se reciban peticiones con la URI ~<un_usuario_de_freedombox>. Por tanto para un dominio ejemplo.org con un usuario pepe una petición ejemplo.org/~pepe/index.html transferirá el fichero /home/pepe/public_html/index.html.
37.4. Crear la carpeta public_html y subir documentos
37.4.1. Visualmente desde Linux
Los administradores de archivos predeterminados de los escritorios Linux suelen soportar de serie el acceso a sistemas de ficheros remotos mediante SFTP. Entre otros, Nautilus en Gnome, Dolphin en KDE/Plasma y Thunar en XFCE. Esta estandarización permite usar procedimientos muy fáciles, similares y obvios:
Conectar con el administrador de archivos a tu FreedomBox:
- Nautilus en Gnome:
- Para lanzar Nautilus puedes buscar su icono de archivador, o buscar su nombre o la palabra "archivo".
- Al final del panel izquierdo encontrarás la opción "+ Otras ubicaciones".
Te lleva a una lista de ubicaciones. Encuentra "freedombox SFTP server" (así, en inglés) y dale.
La primera vez se te pedirán usuario y contraseña. Introduce tu usuario de FreedomBox y su contraseña. El diálogo te ofrecerá algunas opciones para recordarlos un cierto tiempo.
- Administrador de archivos de Plasma, alias Dolphin:
- Haz clic en la barra de ubicación en el extremo superior de la ventana.
Introduce ftp://freedombox.local
La primera vez se te pedirán usuario y contraseña. Introduce tu usuario de FreedomBox y su contraseña. El diálogo te ofrecerá alguna opción para recordarlos.
- Thunar en XFCE:
Teclea esto en la barra de navegación: sftp://usuario@freedombox.local, reemplazando 'usuario' por el nombre real de tu usuario en FreedomBox.
Imagino que la primera vez se te pedirán usuario y contraseña. Introduce tu usuario de FreedomBox y su contraseña.
- Nautilus en Gnome:
Se te debería mostrar el sistema de ficheros de FreedomBox. Entra en la carpeta home y luego entra en la subcarpeta de su usuario.
Si no hay una carpeta public_html créala: clic con el botón derecho del ratón, etc.
Arrastra tu(s) archivo(s) a la carpeta public_html.
- Deberías poder ir con tu navegador a la URL correspondiente y ver tus archivos.
37.4.2. Visualmente desde otras plataformas
Si quieres emplear clientes gráficos que sean software libre, instala:
FileZilla para Mac.
Spider o Ghost Commander, disponibles ambos en el repositorio de aplicaciones libres para Android F-Droid.
Su uso es similar al descrito para los escritorios Linux.
37.4.3. Mediante interfaz de linea de órdenes (CLI)
Normalmente cualquier sistema Unix, incluyendo a Linux en (casi) todos sus sabores y a Mac, traen de serie las utilidades ssh, scp y sftp. FreeDOS trae SSH2DOS. ¡No hace falta instalar nada. Ya está todo ahí!
Ejemplos:
Conectar con FreedomBox mediante SSH:
(reemplazando usuario por un nombre de usuario válido en FreedomBox y freedombox.local por el nombre de dominio o la IP de tu FreedomBox):
$ ssh usuario@freedombox.local
Si tus datos son correctos y tu FreedomBox está accesible la primera vez se te pedirá confirmar su identificación.
Luego se te pedira el usuario de FreedomBox y su contraseña.
A continuación se te mostrará el mensaje de bienvenida con el logotipo de la mariposa de FreedomBox's en arte ASCII (dibujada con letras).
El prompt cambia a usuario@freedombox:~$.
Una vez conectado crea la carpeta de tu sitio web mediante:
usuario@freedombox:~$ mkdir ~/public_html
...o crea la del sitio de otro usuario:
Usa el prefijo sudo así:
usuario@freedombox:~$ sudo mkdir /home/<el_otro_usuario>/public_html
e introduce tu contraseña.- Al crear una carpeta, por defecto te pertenece a tí la crees donde la crées. Por tanto, necesitarás poner como dueño al otro usuario:
usuario@freedombox:~$ sudo chown <el_otro_usuario>:<el_otro_usuario> /home/<el_otro_usuario>/public_htm
Antes de desconectar mejor verificas que public_html' se muestra entre los contenidos de la carpeta home` del otro usuario.
usuario@freedombox:~$ ls -l /home/<el_otro_usuario> ... drwxr-xr-x 2 <el_otro_usuario> <el_otro_usuario> 4096 jan 29 17:39 public_html ...
El nombre del otro usuario tiene que aparecer por duplicado en la línea de public_html y sus permisos deben ser drwxr-xr-x.
Ahora el otro usuario puede subir sus archivos con cualquiera de los clientes gráficos. Pídeles que lo comprueben.
Es una buena práctica de seguridad salir en vez de esperar simplemente a que la conexión caduque:
usuario@freedombox:~$ exit
Si quieres emplear la linea de órdenes también para subir contenido puedes
$ scp ruta/a/los/archivos usuario@freedombox.local:public_html/
Te pedirá tu contraseña en FreedomBox. A continuación deberías poder ir con tu navegador a la URL correspondiente y ver tus archivos.
Más acerca de ssh, scp y sftp con $ man ssh, $ man scp y $ man sftp.
37.5. Enlaces externos
Sitio web del proyecto original: https://httpd.apache.org/
- Documentación de uso del proyecto original:
Apache en el wiki de Debian: https://wiki.debian.org/Apache
38. WireGuard (Red Privada Virtual)
|
38.1. Acerca de WireGuard
WireGuard es red privada virtual (VPN) extremadamente sencilla aunque rápida y moderna que emplea cifrado de última generación.Puede ser un reemplazo útil para IPSec u OpenVPN.
38.2. Instalación
Puedes instalar WireGuard desde la sección Apps de la interfaz de FreedomBox.
38.3. Configuración - Debian Peers
Nota: FreedomBox trata estos pasos automáticamente. Así que solo necesitas seguirlos en clientes Debian que se conecten a FreedomBox, O en servidores Debian a los que FreedomBox se conecte.
38.4. Uso
- Tunel punto a punto
- Cliente VPN con ruta por omisión
38.5. Configuración - Clientes móviles
WireGuard tiene una implementación en espacio de usuario para dispositivos móviles disponible en la propia app. Funciona en Android e iOS. Aquí hay una lista completa de sistemas operativos compatibles.
El cliente se puede configurar de varias maneras:
38.5.1. Alternativa A - Crear una configuración a mano
Esta es autoexplicativa: te creas la configuración en el dispositivo móvil y transfieres las claves apropiadas a la configuración del servidor.
38.5.2. Alternativa B - Crear una configuración a partir de un archivo
Aquí tienes que comprimir a .zip el archivo de configuración del cliente, transferirlo al dispositivo, e importarlo a la app.
38.5.3. Alternativa C - Importarla leyendo un código QR (el método másseguro)
La versión 0.0.20180724 del cliente móvil soporta lectura de código QR.
Se puede emplear qrencode para generar códigos QR incluso desde el terminal/la consola usando carácteres UTF-8.
La syntaxis es:
# qrencode -t ansiutf8 < client.conf
Esto generará un código QR legible desde el cliente móvil.
La ventaja de este enfoque es que no hay necesidad de software adicional ni de transferir información sensible a través de canales de datos que podrían estar comprometidos.
38.6. Enlaces externos
Sitio web del proyecto original: https://www.wireguard.com
Documentación de uso del proyecto original: https://www.wireguard.com/quickstart/
WireGuard en el wiki de Debian: https://wiki.debian.org/WireGuard
39. WordPress (Sitio Web y Blog)
|
Disponible desde: version 21.7
39.1. ¿Qué es WordPress?
WordPress es una manera popular de crear y administrar sitios web y blogs. Es un sistema de gestión de contenidos que permite editar contenidos mediante una interfaz visual web. Para crear sitios web no se necesitan conocimientos de HTML u otro lenguaje de marcado. Se puede personalizar completamente la disposición y funcionalidad de las páginas web. Se puede seleccionar apariencias eligiendo temas. Tanto los interfaces de administración como las páginas web generadas son adecuadas para dispositivos móviles.
39.2. Configurar WordPress en FreedomBox
Para configurar WordPress, navega a la página WordPress (Website and Blog) e instálalo. WordPress necesita configurar un nombre de dominio válido. Anter de avanzar más establece un nombre de dominio en condiciones. Los dominios se configuran en la página Sistema -> Configurar. Accede al interfaz web de tu FreedomBox mediante el dominio que has configurado. Después visita el interfaz web de WordPress. Mostrará una página de configuración pidiendo el nombre del sitio y detalles para una nueva cuenta de administrador. Tras este paso WordPress está completamente configurado y listo. Ya puedes volver a la página de WordPress en FreedomBox y publicar tu instalación de WordPress si quieres.
39.3. Accesso Público
En la página de WordPress de FreedomBox se puede publicar la app. Por omisión nace privada para proteger el proceso de configuración inicial frente a que cualquiera se cree una cuenta de administrador. Solo está disponible para usuarios que ingresen en el interfaz de FreedomBox como administradores y estos tienen que cuidar de no activar el acceso público hasta que se haya completado el proceso de configuración inicial de WordPress'.
39.4. Usuarios
De momento, WordPress tiene sus propias cuentas de usuario independientes de las de FreedomBox. La primera cuenta que se crea en el proceso de configuración inicial es de un administrador. Tras ingresar con ella se pueden crear cuentas para ver, publicar, o administrar desde la propia interfaz de WordPress.
Solo se pueden hacer cambios al contenido y configuración de WordPress previo ingreso. Sin embargo por omisión no hay enlace desde el sitio web o el blog para llegar a la página de ingreso. Guarda la dirección o teclea directamente en el navegador https://<mi-nombre-de-dominio>/wordpress/wp-admin/ para llegar a la interfaz de administración.
39.5. WordPress como página principal
Se puede establecer un sitio web WordPress bonito y bien personalizado como página principal para tu FreedomBox en la página Sistema -> Configurar de la interfaz web de FreedomBox. Por ejemplo, si el nombre de dominio de tu FreedomBox es mifreedombox.mola y has establecido WordPress como su página de inicio, al visitar https://mifreedombox.mola te llevará a https://mifreedombox.mola/wordpress/ en vez de a la interfaz web de FreedomBox.
39.6. Nombre de Dominio
Cuando se configura WordPress por primera vez WordPress toma el nombre de dominio por el que accedes y se configura con él. Asegúrate de establecer el nombre de dominio apropiado y acceder al proceso de configuración inicial de WordPress ése mismo y no una dirección IP local u otro dominio. De momento FreedomBox no proporciona una manera fácil de cambiar el dominio una vez se instala la app.
39.7. Permalinks
Por omisión las direcciones web de artículos de blog de nueva creación son como /wordpress/?p=1 pero se pueden hacer más bonitas como /wordpress/2021/08/06/sample-post/. Esto se puede hacer desde la página Ajustes -> Permalinks de la interfaz de WordPress. Los cambios de configuración necesarios en el servidor web los hizo ya FreedomBox durante la instalación de la app.
39.8. Actualizaciones automáticas
Como con todas las demás apps, FreedomBox (si no se deshabilitan) maneja las actualizaciones funcionales y de seguridad para WordPress automáticamente. Tras una actualización de versión menor WordPress efectúa automáticamente cambios en la estructura de la base de datos. No obstante, tras una actualización de versión mayor como un salto bianual de distribución los cambios en la base de datos no son automáticos. Para esto necesitarás ingresar a WordPress y dispararlos manualmente.
39.9. Plugins y Temas
WordPress es suficientemente potente para crear y administrar por sí mismo un sitio web o blog simple. Sin embargo su verdadero poder reside en los miles de plugins y temas. Los plugins extienden la funcionalidad de WordPress. Por ejemplo, se puede añadir a WordPress un formulario de contacto instalando el plugin apropiado. Los temas cambian la apariencia y disposición de los elementos del sitio. Instalar un nuevo tema proporcionará una opción adicional de administración para determinar la apariencia con que se mostrará a tus visitantes. Hay que tener cuidado de elegir plugins y temas fiables y que respeten la libertad y la privacidad de usuarios y visitantes del sitio web.
Desde la versión 22.13 de FreedomBox puedes instalar plugins y temas directamente desde la interfaz gráfica de WordPress.
39.9.1. Problema de privacidad con Google Fonts
Ten en cuenta que muchos temas de terceros emplean Google Fonts que violará la privacidad de tus visitantes.
Un modo de quitar Google Fonts de tu sitio WordPress es quitar las líneas del código fuente del tema correspondientes en Apariencia >> Editor de temas. Date cuenta de que este cambio se sobrescribirá en la próxima actualización del tema.
39.9.2. Actualizaciones fallidas
Las actualizaciones manuales del tema y el plugin por omisión, Twenty Twenty-One y Akismet Anti-Spam fallarán porque Debian los administra aparte. No hace falta que te preocupes de actualizarlos.
39.9.3. Nota para las versiones de FreedomBox entre la 21.7 y la 22.12
Como hay pocos plugins/temas empaquetados para Debian, FreedomBox no proporciona una manera simple de instalarlos y administrarlos. Necesitar instalarlos manualmente. Se puede hacer así:
Anota la URL del plugin o tema para descargar hojeándolas desde la interfaz de WordPress o la página oficial. Asegúrate de seleccionar elementos confiables con licencia libre.
Ingresa mediante SSH usando una cuenta de administrador FreedomBox.
Descarga el plugin o tema y desempaquétalo en un directorio usando la línea de órdenes.
Mueve el directorio bajo /var/lib/wordpress/wp-content/plugins/ o /var/lib/wordpress/wp-content/themes/, según el caso.
Vigila las actualizaciones de los plugins instalados desde WordPress y repite este procedimiento para instalar versiones nuevas.
39.10. Enlaces externos
Sitio web del proyecto original: https://wordpress.org
Documentación de uso del proyecto original: https://wordpress.org/documentation
Personalización de WordPress: https://wordpress.org/documentation/customization
Temas de WordPress: https://wordpress.org/themes
WordPress en el wiki de Debian: https://wiki.debian.org/WordPress
40. Zoph (Administración de fotografías)
|
Disponible desde: versión 21.3
40.1. ¿Qué es Zoph?
Zoph es un administrador web de fotografías que permite cargar fotografías al servidor FreedomBox, donde se organizan en álbumes asociadas a localizaciones, gente y categorías. Cada fotografía puede estar en múltiples álbumes. Los álbumes, categorías y localizaciones tienen jerarquía.
Zoph es multiusuario y tiene un sistema de permisos para controlar qué álbumes puede ver, o crear cada usuario, si puede ver o crear gente, etc.
El nombre de usuario en Zoph tiene que coincidir con el nombre de usuario en FreedomBox para que funcione el ingreso unificado.
40.2. Usar Zoph
Tras instalar Zoph hay que hacer clic en "Configurar" y entonces se puede lanzar el cliente web. También queda accesible en https://<tu freedombox>/zoph.
Solo la primera ver se te pedirá introducir tu usuario y contraseña. Las siguientes veces te mostrará directamente la pantalla de bienvenida.
El menú de solapas se mostrará en la parte superior de cada página. Desde ahí puedes cargar fotos desde cualquier ordenador, administrar Zoph para añadir usuarios, etc.
Ahora puedes ir a la pestaña "preferencias" para establecerlas, p. ej. las cantidades de filas y columnas en los resultados, cuanta información mostrar acerca de la cámara con la que se tomó la foto, etc.
Puedes añadir información acerca de la gente que aparece en tus fotos.
40.2.1. Seleccionar una ubicación para almacenar tus fotos
Tus fotos necesitarán un montón de espacio en comparación con otros usos de tu FreedomBox. Quizá quieras ponerlas en un disco externo. (Todavía no) puedes especificar donde almacenar tus fotos en la pantalla de instalación inicial. La base de datos que alberga información sobre álbumes, gente, etc está en el almacenamiento normal de la FreedomBox.
40.3. Enlaces externos
Sitio web del proyecto original: http://www.zoph.org
Documentación: https://gitlab.com/zoph-project/zoph/tree/master/docs
Sistema
1. Actualizaciones de Software
FreedomBox puede instalar actualizaciones de seguridad automaticamente. Esta funcionalidad viene activada por defecto y no hace falta ninguna acción manual. Puedes activar las actualizaciones automaticas desde el interfaz web de FreedomBox en la página Actualización de la sección Sistema. Se recomienda encarecidamente que tengas esta opción habilitada para mantener tu FreedomBox segura.
Las actualizaciones se efectúan cada noche según el huso horario local. Puedes establecerlo mediante Fecha y Hora. Si quieres apagar tu FreedomBox cada día después de usarla, déjala ejecutando una noche a la semana más o menos para permitir que ocurran las actualizaciones automaticas. Otra posibilidad es ejecutar actualizaciones manuales como se describe más adelante.
Nota que una vez comiencen las actualizaciones podría llevarles mucho tiempo completarse. Durante el proceso de actualización (ya sea el automático nocturno o el manual), no podrás instalar aplicaciones desde el interfaz web de FreedomBox.
1.1. ¿Cuando obtendré las últimas funcionalidades?
Aunque las actualizaciones se efectúan a diario por razones de seguridad, las últimas funcionalidades no se propagan a todos los usuarios. A continuación se explica cómo llegan las novedades a los usuarios de las diferentes versiones de Debian:
Usuarios de versiones estables: Esta categoria de usuarios incluye a los usuarios que compraron la FreedomBox Pioneer Edition, a los que instalaron FreedomBox sobre una distribución estable de Debian y a los que descargaron las imágenes estables desde freedombox.org. Como regla general a estos usuarios solo se les proporciona actualizaciones de seguridad de determinados paquetes. Cuando una release obtiene la confianza de los desarrolladores el propio servicio FreedomBox se actualiza, lo que supone una excepción a esta regla. Esto implica que las últimas funcionalidades de FreedomBox estarán disponibles para estos usuarios aunque no tán inmediata- o frecuentemente como para los usuarios de las versiones en pruebas (testing). Si una app sólo está disponible en la distribución en pruebas (testing) pero no en la estable la app aparecerá en el interfaz web pero no será instalable para los usuarios de la distribución estable. Algunas apps se actualizan en excepción a la regla de "solo actualizaciones de seguridad" cuando la app esté seriamente rota por algún motivo. Debian libera cada bienio una entrega (release) con las últimas versiones estables de cada paquete de software y los desarrolladores de FreedomBox intentarán actualizar a estos usuarios a la nueva entrega (release) sin necesidad de intervención manual.
Usuarios de versiones en pruebas: Esta categoria de usuarios incluye a los usuarios que instalaron FreedomBox sobre una distribución en pruebas (testing) y a los que descargaron las imágenes en pruebas (testing) desde freedombox.org. Estos usuarios asumen la posibilidad de afrontar disrupciones ocasionales en los servicios e incluso tener que intervenir manualmente para arreglarlas. Como regla general estos usuarios reciben las últimas funcionalidades y actualizaciones de seguridad para todos los paquetes instalados. Cada quincena se libera una nueva versión de FreedomBox con todas las últimas funcionalidades y correcciones. Estas versiones llegan a los usuarios de la distribución en pruebas (testing) aproximadamente 2 o 3 días después de la liberación.
Usuarios de versiones inestables: Esta categoria de usuarios incluye a los usuarios que instalaron FreedomBox sobre una distribución inestable y a los que descargaron las imágenes inestables desde freedombox.org. Estos usuarios asumen la probabilidad de afrontar disrupciones en los servicios y tener que intervenir manualmente para arreglarlas. Como regla general estos usuarios reciben las últimas funcionalidades y actualizaciones de seguridad para todos los paquetes instalados. Cada quincena se libera una nueva versión de FreedomBox con todas las últimas funcionalidades y correcciones. Estas versiones llegan a los usuarios de la distribución inestable el mismo día de la liberación. Solo los desarrolladores, probadores y contribuyentes al proyecto FreedomBox debieran emplear la distribution inestable. Se advierte y exhorta a los usuarios finales de que no la usen.
1.2. Actualizaciones Manuales desde el Terminal
Algunos paquetes de software podrían requerir intervención manual para actualizarlos, generalmente por razones de configuración. En tales casos FreedomBox se actualiza a sí mismo y solicita información nueva necesaria para la actualización del paquete. Después de autoactualizarse FreedomBox actúa en nombre del usuario y actualiza los paquetes con la información recabada. Estos paquetes no se deben actualizar manualmente hasta que FreedomBox tenga la posibilidad de actualizarlos. La actualización que se dispara manualmente desde el interfaz web ya es consciente de estos paquetes y no los actualiza.
En situaciones muy extrañas, FreedomBox podría fallar o quedar a expensas de una intervención manual desde el terminal. Para esto, entra a FreedomBox por un terminal, ya sea físico, web (empleando Cockpit) o mediante SSH (ver sección Shell Segura) y ejecuta los siguientes comandos:
$ sudo su - Password: <introduce la contraseña aquí> # dpkg --configure -a # apt update # apt -f install # unattended-upgrade --debug # apt install freedombox # apt update
Si apt update te pide confirmación para algo responde que Sí. Si durante la actualización del paquete freedombox te pregunta acerca de los archivos de configuración responde que instale los archivos de configuración nuevos que vienen con la última versión del paquete. Este proceso solo actualizará los paquetes que no necesitan preguntar (excepto el paquete freedombox). Después, deja que FreedomBox se encargue de la actualización de los demás paquetes. Sé paciente mientras se crean nuevas versiones de FreedomBox para tratar los paquetes que necesitan intervención manual.
Si quieres ir más allá de la recomendación e instalar todos los paquetes en tu FreedomBox y realmente estás muy seguro de poder tratar los cambios de configuración de paquetes por tí mismo, ejecuta el siguiente comando:
$ apt full-upgrade
1.3. Autoactualización a la próxima publicación estable
FreedomBox puede actualizarse automaticamente cuando se publica una nueva versión estable de Debian. Esta funcionalidad de actualización se recomienda y viene activada por omisión para sistemas estables. Nótese que se requiere activar la autoactualización y que haya 5 GB de espacio libre en la partición raíz.
En algunos casos especiales como en los que se haya efectuado una personalización del sistema avanzada la actualización automática podría fallar. Si quieres puedes desactivarla en la página Sistema -> Actualización vaciando la caja “Activar autoactualización a la próxima publicación estable”.
Si decides permanecer en una publicación anterior deberías mirar DebianReleases#Production_Releases para ver cuánto tiempo va a soportarla el equipo de seguridad de Debian. Ten en cuenta que las publicaciones antiguas no tendrán nuevas versiones de FreedomBox, ni siquiera mediante backports.
1.4. Actualización manual a la próxima publicación estable
Para la mayoría de los usuarios se recomienda la autoactualización. Si no obstante quieres realizar la actualización manualmente aquí tienes algunos consejos:
General:
- Toma una instantánea del sistema antes de empezar.
Hay disponibles instrucciones generales para actualizar la distributción Debian.
Se sabe que algunos paquetes preguntan al usuario durante la actualización debido a cambios en los ficheros conf. Se recomienda no actualizar estos paquetes manualmente, sino permitir que FreedomBox trate sus actualizaciones automaticamente. Nos referimos a los siguientes paquetes:
- firewalld
- minidlna
- radicale
2. Almacenamiento
Almacenamiento te permite ver los dispositivos de almacenamiento conectados a tu FreedomBox y el uso de su espacio.
FreedomBox puede detectar y montar automáticamente medios extraíbles como unidades flash USB. Se muestran listados bajo la sección Dispositivos extraíbles junto con una opción para expulsarlos.
Si queda espacio libre detrás de la partición de root, se mostrará también la opción para expandirla. Normalmente no se muestra ya que en el primer arranque de la FreedomBox se produce automáticamente una expansión total de la partición de root.
2.1. Operación de almacenamiento avanzada
Cockpit proporciona muchas funcionalidades de almacenamiento más avanzadas que las de FreedomBox. Ambos, FreedomBox y Cockpit, operan sobre el demonio de almacenamiento Udisks2 y son por ello compatibles entre sí. Entre las funciones proporcionadas por Cockpit se incluyen:
- Formatear un disco o partición con un nuevo sistema de ficheros.
- Añadir, eliminar particiones o borrar la tabla de particiones.
- Crear y desbloquear sistemas de ficheros cifrados.
- Crear y administrar dispositivos RAID.
3. Almacén de instantáneas
Las Instantáneas te permiten crear instantáneas del sistema de archivos y devolver al sistema a un estado anterior.
Nota: Esta funcionalidad requiere un sistema de archivos Btrfs. Todas las imágenes de disco de FreedomBox estables usan Btrfs.
Hay tres tipos de instantáneas:
- De Arranque: Tomada cuando el sistema arranca,
- De Instalación de Software (apt): Tomada cuando el software se instala o actualiza,
- De Línea de Tiempo: Tomada cada hora, día, semana, més, o año.
Las instantáneas de Línea de Tiempo e Instalación de Software se pueden activar y desactivar, y puedes limitar la cantidad de cada tipo de instantánea Timeline. También puedes establecer un porcentaje de espacio en disco a conservar.
4. Apagado
Para reiniciar o apagar tu FreedomBox haz clic en el menú desplegable del usuario en la esquina superior derecha. Después de seleccionar "Reiniciar" o "Apagar", se te pedirá confirmación.
5. BIND (Servidor de Nombre de Dominio)
BIND te permite publicar en Internet tu información de Sistema de Nombre de Dominio (DNS) y resolver consultas DNS de los dispositivos de usuario en tu red.
Actualmente en FreedomBox BIND solo se usa para resolver consultas DNS de otras máquinas en tu red local. También es incompatible con compartir conexiones a Internet de tu FreedomBox.
Nota: Este servicio solo está disponible en redes configuradas como zona "interna". Tampoco está disponble a través de OpenVPN (es incompatible).
5.1. Usar BIND
Habilitar BIND no implica que automáticamente se use en todas partes. Se puede configurar lo siguiente:
FreedomBox se puede configurar para usar el servicio BIND local para sus propias consultas DNS.
Los clientes de la red de área local (LAN) se pueden configurar para usar el servicio BIND de FreedomBox's para sus consultas DNS.
Se puede configurar FreedomBox para usar su propio servicio BIND local para sus consultas DNS en Redes:
Ir a la página Sistema y seleccionar Redes.
Seleccionar la conexión "FreedomBox WAN" y pulsar Editar.
Debajo de "Métodos de direccionado IPv4" hay un campo "Servidor DNS". Establecerlo a 127.0.0.1.
- Pulsar "Editar conexión" abajo para grabar los cambios.
Reiniciar la FreedomBox desde el menú desplegable de usuario.
5.2. Enlaces externos
Proyecto original: https://www.isc.org/bind/
6. Cliente de DNS Dinamico
6.1. ¿Qué es DNS Dinamico?
Para que se pueda llegar a un servidor desde Internet este necesita tener una dirección pública permanente, también conocida como dirección IP estática o fija. Muchos proveedores de servicio de Internet no otorgan IP fija a sus usuarios normales o la cobran. En su lugar les otorgan una IP temporal diferente cada vez que el usuario se conecta a internet. O una que cambia de vez en cuando. Si es tu caso los clientes que quieran contactar con tu servidor tendrán dificultades.
Los proveedores de servicio de DNS Dinamico ayudan a solventar este problema. Primero te dan un nombre de dominio, como 'miservidor.ejemplo.org' y te permiten asociar tu dirección IP temporal a este nombre de dominio cada vez que esta cambia. De este modo quien quiera llegar a tu servidor empleará el nombre de dominio 'miservidor.ejemplo.org' que siempre apuntará a la última dirección IP de tu servidor.
Para que esto funcione cada vez que te conectes a Internet tendrás que decirle a tu proveedor de servicio de DNS Dinamico cual es tu dirección IP provisional actual. Por esto necesitas tener un software especial en tu servidor que haga esto. La funcionalidad DNS Dinamico de tu FreedomBox permite a los usuarios sin dirección IP pública fija mantener su dirección IP pública temporal actualizada en el servicio de DNS Dinamico. Esto te permite exponer servicios de tu FreedomBox, como ownCloud, a Internet.
6.2. GnuDIP vs. Update URL
Eisten 2 mecanismos principales para notificar al the servicio de DNS Dinamico cual es tu dirección IP provisional actual: empleando el protocolo GnuDIP o empleando el mecanismo URL de actualización.
Si un servicio expuesto usando URL de actualización no se securiza apropiadamente mediante HTTPS, tus credenciales podrían quedar expuestas. Una vez que un atacante accede a tus credenciales podrá reproducir tus comunicaciones con el servicio de DNS Dinamico y suplantar tu dominio.
Por otra parte el protocolo GnuDIP solo transportará un valor MD5 salpimentado de tu contraseña de tal forma que es seguro contra ataques de este tipo.
6.3. Emplear el protocolo GnuDIP
Registra una cuenta en cualquier proveedor de servicio de DNS Dinamico. Hay un servicio gratuito provisto por la comunidad FreedomBox disponible en https://ddns.freedombox.org .
Habilita el Servicio de DNS Dinamico en el interfaz de usuario de FreedomBox.
Selecciona GnuDIP como tipo de servicio, introduce la dirección de tu proveedor de servicio de DNS Dinamico (por ejemplo, ddns.freedombox.org) en el campo Dirección del servidor GnuDIP.
Completa la información que te ha dado tu proveedor en los campos correspondientes Nombre de Dominio, Usuario y Contraseña.
6.4. Emplear URL de actualización
Se implementa esta funcionalidad porque los proveedores de servicio de DNS Dinamico más populares están empleando el mecanismo URL de actualización.
- Registra una cuenta en el proveedor de servicio de DNS Dinamico que emplea el mecanismo Update URL. Se listan algunos proveedores de ejemplo en la propia página de configuración.
Habilita el Servicio de DNS Dinamico en el interfaz de usuario de FreedomBox.
Selecciona URL de actualización como tipo de servicio, introduce la URL de actualización que te ha dado tu proveedor de servicio de DNS Dinamico en el campo URL de actualización.
Si vas a la URL de actualización con tu navegador de Internet y te muestra un aviso acerca de un certificado no confiable, activa aceptar todos los certificados SSL. AVISO: ¡Tus credenciales podrían quedar expuestas en este punto a un ataque MIM (man-in-the-middle)! Valora la posibilidad de elegir otro proveedor de servicio mejor.
Si vas a la URL de actualización con tu navegador de Internet y te muestra la caja de usuario/contraseña, selecciona usar autenticación HTTP basica e introduce el usuario y la contraseña.
Si la URL de actualización contiene tu dirección IP temporal actual reemplaza la dirección IP por la cadena de texto <Ip>.
6.5. Comprobar si funciona
- Asegúrate de que los servicios externos que has habilitado como /jwchat, /roundcube o /ikiwiki están disponibles en tu dirección de dominio.
Ve a la página Estado y asegúrate de que el tipo de NAT se detecta correctamente. Si tu FreedomBox está detrás de un dispositivo NAT debería detectarse en este punto (Texto: Detrás de NAT). Si tu FreedomBox tiene una dirección IP pública asignada el texto debería ser "Conexión directa a Internet".
Comprueba que el último estado de actualización no sea fallida.
6.6. Recap: How to create a DNS name with GnuDIP
Access to GnuIP login page (answer Yes to all pop ups)
- Click on "Self Register"
- Fill the registration form (Username and domain will form the public IP address [username.domain])
Take note of the username/hostname and password that will be used on the FreedomBox app.
- Save and return to the GnuDIP login page to verify your username, domain and password (enter the datas, click login).
- Login output should display your new domain name along with your current public IP address (this is a unique address provided by your router for all your local devices).
Leave the GnuDIP interface and open the Dynamic DNS Client app page in your FreedomBox.
- Click on "Set Up" in the top menu.
- Activate Dynamic DNS
- Choose GnuDIP service.
- Add server address (ddns.freedombox.org)
- Add your fresh domain name (username.domain, ie [username].freedombox.rocks)
- Add your fresh username (the one used in your new IP address) and password
- Add your GnuDIP password
Fill the option with https://ddns.freedombox.org/ip/ (try this url in your browser, you will figure out immediately)
7. Cockpit (Administración de Servidor)
Cockpit es una aplicación que facilita administrar servidores GNU/Linux desde el navegador web. En una FreedomBox, hay disponibles controles para muchas funciones avanzadas que normalmente no se necesitan. También hay disponible un terminal web para operaciones de consola.
Cualquier usuario del grupo de administradores de to FreedomBox puede acceder a Cockpit. Cockpit solo se puede usar si tienes una configuración de nombre de dominio apropiada para tu FreedomBox y usas ese nombre de dominio para acceder a Cockpit. Para más información mira la sección de Resolución de Problemas.
Usa cockpit sólo si eres un administrador de sistemas GNU/Linux con habilidades avanzadas. FreedomBox intenta coexistir con los cambios al sistema que efectúan los administradores y sus herramientas, como Cockpit. Sin embargo, los cambios al sistema inadecuados pueden causar fallos en las funciones de FreedomBox.
7.1. Usar Cockpit
Instala Cockpit como cualquier otra aplicación de FreedomBox. Y a continuación asegúrate de que Cockpit está habilitado.
Asegúrate de que la cuenta de usuario de FreedomBox que se empleará con Cockpit es parte del grupo de administradores.
Arranca el interfaz web de Cockpit. Ingresa con la cuenta de usuario configurada. Asegúrate de marcar la caja "reusar mi contraseña para tareas restrigidas", de otro modo una vez dentro no podrás realizas algunas tareas como configurar RAID o editar usuarios.
Empieza a usar cockpit.
Cockpit también funciona con interfaces mobiles.
7.2. Funcionalidades
Las siguientes funcionalidades de Cockpit pueden ser útiles para usuarios avanzados de FreedomBox.
7.2.1. Cuadro de Mando del Sistema
Cockpit tiene un cuadro de mando del sistema que
Muestra información detallada del hardware.
- Muestra métricas básicas de rendimiento del sistema.
- Permite cambiar la hora y el huso del sistema.
Permite cambiar el hostname. Por favor usa el interfaz de usuario de FreedomBox UI para hacer esto.
- Muestra las huellas del servidor SSH.
7.2.2. Visualización de los Registros de Ejecución (logs) del Sistema
Cockpit permite consultar los registros de ejecución (logs) del sistema y examinarlos a todo detalle.
7.2.3. Administración de Almacenamiento
Cockpit permite las siguientes funciones avanzadas de almacenamiento:
- Visualización de llenado de discos.
- Edición de particiones de disco.
- Administración de RAID.
7.2.4. Redes
Tanto Cockpit como FreedomBox se apoyan en NetworkManager para configurar la red. No obstante, Cockpit ofrece alguna configuración avanzada no disponible en FreedomBox:
- Configuración de rutas.
- Configuración de enlaces, puentes y VLANs.
7.2.5. Servicios
Cockpit permite agendar servicios y tareas periódicas (como cron).
7.2.6. Terminal Web
Cockpit ofrece un terminal web que se puede usar para ejecutar tareas manuales de administración del sistema.
7.3. Resolución de Problemas
Cockpit require un nombre de dominio adecuadamente configurado en tu FreedomBox y solo funcionará cuando accedas a él mediante una URL con ese nombre de dominio. Cockpit no funcionará con una dirección IP en la URL. Tampoco con freedombox.local como nombre de dominio. Por ejemplo, las URLs siguientes no funcionarán:
https://192.168.0.10/_cockpit/ https://freedombox.local/_cockpit/
A partir de la versión 19.15 funciona el dominio .local. Puedes acceder a Cockpit mediante la URL https://freedombox.local/_cockpit/. El dominio .local se basa en tu hostname. Si tu hostname es mifb tu nombre de dominio .local será mifb.local y la URL de Cockpit será https://mifb.local/_cockpit/.
Para acceder apropiadamente a Cockpit, usa el nombre de dominio configurado en tu FreedomBox. Cockpit también funcionará cuando se use un Servicio Tor Onion. Las siguientes URLs funcionarán:
https://mybox.freedombox.rocks/cockpit/ https://exampletorhs.onion/cockpit/
La razón para este comportamiento es que Cockpit emplea WebSockets para conectar con el servidor de backend. Por seguridad se deben evitar las peticiones a WebSockets con servidores cruzados. Para implementar esto Cockpit maintiene una lista de todos los dominios desde los que se admiten peticiones. FreedomBox configura automaticamente esta lista cuando añades o borras un dominio. Sin embargo, como no podemos fiarnos de las direcciones IP, FreedomBox no las añade a esta lista. Puedes mirar la lista actual de dominios aceptados administrada por FreedomBox en /etc/cockpit/cockpit.conf. Puedes editarla pero hazlo solo si comprendes sus consecuencias para la seguridad web.
7.4. Enlaces externos
Proyecto original: https://cockpit-project.org
Documentación de uso: https://cockpit-project.org/guide/latest/
8. Configurar
Configurar tiene algunas opciones generales de configuración:
8.1. Hostname
Hostname es el nombre local por el que otros dispositivos pueden alcanzar tu FreedomBox desde la red local. El hostname por defecto es freedombox.
8.2. Nombre de Dominio
El Nombre de Dominio es el nombre global por el que otros dispositivos pueden alcanzar tu FreedomBox desde la Internet. El valor que se asigne aquí es el que usarán Chat Server (XMPP), Matrix Synapse y Certificates (Let's Encrypt).
8.3. Página Principal (home) del Servidor Web
Esta es una opción avanzada que te permite establecer como home algo diferente al servicio FreedomBox para que se sirva a quien acceda con el navegador al nombre de dominio de FreedomBox. Por ejemplo, si el nombre de dominio de tu FreedomBox es https://myfreedombox.rocks y estableces a MediaWiki como home, al visitar https://mifreedombox.mola te llevará a https://myfreedombox.rocks/mediawiki/ en vez de a https://mifreedombox.mola/plinth/.
Una vez asignada como home otra aplicación, ya solo puedes navegar al servicio FreedomBox tecleando en el navegador https://mifreedombox.mola/plinth/.
/freedombox también se puede usar como alias para /plinth
Puedes asignar la home a cualquier aplicación web, los wikis y blogs de Ikiwiki o la página index.html por defecto de Apache. Desde la versión 20.20 también se puede seleccionar un sitio web de usuario de entre los usuarios que tengan su directorio public_html creado.
Consejo: Guarda la URL del servicio FreedomBox antes de asignar la home a otra app.
9. Copias de respaldo (backups)
FreedomBox incluye la posibilidad de copiar y restaurar datos, preferencias, configuración y secretos de la mayoría de las aplicaciones. La funcionalidad de Backups se resuelve con el software de backup Borg. Borg es un programa de backup con deduplicación y compresión. Está diseñado para hacer backups eficientes y seguros. Esta funcionalidad de backups se puede emplear para respaldar y recuperar datos aplicación por aplicación. Las copias de respaldado se pueden almacenar en la propia máquina FreedomBox o en un servidor remoto. Cualquier servidor remoto con acceso por SSH se puede emplear como almacenamiento para los backups de la FreedomBox. Las copias remotas se pueden cifrar para que el servidor remoto no pueda leer los datos que alberga.
9.1. Notas para respaldos específicos
Salvo que aquí se diga lo contrario, el respaldo de los datos de una aplicación incluirá su configuración, secretos y otros datos.
App/Funcionalidad |
Notas |
No incluye archivos descargados/sembrados |
|
No incluye los datos en carpetas compartidas |
|
Actualmente no hay planes para implementar respaldos |
|
No incluye los datos en carpetas compartidas |
|
No incluye los datos en carpetas compartidas |
|
Instantáneas |
Solo configuración, no incluye datos de instantánea |
No incluye los datos en carpetas compartidas |
|
No incluye archivos descargados/sembrados |
|
El respaldo de cuentas de usuario está planificado |
9.2. Cómo instalar y usar Backups
Paso 1: Ir a la página de Copias de Seguridad
Paso 2: Pulsar el botón Instalar
Paso 3: Esperar a que se instalen todos los componentes de la aplicación
Paso 4: Pulsar el botón de Crear Copia de Seguridad
Paso 5: Seleccionar las aplicaciones a respaldar y pulsar Enviar
Paso 6: Pulsar en el botón Descargar
9.3. Enlaces externos
Proyecto original: https://www.borgbackup.org
Documentación de uso: https://borgbackup.readthedocs.io/en/stable/
10. Cortafuegos
Un cortafuegos es un sistema de seguridad de red que controla el tráfico de entrada y salida desde/a la red. Mantener un cortafuegos habilitado y apropiadamente configurado reduce el riesgo de amenazas a la seguridad desde Internet.
La operación del cortafuegos desde el interfaz web de FreedomBox es automática. Cuando habilitas un servicio se le abre automáticamente el cortafuegos y cuando lo deshabilitas se le cierra también automáticamente. Para servicios habilitados por defecto en FreedomBox los puertos se abren en el cortafuegos por defecto durante el proceso de la primera ejecución.
La administración del cortafuegos en FreedomBox se hace empleando FirewallD.
10.1. Interfaces
Cada interfaz de red necesita asignarse a 1 (y sólo 1) zona. Si no se le establece zona, automáticamente se le asigna la zona externa. Las reglas que tenga activas la zona se aplicarán al interfaz. Por ejemplo, si se permite el trafico HTTP en una zona en particular las peticiones web se acceptarán en todas las direcciones configuradas para todos los interfaces asignados a esa zona.
Principalmente se emplean 2 zonas de cortafuegos. La zona interna está pensada para servicios ofrecidos a todas las máquinas de la red local. Esto podría incluir servicios como streaming multimedia o compartición simple de archivos. La zona externa está pensada para servicios públicamente expuestos a Internet. Esto podría incluir servicios como blog, sitio web, cliente web de correo electrónico etc.
Para más detalles acerca de como se configuran por defecto los interfaces de red mira la sección Redes.
10.2. Abrir Puertos Propios
Cockpit proporciona administración avanzada de cortafuegos. Ambos, FreedomBox y Cockpit operan sobre firewalld y son por tanto compatibles entre sí. En particular, Cockpit se puede usar en FreedomBox para abrir servicios o puertos. Esto resulta útil si además de los servicios proporcionados por FreedomBox estás ejecutando manualmente tus propios servicios en la misma máquina.
10.3. Puertos/Servicios de FreedomBox
La siguiente tabla trata de documentar los puertos, servicios y sus estados por defecto en FreedomBox. Si encuentras esta página desactualizada mira la página de estado del cortafuegos en el interfaz web de FreedomBox.
Servicio |
Puerto |
Externo |
Habilitado por defecto |
Estado mostrado en FreedomBox |
Administrado por FreedomBox |
Minetest |
30000/udp |
|
|
|
|
XMPP Client |
5222/tcp |
|
|
|
|
XMPP Server |
5269/tcp |
|
|
|
|
XMPP Bosh |
5280/tcp |
|
|
|
|
NTP |
123/udp |
|
|
|
|
Interfaz web de FreedomBox |
443/tcp |
|
|
|
|
Quassel |
4242/tcp |
|
|
|
|
SIP |
5060/tcp |
|
|
|
|
SIP |
5060/udp |
|
|
|
|
SIP-TLS |
5061/tcp |
|
|
|
|
SIP-TLS |
5061/udp |
|
|
|
|
RTP |
1024-65535/udp |
|
|
|
|
SSH |
22/tcp |
|
|
|
|
mDNS |
5353/udp |
|
|
|
|
Tor (Socks) |
9050/tcp |
|
|
|
|
Obfsproxy |
<random>/tcp |
|
|
|
|
OpenVPN |
1194/udp |
|
|
|
|
Mumble |
64378/tcp |
|
|
|
|
Mumble |
64378/udp |
|
|
|
|
Privoxy |
8118/tcp |
|
|
|
|
JSXC |
80/tcp |
|
|
|
|
JSXC |
443/tcp |
|
|
|
|
DNS |
53/tcp |
|
|
|
|
DNS |
53/udp |
|
|
|
|
DHCP |
67/udp |
|
|
|
|
Bootp |
67/tcp |
|
|
|
|
Bootp |
67/udp |
|
|
|
|
Bootp |
68/tcp |
|
|
|
|
Bootp |
68/udp |
|
|
|
|
LDAP |
389/tcp |
|
|
|
|
LDAPS |
636/tcp |
|
|
|
|
10.4. Operación Manual
Para completar información acerca de los conceptos basicos o más allá, mira la documentación de FirewallD.
10.4.1. Habilitar/deshabilitar el cortafuegos
Para deshabilitar el cortafuegos
service firewalld stop
o con systemd
systemctl stop firewalld
Para vover a habilitar el cortafuegos
service firewalld start
o con systemd
systemctl start firewalld
10.4.2. Modificar servicios/puertos
Puedes añadir o eliminar un servicio de una zona manualmente.
Para ver la lista de servicios habilitados:
firewall-cmd --zone=<zone> --list-services
Ejemplo:
firewall-cmd --zone=internal --list-services
Para ver la lista de puertos habilitados:
firewall-cmd --zone=<zone> --list-ports
Ejemplo:
firewall-cmd --zone=internal --list-ports
Para eliminar un servicio de una zona:
firewall-cmd --zone=<zone> --remove-service=<service> firewall-cmd --permanent --zone=<zone> --remove-service=<interface>
Ejemplo:
firewall-cmd --zone=internal --remove-service=xmpp-bosh firewall-cmd --permanent --zone=internal --remove-service=xmpp-bosh
Para eliminar un puerto de una zona:
firewall-cmd --zone=internal --remove-port=<port>/<protocol> firewall-cmd --permanent --zone=internal --remove-port=<port>/<protocol>
Ejemplo:
firewall-cmd --zone=internal --remove-port=5353/udp firewall-cmd --permanent --zone=internal --remove-port=5353/udp
Para añadir un servicio a una zona:
firewall-cmd --zone=<zone> --add-service=<service> firewall-cmd --permanent --zone=<zone> --add-service=<interface>
Ejemplo:
firewall-cmd --zone=internal --add-service=xmpp-bosh firewall-cmd --permanent --zone=internal --add-service=xmpp-bosh
Para añadir un puerto a una zona:
firewall-cmd --zone=internal --add-port=<port>/<protocol> firewall-cmd --permanent --zone=internal --add-port=<port>/<protocol>
Ejemplo:
firewall-cmd --zone=internal --add-port=5353/udp firewall-cmd --permanent --zone=internal --add-port=5353/udp
10.4.3. Modificar la zona de los interfaces
Puedes cambiar la asignación de zona de cada interfaz de red manualmente tras la asignación automática del proceso de primer arranque.
Para ver la asignación actual de interfaces de red a las zonas.
firewall-cmd --list-all-zones
Para eliminar un interfaz de una zona:
firewall-cmd --zone=<zone> --remove-interface=<interface> firewall-cmd --permanent --zone=<zone> --remove-interface=<interface>
Ejemplo:
firewall-cmd --zone=external --remove-interface=eth0 firewall-cmd --permanent --zone=external --remove-interface=eth0
Para añadir un interfaz a una zona:
firewall-cmd --zone=<zone> --add-interface=<interface> firewall-cmd --permanent --zone=<zone> --add-interface=<interface>
Ejemplo:
firewall-cmd --zone=internal --add-interface=eth0 firewall-cmd --permanent --zone=internal --add-interface=eth0
11. Detección de Servicios
La Detección de Servicios permite a otros dispositivos de la red detectar a tu FreedomBox y a los servicios que expone. Si un cliente de la red local soporta mDNS, puede encontrar tu FreedomBox en <hostname>.local (por ejemplo: freedombox.local).
También permite a FreedomBox detectar otros dispositivos y servicios que están funcionando en tu red local.
La Detección de Servicios no es esencial y solo funciona en redes internas. Se puede deshabilitar para mejorar la seguridad especialmente cuando la conectas a una red local hostil.
11.1. Resolución de problemas
11.1.1. No se accede con <hostname>.local
Si <hostname>.local no responde, quizá solo haya que reactivar en FreedomBox la funcionalidad de Detección de Servicios. Vé a Sistema -> Detección de Servicios, desliza el interruptor a la izquierda para deshabilitarla (se vuelve gris) y luego otra vez a la derecha para volver a habilitarla (se vuelve azul).
Obviamente, para hacer esto necesitas otro medio de acceder a tu FreedomBox que no sea <hostname>.local. Los tienes en la Guía de inicio rápido.
12. Diagnósticos
La prueba de diagnóstico del sistema ejecutará varias verificaciones sobre tu sistema para confirmar que las aplicaciones y servicios están funcionando como se espera.
Sólo haz clic Ejecutar Diagnósticos. Esto puede llevar varios minutos.
13. Fecha y hora
Este servidor de hora de red es un programa que mantiene el tiempo del sistema sincronizado con servidores de Internet.
Puedes seleccionar el huso horario
escogiendo una capital cercana (están ordenadas por Continente/Ciudad) o
- seleccionando directamente el huso en relación a GMT (Greenwich Mean Time).
14. Let's Encrypt (Certificados)
Un certificado digital permite a los usuarios de un servicio web verificar la identidad del servicio y comunicar con él de modo seguro. FreedomBox puede obtener y configurar automaticamente certificados digitales para cada dominio disponible. Lo hace probando a Let's Encrypt, una authoridad de certificación (CA) ser el dueño de un dominio.
Let's Encrypt es una autoridad de certificación abierta, automatizada, libre y gratuita administrada para beneficio público por el Internet Security Research Group (ISRG). Por favor, lee y acepta los términos del Acuerdo de Suscripción de Let's Encrypt antes de usar este servicio.
14.1. Por Qué Usar Certificados
La comunicación con tu FreedomBox se puede asegurar de modo que se imposibilite interceptar los contenidos que tus servicios intercambian con sus usuarios.
14.2. Cómo configurar
Si tu FreedomBox está detrás de un router, necesitarás configurar la redirección de puertos en tu router. Debes redirigir los siguientes puertos:
- TCP 80 (http)
- TCP 443 (https)
- Publica tu nombre de dominio:
En Configurar inserta tu nombre de dominio, p.ej. MiWeb.com
- Verifica que se aceptó tu nombre de dominio
Comprueba que está habilitado en Servicio de Nombres
- Ve a la página de los Certificados (Let's Encrypt) y completa la instalación del modulo si hace falta. Entonces haz clic en el botón "Obtener" de tu nombre de dominio.
- Tras algunos minutos estará disponible un certificado válido
- Tras algunos minutos estará disponible un certificado válido
Verifica en tu navegador comprobando https://MiWeb.com
Screencast: Let's Encrypt
14.3. Usar
El certificado es válido por 3 meses. Se renueva automáticamente y también se puede volcer a obtener o revocar manualmente.
Ejecutando diagnostics se puede también verificar el certificado.
14.4. Enlaces externos
Proyecto original: https://letsencrypt.org
Documentación de uso: https://letsencrypt.org/docs/
15. PageKite (Visibilidad Publica)
15.1. ¿Qué es PageKite?
PageKite hace inmediata y públicamente accesibles desde internet a los sitios web y servicios locales sin tener que crear tu mismo una dirección IP pública. Lo hace tunelando protocolos como HTTPS o SSH a través de cortafuegos y NAT. Usar PageKite require ana cuenta en un servicio de repetidor de PageKite. https://pagekite.net es uno de de estos servicios.
Un servicio de repetidor de PageKite te permitirá crear cometas (kites). Las cometas son similares a los nombres de dominio pero con ventajas y desventajas diferentes. Una cometa puede tener varios servicios configurados. Se sabe que PageKite funciona con HTTP, HTTPS, y SSH, y muchas funcionan con otros servicios, pero no todas.
15.2. Usar PageKite
Créate una cuenta en un servicio de repetidor de PageKite.
- Añade una cometa a tu cuenta. Anota el nombre y el secreto de tu cometa.
En FreedomBox, vé a la solapa "Configurar PageKite" de la página Visibilidad Publica (PageKite).
Marca la caja "Habilitar PageKite" e introduce el nombre y el secreto de tu cometa. Haz clic en "Grabar propiedades".
- En la solapa "Servicios Estándar" puedes habilitar HTTP y HTTPS (recomendado) y SSH (opcional).
HTTP se necesita para obtener el certificado Let's Encrypt. Puedes deshabilitarlo (HTTPS) más tarde.
En la página Certificados (Let's Encrypt) puedes obtener un certificado Let's Encrypt para el nombre de tu cometa.
16. Performance (Monitorización del sistema)
Disponible desde: versión 20.9
La app Performance permite recabar, almacenar y ver información acerca de la utilización del hardware. Esto proporciona visibilidad acerca de patrones de uso y si el hardware está sobrecargado por usuarios y/o servicios.
Las métricas de Performance las recaba Performance Co-Pilot se pueden ver mediante la app Cockpit. Cuando se instala y habilita esta app del sistema, los gráficos de Cockpit muestran el pasado (hasta un año atrás).
17. Protección
Pulsa el botón Mostrar informe de seguridad para ver un informe que incluye lo siguiente:
Cantidad de vulnerabilidades de seguridad en la versión de FreedomBox instalada.
- Cantidad de vulnerabilidades de seguridad para cada app instalada.
- Si cada app instalada soporta sandboxing de seguridad.
- Para cada app instalada, el porcentaje de cobertura del sandbox de seguridad.
17.1. Configuración
Cuando se habilita esta opción sólo los usuarios del grupo "admin" podrán entrar a la consola o mediante SSH. Los usuarios de consola podrán acceder a algunos servicios sin más autorización.
La sección Usuarios explica cómo definir grupos de usuarios.
Cuando la opción Acceso a consola restringido está habilitada, sólo los usuarios del grupo admin podrán ingresar via consola, shell segura (SSH) o interfaz gráfico. Al desactivar esta funcionalidad cualquier usuario con cuenta en FreedomBox podrá ingresar y quizá tener acceso a ciertos servicios sin más autorización. Esta opción solo debería desactivarse si se confía plenamente en todos los usuarios del sistema. Si quieres usar tu máquina FreedomBox también como escritorio y admitir que usuarios no-admin ingresen mediante interfáz gráfica esta opción debe estar desactivada. Puedes determinar la lista de usuarios admin en la sección Users.
18. Redes
Esta sección describe como se configura por defecto la red en FreedomBox y como se puede adaptar. Ver también la sección Cortafuegos para más información acerca de cómo funciona éste.
18.1. Configuración por defecto
En una imágen fresca de FreedomBox la red no está configurada. La configuración se realiza cuando la imágen se graba en una tarjeta SD y el dispositivo arranca. Durante el primer arranque el paquete FreedomBox setup detecta los interfaces (tarjetas) de red e intenta configurarlos automáticamente de modo que la FreedomBox quede disponible para seguir configurandola a través del interfaz web desde otra máquina, sin necesidad de conectar un monitor a la FreedomBox. La configuración automática también procura dejar la FreedomBox operativa para sus escenarios de uso más importantes.
Trata 2 escenarios:
cuando hay 1 único interfaz (tarjeta) ethernet
cuando hay múltiples interfaces (tarjetas) ethernet
18.1.1. Interfaz (tarjeta) ethernet único
Cuando el dispositivo hardware solo tiene 1 único interfaz (tarjeta) ethernet hay poco margen para que haga de router. En tal caso se asume que el dispositivo es solo una máquina más en la red. En consecuencia el único interfaz (tarjeta) disponible se configura para ser un interfaz interno en modo de configuración automática. Esto significa que se conecta a Internet empleando la configuración provista por un router de la red y que hace todos sus servicios (internos y externos) accesibles a todos los clientes que haya en esta red.
18.1.2. Múltiples interfaces (tarjetas) ethernet
Cuando el dispositivo hardware tiene múltiples interfaces (tarjetas) ethernet el dispositivo puede actuar como router. Entonces los interfaces se configuran para ejecutar esta función.
El primer interfaz (tarjeta) de red se configura para ser una WAN o interfaz externo en modo de configuración automático. Esto significa que se conecta a Internet empleando la configuración provista por el proveedor de servicio de internet (ISP). En este interfaz solo se expondrán los servicios concebidos para consumo desde Internet (servicios externos). Tu conexión a Internet tiene que llegar por el puerto de este interfaz (tarjeta) ethernet. Si quieres que tu router de siempre siga administrando tu conexión por tí conecta un cable desde tu router al puerto de este interfaz.
Los demás interfaces de red se configuran como clientes de router, como LAN o interfaces internos en modo de configuración compartido. Esto significa que todos sus servicios (internos y externos) se exponen a todos los clientes que entren desde esta red. Compartido implica además que los clientes podrán recibir detalles para conexión automática a la red. En concreto, la configuración DHCP y los servidores DNS se exponen en este interfaz. La conexión a Internet disponible para el dispositivo a través del primer interfaz se compartirá con los clientes que usen este interfaz. Todo esto implica que puedes conectar tus ordenadores a esta interfaz (tarjeta) de red y se configurarán automáticamente pudiendo acceder a Internet a través de tu FreedomBox.
Aunque el proceso de asignación es determinista actualmente no está muy claro qué interfaz será WAN (los demás serán LAN). Así que averiguar cual es cual conllevará un poco de prueba y error. En el futuro esto estará bien documentado para cada dispositivo.
18.1.3. Configuración de la Wi-Fi
Todos los interfaces Wi-Fi se configuran para ser LAN o interfaces internos en modo de configuración compartido. También se configuran para ser puntos de acceso Wi-Fi con los siguientes datos:
El nombre de cada punto de acceso será FreedomBox más el nombre del interfaz (para tratar el caso de que haya varios).
La contraseña para conectar a los interfaces será freedombox123.
18.2. Compartición de la Conexión a Internet
Aunque la principal obligación de FreedomBox es proporcionar servicios descentralizados también puede ejercer como router casero. Por tanto en la mayoría de los casos FreedomBox se conecta a Internet y proporciona a otras máquinas de la red la posibilidad de usar esa conexión a Internet. FreedomBox puede hacer esto de 2 formas: usando un modo de conexión compartido o empleando una conexión interna.
Cuando se configura un interfaz en modo compartido puedes conectarle tu máquina directamente, sea por cable desde este interfaz a tu máquina o conectando a través del punto de acceso Wi-Fi. Este caso es el más facil de usar porque FreedomBox automáticamente proporciona a tu máquina la configuración de red necesaria. Tu máquina conectará automáticamente a la red proporcionada por FreedomBox y podrá conectar a Internet ya que FreedomBox puede a su vez conectarse a Internet.
En ocasiones la configuración anterior podría no ser posible porque el dispositivo hardware tenga un único interfaz de red o por otros motivos. Incluso en este caso tu máquina puede todavía conectarse a Internet a través de la FreedomBox. Para que esto funcione asegúrate de que el interfaz de red al que se está conectando tu máquina esté en modo interno. Entonces conecta tu máquina a la red en la que está la FreedomBox. Después de esto configura la red de tu máquina indicando como puerta de enlace la dirección IP de la FreedomBox. FreedomBox aceptará entonces el tráfico de red de tu maquina y lo enviará a Internet. Esto funciona porque los interfaces de red en modo interno están configurados para enmascarar hacia Internet los paquetes que lleguen desde máquinas locales, así como para recibir paquetes desde Internet y reenviarlos hacia las máquinas locales.
18.3. Adaptaciones
La configuración por defecto anterior podría no servir para tu caso. Puedes adecuar la configuración para ajustarla a tus necesidades desde el área Redes de la sección Configuración del interfaz web de tu FreedomBox.
18.3.1. Conexiones PPPoE
Si tu ISP no proporciona configuración de red automática via DHCP y te obliga a conectar por PPPoE, para configurarlo elimina toda conexión de red existente en el interfaz y añade una de tipo PPPoE. Aquí, si procede, indica el usuario y la contraseña que te ha dado tu ISP y activa la conexión.
18.3.2. Conectar a Internet mediante Wi-Fi
Por defecto durante el primer arranque los dispositivos Wi-Fi se configurarán como puntos de acceso. Sin embargo se pueden reconfigurar como dispositivos Wi-Fi normales para conectar a la red local o a un router WiFi existente. Para hacer esto haz clic en la conexión Wi-Fi para editarla. Cambia el modo a Infraestructura en vez de Punto de Acceso y Método de direccionamiento IPv4 a Automático (DHCP) en vez de Modo compartido. SSID proporcionado significa el nombre de la red Wi-Fi a la que quieres conectar. Rellena la frase clave.
18.3.2.1. Problemas con la Funcionalidad de Privacidad
El gestor de red que emplea FreedomBox para conectar con las redes Wi-Fi tienen una funcionalidad de privacidad que usa una identidad para buscar redes diferente de la que emplea para conectar con el punto de acceso Wi-Fi. Desafortunadamente esto causa problemas con algunos routers que rechazan estas conexiones. Tu conexión no se activará con éxito y se desconectará. Si tienes control sobre el comportamiento del router puedes desactivar esta funcionalidad. Si no la solución es desactivar la funcionalidad de privacidad:
Entra a la FreedomBox por SSH o Cockpit.
Edita el fichero /etc/NetworkManager/NetworkManager.conf:
$ sudo nano /etc/NetworkManager/NetworkManager.conf
Añade la linea wifi.scan-rand-mac-address=no en la sección [device]:
[device] wifi.scan-rand-mac-address=no
Luego reinicia la FreedomBox.
18.3.3. Añadir un nuevo dispositivo de red
Al añadir un nuevo dispositivo de red network manager lo configurará automáticamente. En la mayoría de los casos esto no funcionará. Borra la configuración creada automáticamente en el interfaz y crea una conexión de red nueva. Selecciona tu interfaz recién creado en la página "añadir conexión".
- Configura la zona del cortafuegos como corresponda.
- Puedes configurar los interfaces para conectar a la red o proporcionar configuración de red a cualquier máquina que se le conecte.
- De modo similar, si es un interfaz Wi-Fi puedes configurarlo para ser un punto de acceso Wi-FI o para conectarse a puntos de acceso existentes en la red.
18.3.4. Configurar una red Mesh
FreedomBox tiene un soporte rudimentario para participar en redes mesh basadas en BATMAN-Adv. Es posible unirse a una red existe en tu zona o crear una red mesh nueva y compartir tu conexión a Internet con el resto de nodos que se unan a tu red. Tanto para unirte a una red mesh como para crear otra, actualmente hay que crear 2 conexiones y activarlas manualmente.
18.3.4.1. Unirse a una red Mesh
Para unirse a una red mesh existente en tu zona primero consulta a sus organizadores y obtén información acerca de la red.
Crea una conexión nueva y selecciona el tipo de conexión Wi-Fi. En el siguiente diálogo rellena los valores como se indica:
Nombre del campo
Valor de ejemplo
Explicación
Nombre de la Conexión
Mesh Join - BATMAN
El nombre tiene que acabar en BATMAN (con mayúsculas).
Interfaz físico
wlan0
El dispositivo Wi-Fi que quieres usar para conectar a la red mesh.
Zona del cortafuegos
Externa
Ya que no quieres que los participantes en la red mesh usen dispositivos internos de tu FreedomBox.
SSID
ch1.freifunk.net
Tal como te lo hayan dado los operadores de la red mesh. Esta red debería mostrarse en Redes Wi-Fi accesibles.
Modo
Ad-hoc
Porque esta red es una red de pares (peer-to-peer).
Banda de Frecuencia
2.4Ghz
Tal como te lo hayan dado los operadores de la red mesh.
Canal
1
Tal como te lo hayan dado los operadores de la red mesh.
BSSID
12:CA:FF:EE:BA:BE
Tal como te lo hayan dado los operadores de la red mesh.
Autenticación
Abierta
Déjala abierta salvo que sepas que tu red mesh necesite otro valor.
Contraseña
Déjala en blanco salvo que sepas el valor que necesite tu red mesh.
Método de direccionamiento IPv4
Deshabilitado
Todavía no queremos pedir una configuración IP.
Graba la conexión y únete a la red mesh activándola.
Crea una segunda conexión nueva y selecciona el tipo Genérica. En el siguiente diálogo rellena los valores como se indica:
Nombre del campo
Valor de ejemplo
Explicación
Nombre de la Conexión
Mesh Connect
Cualquier nombre para identificar ésta conexión.
Interfaz físico
bat0
Este interfaz solo aparecerá tras activar con éxito la conexión del paso anterior.
Zona del cortafuegos
Externa
Ya que no quieres que los participantes en la red mesh usen dispositivos internos de tu FreedomBox.
Método de direccionamiento IPv4
Auto
Generalmente las redes mesh tienen un servidor DHCP en algún sitio que le proporciona una configuración IP a tu máquina. Si no, consulta al operador y configura la dirección IP como te diga por el método manual.
Graba la conexión. Configura tu maquina para participar en la red activando esta conexión. Actualmente hay que activarla manualmente cada vez que quieras unirte a la red. En el futuro FreedomBox lo hará automáticamente.
Ahora debieras poder llegar a otros nodos de la red. También podrás conectar a Internet a través de la red mesh si los operadores han instalado algúna puerta de enlace.
18.3.4.2. Crear una red Mesh
Para crear tu propia red mesh y compartir tu conexión a Internet con el resto de los nodos de la red:
Sigue las instrucciones del paso 1 de Unirse a una red Mesh empleando los valores válidos para tu red en SSID (un nombre para tu red Mesh), Banda de Frecuencia (generalmente 2.4Ghz), Canal (entre 1 y 11 para la banda de 2.4Ghz) y BSSID (una secuencia hexadecimal como 12:CA:DE:AD:BE:EF). Crea esta conexión y actívala.
Sigue las instrucciones del paso 2 de Unirse a una red Mesh seleccionando Compartido para Método de direccionamiento IPv4d. Esto proporcionará automáticamente una configuración IP a otros nodos de la red y compartirá la conexión a Internet de tu maquina (ya sea mediante un segudo interfaz Wi-Fi, Ethernet, etc.) con el otros nodos de la red mesh.
Corre la voz entre tus vecinos acerca de tu red mesh y pásales los parámetros que has empleado al crearla. Cuando otros nodos se conecten a esta red mesh tendrán que seguir las instrucciones del paso 1 de Unirse a una red Mesh empleando en SSID, Banda de Frecuencia y Canal los valores que has elegido para tu red mesh al crearla.
18.4. Operación avanzada de Red
Cockpit proporciona muchas funcionalidades de red más avanzadas que las de FreedomBox. Ambos, FreedomBox y Cockpit, operan sobre Network Manager y son por ello compatibles entre sí. Entre las funciones de Cockpit se incluyen:
- Establer de la unidad máxima de transmisión (MTU) para una conexión de red.
- Cambiar de la dirección hardware (MAC) de un interfaz de red.
- Añadir más servidores DNS y configurar el enrutado de una conexión de red.
- Crear dispositivos coordinados para interfaces de red de alta disponibilidad.
- Crear dispositivos en puente para agregar redes diferentes en un mismo interfaz de red.
- Administrar VLAN para crear particiones virtuales en la red física.
18.5. Operación manual de Red
FreedomBox configura redes automáticamente por defecto y proporciona un interfaz simplificado para personalizar la configuración a necesidades específicas. En la mayoría de los casos la operación manual no es necesaria. Los siguientes pasos describen cómo operar la configuración de red a mano en caso de que el interfaz de FreedomBox le resulte insuficiente a un usuario para realizar una tarea o para diagnosticar un problema que FreedomBox no identifique.
En el interfaz de línea de comandos:
Para acceder a un interfaz de configuración de conexiones de red basado en texto:
nmtui
Para ver la lista de dispositivos de red disponibles:
nmcli device
Para ver la lista de conexiones configuradas:
nmcli connection
Para ver el estado actual de una conexión:
nmcli connection show '<nombre_de_la_conexión>'
Para ver la zona asignada actualmente en el cortafuegos a un interfaz de red:
nmcli connection show '<nombre_de_la_conexión>' | grep zone
o
firewall-cmd --zone=internal --list-all firewall-cmd --zone=external --list-all
Para crear una conexión nueva:
nmcli con add con-name "<nombre_de_la_conexión>" ifname "<interfaz>" type ethernet nmcli con modify "<nombre_de_la_conexión>" connection.autoconnect TRUE nmcli con modify "<nombre_de_la_conexión>" connection.zone internal
Para cambiarle la zona a una conexión en el cortafuegos:
nmcli con modify "<nombre_de_la_conexión>" connection.zone "<internal|external>"
Para más información acerca del uso del comando nmcli mira su página man. Para obtener una lista completa de configuraciones y tipos de conexión que acepta Network Manager mira:
https://developer.gnome.org/NetworkManager/stable/ref-settings.html
Para ver el estado actual del cortafuegos y operarlo manualmente lee la sección Cortafuegos.
19. Servicios de Nombre
Los Servicios de Nombre proporcionan una vista general a las formas de acceder desde la Internet pública a tu !Freedombox: nombre de dominio, servicio Tor Onion y cometa (Pagekite). Para cada tipo de nombre se indica si los servicios HTTP, HTTPS, y SSH están habilitados o deshabilitados para conexiones entrantes.También muestra y permite configurar como FreedomBox resuelve los nombres de dominio.
19.1. systemd-resolved
Desde la versión 24.19, FreedomBox emplea systemd-resolved como resolutor DNS con memoria y reemplaza a resolvconf para administrar la configuración del servidor DNS. Esto mejora la privacidad y la seguridad. Las instalaciones nuevas vendrán con systemd-resolved de serie y las anteriores cambiarán automáticamente tras una actualización a esta nueava versión.
systemd-resolved obtiene servidores DNS automáticamente de Network Manager, la forma recomendada y por omisión de configurar redes en FreedomBox. No obstante, si administras la configuración de tu red editando a mano /etc/network/interfaces, tendrás que asegurar que los servidores DNS le lleguen a systemd-resolved. Si no, se usarán los servidores DNS de último recurso. Ver más abajo.
19.2. Soporte para DNS-sobre-TLS y DNSSEC
systemd-resolved soporta DNS-sobre-TLS. Este protocolo permite cifrar la comunicación entre FreedomBox y el servidor de DNS server (habitualmente proporcionado por su proveedor de internet), si este lo soporta. Esto mejora la privacidad y la seguridad porque complica a posibles intermediarios ver o maniplar la comunicación. Los ajustes para habilitar DNS-sobre-TLS están disponibles a nivel global (para todas las interfaces de red) en la aplicación _Servicios de Nombre_ y a nivel de conexión en los ajusted de conexion de la aplicación _Redes_.
systemd-resolved soporta DNSSEC. Este estándar permite a los dueños de sitios web firmar sus registros DNS, permitiendo así a los clientes autenticarlos. Esto mejora la seguridad al complicar la manipulación de respuestas DNS. Si tu servidor DNS soporta esta funcionalidad se puede habilitar. Hay un nuevo ajuste para activar DNSSEC disponible en la aplicación _Servicios de Nombre_.
Puedes detectar si tu DNS actual soporta DNS-over-TLS y DNSSEC si habilitas ambos de uno en uno y ejecutas los diagnósticos de la aplicación de _Nombres_. Hay un diagnostico que detecta si puedes resolver con éxito el nombre de dominio deb.debian.org.
19.3. Configurar un servidor DNS personalizado
Si el proveedor de servidor DNS que te pone actualmente tu proveedor de internet no soporta las funcionalidades DNS-sobre-TLS o DNSSEC, censura algunos nombres de domino, o no confías en él lo suficiente, puedes usar un servidor DNS de los públicamente disponibles. Esto se hace editando las conexiones de red en la aplicación de _Redes_ y añadiendo los servidores DNS a mano. Para que los ajustes tengan efecto necesitarás reiniciar tu conexión de red desactivándola y activándola a continuación (o reiniciando FreedomBox). Después de esto la aplicación _Nombres_ te mostrará los servidores DNS configurados.
19.4. Servidores DNS de último recurso
En algunos casos, cuando la conexón a internet está disponoble pero systemd-resolved no conoce los servidores DNS, se usan los de último recurso. Esto podría pasar, por ejemplo, debido a una configuración errónea o con configuraciones de red administradas manualmente. Los servidores DNS de último recurso que configura por omisión el proyecto systemd incluyen servidores de Cloudflare y de Google. Esto fué una decisión difícil porque conlleva riesgos de privacidad pero pensamos que era importante evitar que FreedomBox quede inaccesible por un fallo de configuración. Una vez que tienes una configuración DNS funcional puedes esactivar los servidores DNS de último recurso usando el nuevo ajusta de la aplicación de _Privacidad_. En el interfaz web hay también una nueva notificación que atraerá tu atención a este asunto. También puedes editar la lista de servidores DNS de último recurso creando un archivo de configuración para systemd-resolved. Mira la documentación de systemd-resolved.
20. Shell Segura
20.1. ¿Qué es Shell Segura?
FreedomBox ejecuta el servidor openssh-server por defecto permitiendo así accesos remotos desde todos los interfaces. Si tu dispositivo hardware está conectado a un monitor y un teclado, también puedes ingresar directamente. Para la operación habitual de FreedomBox no necesitas usar la shell. No obstante, algunas tareas o identificación de algún problema podrían requerirlo.
20.2. Configurando una Cuenta de Usuario
20.2.1. Primer ingreso a FreedomBox: Cuenta de Admin
Al crear una cuenta en FreedomBox por primera vez, el usuario tendrá automaticamente privilegios de administrador. Los usuarios Admin pueden ingresar mediante ssh (abajo se explica cómo) y escalar sus privilegios a superusuario mediante sudo.
20.2.2. Cuenta de Usuario por Defecto
Nota: Si puedes acceder al interfaz web de FreedomBox es que no necesitas hacer esto. Puedes usar la cuenta de usuario del interfaz web de FreedomBox para conectar por SSH.
Las imagenes precompiladas FreedomBox tienen una cuenta de usuario llamada fbx pero no tiene contraseña establecida, así que no se puede ingresar con esta cuenta.
Hay un script incluído en el programa freedom-maker que permite establecer la contraseña de esta cuenta si fuera necesario:
- Descomprime la imagen.
Obtén una copia de freedom-maker en https://salsa.debian.org/freedombox-team/freedom-maker/.
Ejecuta sudo ./bin/passwd-in-image <archivo_de_imagen> fbx.
- Copia el archivo de la imagen a la tarjeta SD e inicia el dispositivo.
El usuario "fbx" también tiene privilegios de superusuario mediante sudo.
20.3. Ingresando
20.3.1. ¿Quién puede ingresar a FreedomBox por SSH?
Los usuarios administradores de FreedomBox pueden usar SSH para ingresar. FreedomBox crea el superusuario 'fbx'. Hay opciones que permiten ingresar a usuarios normales:
Se puede otorgar individualmente permiso de acceso por SSH a usuarios concretos en la página Editar Usuario seleccionando la opción Ingreso remoto usando Secure Shell (SSH) (freedombox-ssh).
Se puede otorgar permiso de acceso por SSH en masa a todos los usuarios en la página de configuración de SSH seleccionando la opción Permitir el ingreso remoto por SSH a todos los usuarios.
En una FreedomBox nueva puedes ingresar con SSH como fbx y los demás usuarios normales podrán hacerlo tras ajustar sus cuentas o la configuración de la Shell Segura arriba en esta sección. La cuenta de usuario root no podrá ingresar al no tener contraseña.
20.3.2. Software Cliente SSH
Muchos sistemas operativos, incluyendo Linux, Windows de Microsoft y MacOS de Apple incluyen clientes SSH. SSH se incluye en Chromebooks pero requiere que el usuario lo configure. En la mayoría de los casos puedes ejecutar SSH desde la terminal o línea de órdenes como se muestra aquí, usando el nombre de la máquina de FreedomBox o su dirección IP:
$ ssh freedombox.local
Si tu cliente no tiene SSH disponible, PuTTY es un cliente SSH popular y es software libre conforme a las Directrices de Debian para Software Libre. PuTTY tiene una interfaz gráfica para recordar y administrar tus conexiones SSH. Consulta los enlaces externos más abajo para amplisr información acerca de PuTTy.
20.3.2.1. Cockpit como alternativa a SSH
La aplicación Terminal de Administración de Servidor Cockpit disponible en el menú de Herramientas Cockpit es una herramienta de acceso por terminal alternativa a SSH. Como con SSH, su conexión al terminal FreedomBox esta securizada. Cockpit es una buena opción para usuarios que no quieran habilitar el servidor SSH o que prefieran conectar mediante un navegador web. Com ambas herramientas se te presentará el interfaz de línea de órdenes bash de FreedomBox.
Algunos usuarios prefieren ejecutar SSH en vez de o junto a Cockpit. Los usuarios de la consola de órdenes suelen preferir SSH porque ya lo usan. Los usuarios con experiencia administrando sistemas Linux o Unix suelen preferir este método de conexión porque es un servicio más simple y se cree que es más propenso a permanecer disponible en caso de problemas.
Para configurar Cockpit y los certificados SSL con seguridad lea las secciones del manual Cockpit y Let's Encrypt, respectivamente.
20.3.3. SSL en la Red Local
Para ingresar mediante SSH a tu FreedomBox:
$ ssh fbx@freedombox
Reemplaza fbx por el usuario con el que quieres ingresar. fbx es el usuario de FreedomBox con privilegios de superusuario por defecto. Cualquier otro usuario creado con FreedomBox que pertenezca al grupo admin podrá ingresar. La cuenta root no tiene contraseña configurada y no podrá ingresar. A todos los demás usuarios se les denegará el acceso.
Hay que reemplazar freedombox por el hostname o dirección IP de tu dispositivo FreedomBox como se indica en el proceso de Inicio rápido:
$ ssh fbx@192.168.1.1
Si tu FreedomBox tiene un nombre de dominio asignado también puedes usarlo:
$ ssh fbx@mifreedombox.freedombox.rocks
Si fallas repetidamente intentando ingresar se te bloqueará el acceso por algún tiempo. Esto se debe al paquete libpam-abl que FreedomBox instala por defecto. Para controlar este comportamiento consulta la documentación de libpam-abl.
En esta seccion hemos usado el nombre de la máquina con la extensión .local (usando multicast DNS), una dirección IP local, y un nombre de dominio para conectar a FreedomBox por SSH.
20.3.4. SSH desde Internet
Si tu router está configurado al efecto para tu FreedomBox o la tienes directamente expuesta a internet puedes usar también un nombre de dominio o dirección IP públicos del mismo modo que en la red local. Pero el Multicast DNS no funciona desde internet.
Veámos ahora cómo conectar a FreedomBox por SSH usando otras redes.
20.3.5. SSH via Tor
Si tienes habilitados en FreedomBox los servicios Tor Onion puedes acceder a tu FreedomBox mediante ssh sobre Tor. Instala netcat-openbsd.
$ sudo apt-get install netcat-openbsd
Edita ~/.ssh/config para habilitar conexiones sobre Tor.
$ nano ~/.ssh/config
Añade lo siguiente:
Host *.onion user USUARIO port 22 ProxyCommand nc -X 5 -x 127.0.0.1:9050 %h %p
Reemplaza USUARIO por un usuario del grupo admin (ver arriba).
En algunos casos podrías necesitar reemplazar 9050 por 9150.
Ahora, para conectar a la FreedomBox abre un terminal y teclea:
$ ssh USUARIO@DIRECCION.onion
Reemplaza USUARIO por un usuario del grupo admin y DIRECCION por la dirección del servicio Tor Onion para SSH de tu FreedomBox.
20.4. Escalar a Superusuario
Si después de ingresar quieres volverte superusuario para realizar actividades administrativas:
$ sudo su
Habitúate a ingresar como root solo cuando sea estrictamente necesario. Si no ingresas como root no puedes romperlo todo accidentalmente.
20.5. Cambiar Contraseñas
Para cambiar la contraseña de un usuario administrado en el interfaz web de FreedomBox usa la página Cambiar clave de acceso. El usuario por debecto fbx no se administra en el interfaz web de FreedomBox y su contraseña no se puede cambiar desde él.
Para cambiar la contraseña en el terminal ingresa a tu FreedomBox con el usuario cuya contraseña quieres cambiar y ejecuta el siguiente comando:
$ passwd
Esto te preguntará tu contraseña actual antes de darte la oportunidad de establecer la nueva.
20.6. Claves SSH
El siguiente paso para mejorar la seguridad y la comodidad es comprender y empleare las claves SSH. Si la primera vez ingresaste a tu FreedomBox mediante SSH siguiendo las instrucciones anteriores diste un usuario y una contraseña. In esta sección aprenderás acerca de huellas de servidor, claves de máquina, claves autorizadas, y los motivos para usarlas securizando la conexión a la vez que la facilitas.
SSH está configurada por omisión para preferir ingresar con claves mientras te sigue permitiendo emplear un nombre de usuario y contraseña. Al final de esta sección podrás:
Conectar a FreedomBox sabiendo que te conectas al ordenador deseado.
- Conectar instantáneamente sin tener que dar usuario y contraseña.
Mejorar la seguridad de tu FreedomBox deshabilitando la autenticación a SSH mediante cotraseña.
20.6.1. Claves SSH Públicas y Privadas
Las claves SSH se generan emparejadas. Cada par par consta de una clave pública y su clave privada correspondiente. Cada clave cifra los datos de modo que solo se pueden leer con la otra: lo que cifra la privada solo lo descifra la pública y viceversa. Esto se llama sistema de cifrado asimétrico. SSH mantendrá tus claves privadas seguras y comunicará automáticamente tus claves públicas al otro sistema.
Empplear claves SSH crea un conjunto potente de características de seguridad:
Te aseguran que te conectas a tu FreedomBox (y no a un impostor).
Nadie más podrá leer ni modificar tu comunicación con FreedomBox.
El servicio SSH de FreedomBox SSH sabrá que eres tú (y no un impostor) el usuario conectado.
Nadie más podrá leer ni modificar la comunicación de FreedomBox destinada a tí.
- La conexión es automática sin nombre de usuario ni contraseña.
Tu FreedomBox puede bloquear cualquier ataque basado en adivinar tu contraseña.
20.6.2. Crea tus claves SSH personales en tu ordenador cliente usando ssh-keygen
Crearemos un par de claves SSH tu ordenador cliente usando usando valores por omisión y sin dar una contraseña. Usa el comando ssh-keygen sin argumentos y cuando se te pida una contraseña introdúcela vacía. He aquí un ejemplo:
$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/username/.ssh/id_rsa): Created directory '/home/username/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/username/.ssh/id_rsa Your public key has been saved in /home/username/.ssh/id_rsa.pub The key fingerprint is: SHA256:nHcTP5DBKxBOgt8BFMyb2QUs//t8ge+8vw2zjOuE71U username@clientpc The key's randomart image is: +---[RSA 3072]----+ | ==++o .. | | . +++ . .o | | . O.+ +. | | =.+.. .+ | | S...o.o E| | ..o...o | | ....+. | | .+ =o+.| | +O+*++| +----[SHA256]-----+
Ya tienes un par de claves SSH personales en tu ordenador cliente.
20.6.3. Verificar la Huella de tu Servidor FreedomBox
La primera vez que te conectes a FreedomBox se te presentará un mensaje como este:
$ ssh fbx@freedombox.local No se puede asegurar la autenticidad de 'freedombox.local (192.168.1.4)'. Su huella ED25519 es SHA256:TwJFdepq7OaTXcycoYfYE8/lRtuOxUGCrst0K/RUh4E. Esta huella no consta asociada a ningún otro nombre. ¿Seguro que quiere conectar (Si/No/[huella])?
Hay varias partes que hay que entender en este mensaje:
- SSH te dice que nunca antes has conectado con este servidor por lo que no puede garantizarte que sea seguro.
- SSH te ofrece la oportunidad de validar este nuevo servidor indicando 'Si'.
- SSH ha recibido una clave de cifrado para comunicar con seguridad con este servidor (aunque no tengamos certeza de a qué máquina nos conectamos).
SSH te está dando información que usarás para confirmar que el servidor SSH remoto es tu FreedomBox.
Vé con tu navegador a FreedomBox. Entra en el menú de Sistema y luego a Shell Segura. La segunda sección de esta página es Huellas de Servidor y tiene una entrada ED25519:
Algoritmo |
Huella |
RSA |
SHA256:ZGvgdxiDEpGKdw82Z6z0QRmDpT3Vgi07Ghba5IBJ4tQ |
ECDSA |
SHA256:BLMMfPxNHpHF0sqCazAwE6ONdLtMY+W2yrgjP7AeXcQ |
ED25519 |
SHA256:TwJFdepq7OaTXcycoYfYE8/lRtuOxUGCrst0K/RUh4E |
Compara la huella ED25519 de la página Shell Segura de tu FreedomBox con la que ha recibido tu cliente SSH en su primera conexión. Si las huellas coinciden puedes confiar que estás conectando con tu FreedomBox.
Me gustaría acompañarte a dar estos pasos pero ... ¿ya has realizado tu primera conexión? Puedes reiniciar el proceso con esta orden en el ordenador de tu cliente SSH.
$ ssh-keygen -R freedombox.local
Esto borra el registro de tu conexión a FreedomBox. Ahora abre la página de configuración de la Shell Segura en FreedomBox por la sección de Huellas de Servidor. A continuación conecta a FreedomBox con tu cliente SSH y verifica la huella de servidor antes de responder afirmativamente a la pregunta de authenticidad de la máquina. Hacer esto correctamente te garantiza que cuando conectes mediante SSH a FreedomBox te conectas al tuyo (y no a otro).
Cada vez que te conectes a un servidor SSH nuevo para tí se te dará la oportunidad de verificar su huella. Si te conectas a FreedomBox usando nombres o direcciones IP diferentes (IP local, nombre DNS, nombre Pagekite, dirección .onion para TOR...) se te preguntará una vez por cada una pero la huella será siempre la misma.
Las huellas de tu servidor no son secretas. La huella es una versión resumida de la clave pública que se comparte para que la usen para cifrar la comunicación que se te envía. Tu clave pública tampoco es secreta. Podrías publicar las huellas y las claves públicas sin afectar un ápice a la seguridad de tu FreedomBox.
20.6.4. Comparte tu clave SSH personal pública con FreedomBox usando ssh-copy-id
Ahora que tienes una clave personal y has verificado la identidad de FreedomBox, éste sigue sin conocer la tuya y te pedirá una contraseña al intentar ingresar mediante SSH. La orden ssh-copy-id le dirá a FreedomBox que acepte tu clave personal en vez de tu contraseña.
$ ssh-copy-id username@freedombox.local /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys username@freedombox.local's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@freedombox.local'" and check to make sure that only the key(s) you wanted were added.
Estos pasos emparejan tu clave personal pública a tu cuenta de usuario en FreedomBox. Al completar este paso el servidor SSH de FreedomBox comparará la clave que le envía el ordenador cliente con la que ha guardado FreedomBox. Si coinciden ingresarás sin necesidad de introducir una contraseña. Compruébalo ahora:
$ ssh freedombox.local Linux freedombox 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 .--._ _.--. ( \ / ) \ /\ / \_ \/ _/ / \ ( /\ ) `--' `--' FreedomBox FreedomBox is a pure blend of Debian GNU/Linux. Web interface is available at https://localhost/ . FreedomBox manual is available in /usr/share/doc/freedombox and from the web interface. The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Sun Mar 17 14:27:03 2024 from 192.168.144.101 username@freedombox:~$
Una vez FreedomBox conoce tu clave pública podrás conectar usándola sin importar cómo te refieras a FreedomBox:
- Nombre en la red local
- Dirección IP en la red local
- Dirección IP pública de tu proveedor de internet
- Nombre DNS, si usas DNS dinámico
- Nombre Pagekite, si usas Pagekite
- Dirección .onion, si usas TOR
20.6.5. Bloquear intentos de adivinar tu contraseña SSH deshabilitando la autenticación mediante contraseña
Cuando ya puedas conectar a FreedomBox por SSH mediante clave SSH sin introducir contraseña puedes dar otro paso para mejorar la seguridad de FreedomBox. Si tienes tu FreedomBox accesible desde internet quizá notes que se repiten intentos de ingreso desde internet. Una buena contraseña es tu primera linea de defensa, pero FreedomBox tiene más características para protegerte de estos intentos de intrusión. Puedes atajar por completo este disparate deshabilitando la autenticación por contraseña para la Shell Segura. En el menú de Sistema de tu FreedomBox elige la Configuración de Shell Segura y debajo de Configuración selecciona "Deshabilitar autenticación por contraseña":
- [x] Deshabilitar autenticación por contraseña
Dale al botón "Actualizar Ajustes". Esto impide cualquier intento de intrusión que quiera adivinar tu contraseña. Podrás ingresar desde este ordenador cliente con tu clave.
20.6.5.1. Conculsión acerca de la Huella de Servidor
En esta sección hemos aprendido a encontrar las Huellas de Servidor de la Shell Segura de FreedomBox. Hemos verificado la conexión con FreedomBox comparando la huella recibida por el cliente SSH con la que hay en el servidor SSH de FreedomBox. Estos pasos solo se necesitan la primera vez que conectamos con FreedomBox. Quizá necesites repetirlos al conectar mediante la dirección IP o los nombres de la máquina en la red local o desde fuera de ella. En cada caso recibirás la misma Huella de Servidor que podrás verificar la primera vez.
20.6.6. La Identificación Remota de la Máquina ha Cambiado : ¿Qué Significa y Qué Hacer?
En algún momento quizá te topes con un mensaje alarmante como este al intentar acceder a tu FreedomBox con SSH:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:ZGvgdxiDEpGKdw82Z6z0QRmDpT3Vgi07Ghba5IBJ4tQ. Please contact your system administrator. Add correct host key in /home/username/.ssh/known_hosts to get rid of this message. Offending RSA key in /home/username/.ssh/known_hosts:2 remove with: ssh-keygen -f "/home/username/.ssh/known_hosts" -R "freedombox.freedombox.rocks" Host key for freedombox.freedombox.rocks has changed and you have requested strict checking. Host key verification failed.
Este mensaje es importante. Normalmente no es grave pero podría ser consecuencia de un ataque. Lo importante es que siempre actúes siempre con prudencia.
Este mensaje viene a decir que la relación de confianza con el servidor SSH a través de la verificación de su huella y el intercambio de claves con ssh-copy-id se ha roto. Leyendo detenidamente el mensaje, dice que la huella enviada por FreedomBox al conectar no coincide con la registrada en el cliente SSH cuando se verificó. Esto puede indicar cosas diferentes:
El fichero .ssh/known_hosts de to cliente ha sido modificado se ha corrompido de tal modo que la huella se ha alterado.
Has generado claves nuevas para tu servidor FreedomBox SSH.
Tu red ha cambiado de tal modo que al intentar acceder a tu FreedomBox tu conexión se desvía y llega a otro sitio. Esto puede pasar si tras cambiar la dirección IP de tu FreedomBox sigues inentando acceder a la antigua, o podría ser un ataque de red sofisticado.
Aregla esto borrando el registro de tu FreedomBox en el ordenador cliente. Ejecuta este comando con los datos del mensaje de error que recibes (¡No lo copies del ejemplo anterior!).
$ ssh-keygen -f /home/username/.ssh/known_hosts -R "freedombox.freedombox.rocks" # Host freedombox.freedombox.rocks found: line 2 # Host freedombox.freedombox.rocks found: line 3 /home/username/.ssh/known_hosts updated. Original contents retained as /home/username/.ssh/known_hosts.old
Haciendo esto has anulado la verificación de huella de tu FreedomBox. Vuelve a la sección Verificar la Huella de tu Servidor FreedomBox y repitela. Asegúrate así de que te conectas a tu FreedomBox en caso de ataque.
20.7. Enlaces externos
Proyecto original: https://www.openssh.com
Documentación de uso: https://www.openssh.com/manual.html
Software cliente PuTTY : https://www.chiark.greenend.org.uk/~sgtatham/putty/
SSH en el wiki de Debian: https://wiki.debian.org/SSH
21. Usuarios y Grupos
Puedes otorgar acceso a tu FreedomBox a otros usuarios. Proporciona el nombre del usuario y su contraseña y asignale un grupo. Actualmente se soportan los grupos
- admin
- bit-torrent
- calibre
- ed2k
- feed-reader
- freedombox-share
- git-access
- minidlna
- syncthing
- web-search
- wiki
El usuario podrá ingresar a los servicios que soporten ingreso único (single-sign-on) mediante LDAP si figuran en el grupo apropriado.
Los usuarios del grupo admin podrán ingresar en todos los servicios. También pueden ingresar al sistema por SSH y escalar a privilegios administrativos (sudo).
Estas características se pueden cambiar más tarde.
Asimismo es posible establecer una clave pública SSH que permitirá al usuario ingresar al sistema de modo seguro sin emplear su contraseña. Pueder dar de alta varias claves, una en cada línea. Las líneas en blanco o que comiencen por # se ignoran.
El idioma de la interfaz se puede establecer individualmente para cada usuario. Por omisión se emplea el del navegador.
Se pueden desactivar temporalmente las cuentas de usuarios.
Hardware
FreedomBox está diseñado para ser el software de un dispositivo electrónico de consumo que sea fácil de configurar, mantener y usar. El proyecto no pretende crear un dispositivo hardware propio, sino asociarse con fabricantes de hardware para construir dispositivos FreedomBox y también soportar hardware existente.
Además de soportar varios SBC's (single board computers) y otros dispositivos, FreedomBox también contempla ser instalado en una máquina virtual. Y cualquier máquina Debian se puede convertir en FreedomBox instalando el paquete freedombox. Para más detalles acerca de la instalación sobre Debian, ver el manual.
1. Hardware Recomendado
El 22 de Abril de 2019, la FreedomBox Foundation anunció que los kits Pioneer Edition FreedomBox Home Server salían a la venta. Este es el hardware preinstalado recomendado para todos los usuarios que no quieran construirse su propia (máquina) FreedomBox eligiendo los componentes adecuados, descargando la imagen y preparando una tarjeta SD con (el software) FreedomBox.
El kit incluye todo el hardware necesario para arrancar un servidor casero FreedomBox sobre una placa Olimex A20-OLinuXino-LIME2. Este producto proporciona la combinación perfecta de hardware de fuentes abiertas y software libre. Al comprar este producto, soportas también los esfuerzos de la FreedomBox Foundation para crear y promover su software de servidor libre.
2. Hardware Soportado
Usa este hardware si quieres y eres capaz de descargar imágenes FreedomBox y preparar una tarjeta SD siguiendo el manual. Si quieres un proceso más simple de configuración compra por favor los kits FreedomBox con el hardware recomendado. Si usas una placa con tarjetas SD te recomendamos que al grabar la imagen de FreedomBox en tu tarjeta, ésta tenga al menos una capacidad de 8GB.
2.1. Comparativa de Hardware
Nombre |
Velocidad CPU (GHz) |
Arquitectura |
RAM (GB) |
disco (GB) |
batería |
SATA |
Velocidad Ethernet |
|
APU.1D |
1x2 |
amd64 |
2 |
- |
- |
|
1000x3 |
|
APU.1D4 |
1x2 |
amd64 |
4 |
- |
- |
|
1000x3 |
|
BeagleBone Black C |
1 |
armhf/omap |
½ |
4 |
- |
- |
100 |
|
Cubieboard2 |
1x2 |
armhf/sunxi |
1 |
4 |
|
|
100 |
|
Cubieboard2-Dual |
1x2 |
armhf/sunxi |
1 |
- |
|
|
100 |
|
Cubieboard3/Cubietruck |
1x2 |
armhf/sunxi |
2 |
8 |
|
|
1000 |
|
OLinuXino A20 LIME |
1x2 |
armhf/sunxi |
½ |
- |
|
|
100 |
|
OLinuXino A20 LIME2 |
1x2 |
armhf/sunxi |
1 |
- |
|
|
1000 |
|
OLinuXino A20 MICRO |
1x2 |
armhf/sunxi |
1 |
- |
|
|
100 |
|
pcDunino3 |
1x2 |
armhf/sunxi |
1 |
4 |
|
|
100 |
|
Pine A64+ |
1.2x4 |
arm64/sunxi |
½,1,2 |
- |
- |
- |
1000 |
|
Banana Pro |
1.2x2 |
armhf/sunxi |
1 |
- |
- |
|
1000 |
|
Orange Pi Zero |
?x4 |
armhf/sunxi |
¼,½ |
- |
- |
- |
100 |
|
RockPro64 |
1.4x4+1.8x2 |
arm64 |
2,4 |
16,32,64,128 |
- |
(USB3 o mediante tarjeta PCIe) |
1000 |
|
Rock64 |
1.5x4 |
arm64 |
1,2,4 |
16,32,64,128 |
- |
(USB3) |
1000 |
|
3. Más Hardware
3.1. Más Hardware Operativo
FreedomBox funciona en este hardware. Pero no se recomienda porque (el hardware) no funciona empleando únicamante software libre.
3.2. Hardware Soportado mediante Imágenes Genéricas
Si ya tienes un hardware que quieres convertir en una FreedomBox, no dejes que la corta lista de hardware soportado te desanime. Si estás usando máquinas de arquitectura AMD o Intel puedes descargar las imágenes genéricas de tu arquitectura y funcionarán en cualquier máquina. Para arquitecturas ARM de 32 o 64 bits, tenemos una solución similar.
A partir de Agosto de 2020 comenzamos a compilar imágenes genéricas que funcionan para todas las computadoras monoplaca basadas en una solución que involucra a los estándares UEFI y al firmware u-boot. Con este enfoque un pequeño firmware específico de la placa residente en una flash SPI o en una tarjeta SD es responsable de cargar una imágen genérica de FreedomBox puesta en una tarjeta SD, un disco USB, SATA o NVMe. De este modo, busca y obtén un firmware basado en u-boot del fabricante de tu hardware y ponlo en una flash SPI o una tarjeta SD. A continuación, asegúrate de que el kernel de FreedomBox soporta tu placa y ponlo en cualquiera de los otros discos de almacenamiento. Este enfoque debería funcionar bien para montones de placas que no están listadas específicamente como soportadas. Mira la sección firmware para más detalles.
Nosotros continuamos compilando imágenes especificas para algún hardware como hacíamos antes. Éstas imágenes tienen la ligera ventaja de que son más fáciles de montar porque conllevan menos pasos. Sin embargo intentamos descontinuarlas porque no arrancan desde todos los dispositivos de almacenamiento y consumen nuestro tiempo, limitando así la cantidad de placas que soportamos.
3.3. Añadir Soporte a Hardware
Si tu hardware no esta en la lista anterior pero fuiste capaz de hacerlo funcionar usando el método descrito anteriormente de usar una imágen genérica, escríbenos y lo incluiremos en la lista. Es más, mira la lista de hardware objetivo con las placas que queremos soportar.
4. Hardware Obsoleto
Este hardware estuvo soportado anteriormente pero ya no. Si descargaste una imagen anterior y ejecutas FreedomBox sobre algún hardware de estos, seguirás obteniendo actualizaciones de software. Sin embargo, no se publicarán imagenes nuevas. Se recomienda que migres a hardware nuevo y soportado generando una copia de seguridad y restaurándola.
DreamPlug
- Raspberry Pi
Nota: Hardware soportado significa que las imágenes de FreedomBox se construyen para este hardware y al menos un desarrollador ha informado que las funciones básicas funcionan.
5. Información común sobre Hardware
Las siguientes secciones documentan consejos comunes relativos al hardware y periféricos cuando se usan con FreedomBox.
5.1. Wi-Fi
FreedomBox puede usar hardware Wi-Fi para 2 propósitos distintos: proporcionar conectividad a internet o compartir conectividad a internet previamente disponible a FreedomBox (a través de Ethernet, 3G/4G u otro interfaz Wi-Fi) con otros dispositivos de la red. Ver instrucciones sobre cómo configurar FreedomBox para ambos casos en la página del manual Redes.
Desafortunadamente la mayoría de los adaptadores Wi-Fi requieren firmware que no es software libre, por lo que FreedomBox recomienda conectar dispositivos Wi-Fi USB que not requieran firmware privativo. Al configurar las redes, los dispositivos soportados se muestran automáticamente en la lista de intefaces de red.
Si tienes un dispositivo Wi-Fi que requiera firmware privativo y quieres instalarlo para hacerlo funcionar, consulta la página del wiki de Debian. Una vez el firmware está instalado y se muestra el dispositivo se puede configurar y usar en FreedomBox.
5.2. Alimentación eléctrica
En computadoras monoplaca uno puede toparse con facilidad con situaciones en las que la placa y sus periféricos no reciban suficiente potencia y fallen de modo impredecible. Para evitarlo, use un adaptador de corriente que suministre la corriente mínima recomendada por el fabricante del hardware. Cuando se conectan periféricos adicionales como dispositivos Wi-Fi, o discos USB, SATA o NVMe los requisitos de potencia aumentan. Sería preferible una fuente de alimentación que pueda proporcionar más corriente de la necesaria pero el voltaje debe coincidir con exactitud a la especificación del fabricante. Recuerda que algunas fuentes de alimentación baratas no proporcionan la corriente que prometen.
5.3. Firmware
Los ordenadores normales tienen un software que se ejecuta al arranque llamado UEFI/BIOS. Cuando este software, a veces llamado firmware, se encuentra en algúno de los dispositivos de almacenamiento puede cargar el sistema operativo (en nuestro caso FreedomBox) y pasarle el control. Con la mayoría de las computadoras monoplaca no es así.
Las computadoras monoplaca se suministran con muy poco software que típicamente se limita a cargar un sistema operativo desde tarjetas SD o eMMCs. Normalmente no pueden arrancar desde discos USB, SATA o NVMe. Para remediar esta situación, los fabricantes de hardware empezaron a añadir un dispositivo especial de almacenamiento de unos pocos MiB de tamaño llamado flash SPI con un software especial, típicamente basado en un cargador de arranque libre y de código abierto llamado u-boot, y que aquí llamaremos firmware. Cuando se enciende la computadora arranca el cargador de la flash SPI que a su vez cargará el sistema operativo. Como el firmware es mucho más potente, puede cargar el sistema operativo desde cualquier dispositivo de almacenamiento. Entre los ejemplos de computadoras monoplaca con flash SPI se incluyen la A20-OLinuXino-Lime2 y la RockPro64.
Este enfoque de firmware se puede usar incluso sin flash SPI. Pongamos que uno quiere arrancar desde un disco USB pero la placa no lo soporta. Se puede instalar el firmware en una tarjeta SD (basta una muy pequeña) e insertarla en la placa. El disco USB contendrá a FreedomBox. Al encender la placa arranca el firmware desde la tarjeta SD y este inicia el sistema operativo desde el disco USB o cualquier otra unidad de almacenamiento.
Este enfoque de firmware también nos permite usar imágenes genéricas que funcionan para una gran cantidad de placas. Aunque aumentan un poco el esfuerzo del usuario tiene la ventaja de permitirnos dar soporte a mucho más hardware y permiten poner el sistema operativo en cualquier unidad de almacenamiento.
Cuando se necesite un firmware especial para alguna computadora monoplaca el manual de FreedomBox para esa placa detallará cómo obtenerlo e instalarlo antes de proceder a la installación de FreedomBox.
5.4. Almacenamiento
FreedomBox puede ejecutarse desde varios medios de almacenamiento que soporte tu computadora. Elegir el medio consiste en equilibrar fiabilidad, capacidad y velocidad vs. coste. Para ejecutar FreedomBox se recomienda una capacidad mínima de almacenamiento de 8GB.
5.4.1. Tarjeta Digital Segura (SD)
Las tarjetas SD son habituales en las computadoras monoplaca. La mayoría de computadoras monoplaca pueden arrancar directamente desde una tarjeta SD sin necesidad de preparativos adicionales.
Las tarjetas SD suelen ser el medio de almacenamiento más lento de entre los disponibles. FreedomBox será más lento ejecutando ciertas operaciones en estos discos. No todas las tarjetas SD tienen rendimientos similares; las hay mucho más rápidas que otras. Al comprar una tarjeta SD elije una de clase 10 o mayor (suele figurar escrita sobre la tarjeta como un número inscrito en un círculo) o una de clase UHS 1 (escrita sobre la tarjeta como un 1 dentro de un cubo). Las clases UHS 3 (escrita sobre la tarjeta como un 3 dentro de un cubo) o application speed class 1 o superior (escrita como A1 o A2) irán mucho mejor. Finalmente los usuarios de FreedomBox han informado casos en los que algunas tarjetas SD han fallado, por lo que para mayor fiabilidad serían preferibles otros medios de almacenamiento.
5.4.2. Tarjeta MultiMedia Empotrada (eMMC)
Muchas computadoras monoplaca de nuevo cuño soportan tarjetas eMMC. La mayoría de computadoras monoplaca pueden arrancar directamente desde una tarjeta eMMC sin necesidad de preparativos adicionales.
A veces la eMMC viene soldada a la placa y tendrás que elegir su tamaño al comprar la placa; por ejemplo con la Olimex's A20-OLinuXino-Lime2. Otras veces el fabricante las proporcionará como periférico insertable y en tal caso puedes elegir la eMMC a posteriori o sustituir la que haya por otra de capacidad superior. No andes poniendo y quitandolas demasiado. Tienen un número muy limitado (< 100) de ciclos de reinicio.
Las eMMC son mucho más veloces que las SD o los HDDs de discos rotatorios pero son significativamente más lentas que los SSDs. Estas tiene velocidades de escritura aleatoria mucho mejores, lo que es necesario en muchas operaciones de FreedomBox. En general son preferibles a las SD.
La imágen de FreedomBox se puede montar en una eMMC de 2 maneras. Para eMMC insertables hay disponibles conversores de eMMC a USB. Suelta la eMMC de la placa, insertala en un conversor USB y este en tu máquina, y escribe FreedomBox en ella como harías con una SD. Si la eMMC viene integrada arranca la computadora desde otra unidad, como una SD o un disco USB. Da igual el sistema operativo. Tras arrancar la eMMC se mostrará como disco adicional. Descarga y escribe la imágen de FreedomBox en la eMMC como harías con una SD.
5.4.3. Unidad de disco USB
La mayoría de ordenadores y computadoras monoplaca tienen puertos USB que aceptan medios de almacenamiento como unidades flash USB, SSDs o HDDs.
Una unidad flash USB puede también servir para ejecutar FreedomBox. Las unidades flash USB 2.0 son mucho más lentas y de rendimiento comparable a las tarjetas SD. Las USB 3.0 rinden mucho mejor. Las unidades flash USB y las tarjetas SD usan una tecnología similar de modo que sus ciclos de lectoescritura y por tanto su fiabilidad adolecen de las mismas limitaciones.
Aparte de unidades flash USB, se pueden insertar discos de estado sólido (SSDs) y discos duros (HDDs) en los puertos USB, ya sea comprando unidades con interfaz USB o usando adaptadores como de USB a SATA o de USB a interfaz M.2. Tanto los SSDs como los HDDs tienen una fiabilidad mucho mayor que las tarjetas SD, eMMC o las unidades flash USB por lo que son preferibles cuando se pueda elegir. Además, las SSDs proporcionan un rendimiento excelente conectadas a través de interfaces USB 3.0.
Al conectar SSDs y HDDs a puertos USB de computadoras monoplaca hay que prestar atención al suministro eléctrico de la unidad de almacenamiento. Si la unidad viene con alimentador propio no hay problema pero si no es así asegúrate de que la monoplaca es capaz de alimentarla comprobando las especificaciones de alimentación de ambas. Usa siempre un adaptador de corriente para la placa que pueda suministrarle siempre la intensidad de corriente mínima recomendada por su fabricante. Son preferibles los adaptadores que puedan suministrar mayor intensidad pero el voltaje debe coincidir exáctamente con la especificación del fabricante. Recuerda que algunas fuentes de alimentación baratas no suministran la intensidad de corriente que prometen.
Montar la imágen de FreedomBox en una unidad USB (flash, SSD o HDD) puede resultar sencillo dado que la mayoría de los ordenadores tienen puertos USB. Inserta la unidad USB en tu ordenador, descarga y escribe la imágen de FreedomBox en la unidad USB. A diferencia de los ordenadores portátiles, los de sobremesa, y las máquinas virtuales, que pueden arrancar desde discos USB, muchas computadoras monoplaca no pueden. Para solucionarlo se necesita un firmware adicional. Consulta la sección firmware.
5.4.4. Unidad de disco SATA
Algunos ordenadores soportan el interfaz SATA para conectar unidades de estado sólido (SSD) o de disco duro (HDD). La Olimex's A20-OLinuXino-Lime2 es un ejemplo de computadora monoplaca con soporte SATA. El protocolo SATA se usa también para puertos mSATA o ranuras M.2 (con llaves B o M). Tanto las SSDs como los HDDs tienen una fiabilidad muy superior a la de las tarjetas SD, eMMC o unidades flash USB. El interfaz SATA proporciona ratios de transferencia de datos muy buenos (aunque no tanto como las unidaes NVMe basadas en PCIe), por lo que cuando se pueda elegir son preferibles a las tarjetas SD, eMMC o unidades flash USB.
Al conectar SSDs y HDDs a puertos SATA de computadoras monoplaca hay que prestar atención al suministro eléctrico de la unidad de almacenamiento. Si la unidad viene con alimentador propio no hay problema pero si no es así asegúrate de que la monoplaca es capaz de alimentarla comprobando las especificaciones de alimentación de ambas. Usa siempre un adaptador de corriente para la placa que pueda suministrarle siempre la intensidad de corriente mínima recomendada por su fabricante. Son preferibles los adaptadores que puedan suministrar mayor intensidad pero el voltaje debe coincidir exáctamente con la especificación del fabricante. Recuerda que algunas fuentes de alimentación baratas no suministran la intensidad de corriente que prometen.
Para montar la imágen de FreedomBox en una unidad SATA arranca la computadora con otro medio que no sea el disco SATA, como una tarjeta SD. Da igual el sistema operativo. Tras arrancar el disco SATA se mostrará como disco adicional. Descarga y escribe la imágen de FreedomBox en él como harías con una SD. A diferencia de los ordenadores portátiles, los de sobremesa, y las máquinas virtuales, que pueden arrancar directamente desde discos SATA, muchas computadoras monoplaca no pueden. Para solucionarlo se necesita un firmware adicional. Consulta la sección firmware.
5.4.5. Unidad de disco NVMe
La mayoría de ordenadores portátiles y de sobreesa, y algunas computadoras monoplaca soportan el interfaz NVMe para conectar una unidad de estado sólido (SSD)ya sea mediante una ranura M.2 (con llave B o M) o una PCIe. Si viene con ranura PCIe se puede emplear un adaptador PCIe a M.2 para acomodar una unidad NVMe. La placa Radxa's Rock Pi 4 es un ejemplo de computadora monoplaca con ranura M.2. Un ejemplo de computadora monoplaca con ranura PCIe es la RockPro64 de Pine64. Las SSD basadas en NVMe tienen una fiabilidad muy superior a las tarjetas SD, eMMC o unidades flash USB. Las unidades NVMe proporcionan los mejores ratios de transferencia de datos, por lo que cuando se pueda elegir son preferibles a cualquier otra alternativa.
Al conectar unidades NVMe a computadoras monoplaca hay que prestar atención al suministro eléctrico de la unidad de almacenamiento. Asegúrate de que la monoplaca es capaz de alimentarla comprobando las especificaciones de alimentación de ambas. Usa siempre un adaptador de corriente para la placa que pueda suministrarle siempre la intensidad de corriente mínima recomendada por su fabricante. Son preferibles los adaptadores que puedan suministrar mayor intensidad pero el voltaje debe coincidir exáctamente con la especificación del fabricante. Recuerda que algunas fuentes de alimentación baratas no suministran la intensidad de corriente que prometen.
Para montar la imágen de FreedomBox en una unidad NVMe arranca la computadora con otro medio que no sea el disco NVMe, como una tarjeta SD. Da igual el sistema operativo. Tras arrancar el disco NVMe se mostrará como disco adicional. Descarga y escribe la imágen de FreedomBox en él como harías con una SD. A diferencia de los ordenadores portátiles, los de sobremesa, y las máquinas virtuales, que pueden arrancar directamente desde unidades NVMe, muchas computadoras monoplaca no pueden. Para solucionarlo se necesita un firmware adicional. Consulta la sección firmware.
6. Compilar tus propias imágenes
Todas las imágenes de disco de FreedomBox para hardware diferente las compila el proyecto usando una herramienta conocida como Freedom Maker. Si por algún motivo quieres compilar tus propias imágenes en vez de descargar las disponibles emplea esta herramienta. El archivo README del proyecto proporciona información acerca de la lista de objetivos de compilación hardware disponibles y cómo compilar imágenes.
6.1. Estado del software empleado
Todo el software de las imágenes FreedomBox viene de los repositorios Debian. El script Freedom Maker realiza ajustes menores.
- Todo el software de las imágenes es software libre que cumple la DFSG excepto en el caso de las imágenes para la Raspberry Pi en las que el paquete de firmware no es software libre.
- Todas las imágenes usan el kernel Linux de Debian que a su vez se basa en el kernel Linux principal.
Varias imágenes incluyen firmware privativo del componente Debian non-free-firmware (Ver Firmware). Firmware aparte, todo software presente in las imagenes es libre y cumple con la DFSG. La tabla siguente lista los componentes incluídos en cada imagen. (Nota: esto es trabajo inacabado, planeado para imágenes construídas tras la publicación de Debian 12 (bookworm).)
Imagen |
¿Incluye main? |
¿Incluye non-free-firmware? |
Firmware privativo incluído |
32-bit ARM (armhf) |
|
|
|
64-bit ARM (arm64) |
|
|
|
64-bit x86 (amd64) |
|
|
|
A20 OLinuXino Lime |
|
|
|
A20 OLinuXino Lime 2 |
|
|
|
A20 OLinuXino MICRO |
|
|
|
Beagle Bone Black |
|
|
|
Cubieboard 2 |
|
|
|
Cubietruck (Cubieboard 3) |
|
|
|
Lamobo R1 |
|
|
|
LeMaker Banana Pro |
|
|
|
LinkSprite pcDuino3S |
|
|
|
Orange Pi Zero |
|
|
|
PC Engines APU 1D |
|
|
|
Pine A64 LTS |
|
|
|
Pine A64+ |
|
|
|
Pioneer Edition FreedomBox |
|
|
|
QEMU/KVM amd64 |
|
|
|
Raspberry Pi 2 |
|
|
|
Raspberry Pi 3 Model B |
|
|
|
Raspberry Pi 3 Model B+ |
|
|
|
Raspberry Pi 4 Model B |
|
|
|
Rock64 |
|
|
|
RockPro64 |
|
|
|
VirtualBox for amd64 |
|
|
|
7. FreedomBox Pioneer Edition
Los servidores caseros FreedomBox Pioneer Edition los fabrica y vende Olimex, una compañía epecializada en hardware de fuentes abiertas. El Kit incluye hardware de servidor tamaño bolsillo, una tarjeta SD con el sistema operativo preinstalado, y una batería de respaldo que puede alimentar el hardware durante 4-5 horas en casos de indisponibilidad de la red eléctrica. Se vende por 82 €. Olimex ofrece una extensión opcional para almacenamiento de alta capacidad en disco duro o de estado sólido. Al comprar este producto contribuyes a los esfuerzos de la FreedomBox Foundation's para crear y promover su software de servidor libre.
8. Características del Producto
8.1. HW Recomendado
Éste es el hardware recomendado para los usuarios que quieran simplemente una FreedomBox llave en mano, y no quieran construirse una.
(Construir tu propia FreedomBox implica algunos tecnicismos como elegir y comprar los componentes adecuados, descargar la imágen y preparar una tarjeta SD).
8.2. Este Kit
Este producto proporciona la combinación perfecta de hardware de fuentes abiertas y software libre y open source. Comprando este producto, soportas también los edfuerzos de la FreedomBox Foundation para crear y promover su software libre y open source de servidor.
El Kit de Servidor Casero FreedomBox Pioneer Edition incluye todo el hardware necesario para arrancar un servidor FreedomBox casero sobre una placa Olimex A20-OLinuXino-LIME2:
la A20-OlinuXino-LIME2,
su carcasa de metal con el logo de FreedomBox grabado mediante laser,
una tarjeta micro SD de alta velocidad y 32GB con el software FreedomBox preinstalado,
- una batería de respaldo,
- un transformador,
- un cable Ethernet, y
- una extensión para almacenamiento de alta capacidad en disco duro o de estado sólido.
8.3. Disponibilidad
El servidor casero FreedomBox Pioneer Edition es la primera versión comercial disponible de FreedomBox.
- Precio: 82 EUR
8.4. Especificaciones del Hardware
El servidor casero FreedomBox Pioneer Edition se basa en la A20-OLinuXino-LIME2
Hardware de fuentes abiertas (OSHW): Sí
- CPU: Allwinner A20, ARM Cortex-A7 dual-core a 1GHz
- RAM: 1 GiB DDR3
Almacenamiento: tarjeta microSD de 32GB de clase 10+ precargada con FreedomBox
- SATA: 1 puerto SATA compatible 2.6 a 3Gb/s
- USB: 2 puertos host de alta velocidad USB 2.0
- Batería: Li-Po, 3.3V y 1400mAh (4-5 horas de respaldo si no hay dispositivos adicionales conectados al puerto USB)
- Ethernet: 10/100/1000, RJ45 (cable de 1 m incluído)
- Transformador: Entrada a 110-220V, salida a 5V, estilo UE (enchufes opcionales para el Reino Unido o EE.UU)
- Consumo eléctrico: 1.5W o 5W dependiendo de la carga (corriente entre 0.3A 1 1A)
Carcasa: Metálica con la marca FreedomBox
Los kits ejecutan sólo Software Libre. Funcionan con núcleo (kernel) y u-boot de los repositorios Debian. Incluso el firmware de arranque de la ROM, llamado BROM es software libre (GPLV2+).
Más información:
8.5. Extensión para Almacenamiento
Junto con tu servidor casero FreedomBox Pioneer Edition puedes encargar una extensión para almacenamiento consistente en una carcasa para disco SATA, opcionalmente con un disco duro o de estado sólido de entre 128 y 2000 GB de capacidad. Si ya has comprado tu servidor casero sin la extensión puedes encargarla aparte.
- Precio: 9 EUR (carcasa suelta sin disco duro, para albergar un disco tuyo)
- Precio: 42 EUR (con disco de estado sólido de 128 GB)
- Precio: 69 EUR (con disco de estado sólido de 512 GB)
- Precio: 42 EUR (con disco duro de 320 GB)
- Precio: 53 EUR (con disco duro de 500 GB)
- Precio: 64 EUR (con disco duro de 1000 GB)
- Precio: 86 EUR (con disco duro de 2000 GB)
8.6. Descarga
Los kits vienen con una tarjeta SD precargada con FreedomBox. NO hace ninguna falta descargar imágenes.
No obstante, si deseas restablecer tus dispositivos a un estado virginal puedes hacerlo con la imágen provista. Sigue las instrucciones de la página de descargas para crear una tarjeta SD de FreedomBox y arrancar tu dispositivo. Asegúrate de descargar imágenes para la Pioneer Edition. Estas imágenes de tarjeta SD se usan en la ranura SD de la propia placa y no funcionarán si se insertan en un lector SD externo conectado por USB.
Una alternativa a descargar estas imágenes es instalar Debian en el dispositivo y luego instalar FreedomBox sobre él.
8.7. Construcción de una Imágen
Las imágenes de FreedomBox para este hardware se pueden construir usando Freedom Maker.
8.8. Reparos conocidos
La imágen distribuída con los kits usa un u-boot ligéramente modificado en vez de el de serie de Debian como el resto de FreedomBox. Así que si quieres obtener su código fuente usa por favor el repositorio de u-boot del equipo de FreedomBox.
9. Obtener el Código Fuente
FreedomBox es 100% software libre y puedes obtener el código fuente para estudiarlo, modificarlo y distribuir mejoras.
9.1. Desde (dentro de) FreedomBox
FreedomBox se compone de diferentes programas de software y puedes obtener el código fuente de cualquiera de ellos. Estas instrucciones son similares a obtener y construír código fuente de Debian ya que FreedomBox es una variante pura de Debian. Usando este procedimiento puedes obtener el código fuente de la misma versión del paquete que estás usando actualmene en FreedomBox.
Para ver la lista de paquetes software instalados en tu FreedomBox, ejecuta lo siguiente en un terminal:
dpkg -l
- Para obtener el código fuente de cualquiera de esos programas ejecuta:
apt source <nombre_del_paquete>
Esto requiere que el archivo /etc/apt/sources.list contenga información acerca de los repositorios de código fuente. Esto es así por defecto en todas las imágenes FreedomBox. Pero si has instalado FreedomBox desde Debian necesitas asegurarte de que los repositorios de código fuente figuren en este archivo.
- Para construir el paquete desde su código fuente, primero instala sus dependencias
apt build-dep <nombre_del_paquete>
Cambia al directorio fuente creado con el comando apt source:
cd <directorio_fuente>
Y construye el paquetedpkg-buildpackage -rfakeroot -uc
- Instala el paquete:
dpkg -i ../<paquete_construído>.deb
9.2. Otras Maneras de Obtener el Código Fuente
El código fuente de cualquier paquete se puede ver y buscar usando el interfaz web de sources.debian.org. Por ejemplo, mira el paquete plinth.
El código fuente y el binario precompilado de cualquier version de un paquete, incluyendo versiones antigüas, se pueden obtener de snapshot.debian.org. Por ejemplo, mira el paquete plinth.
También puedes obtener los enlaces a la web del proyecto original, al control de versiones del proyecto original, al control de versiones de Debian, registro de cambios, etc. desde la página de control Debian para el proyecto en tracker.debian.org. Por ejemplo, mira la página de control para el paquete plinth.
- Puedes compilar e instalar un paquete desde el control de versiones de Debian. Por ejemplo,
git clone https://salsa.debian.org/freedombox-team/freedombox.git cd freedombox apt build-dep . dpkg-buildpackage -rfakeroot -uc dpkg -i ../freedombox*.deb
9.3. Construyendo Imágenes de disco
También puedes construír imágenes de disco FreedomBox para varias platformas de hardware usando la herramienta freedom-maker. Esta también está disponible como paquete Debian y su código fuente se puede obtener empleando los métodos anteriores. Hay disponibles Instrucciones de Construcción para generar imágenes de disco incluídas en el código fuente del paquete freedom-maker.
Las imágenes de disco de FreedomBox se construyen y suben a los servidores oficiales empleando la infraestructura de integración contínua automatizada. Esta infraestructura está disponible también como código fuente y proporciona información precisa acerca de como se contruyen las imágenes de FreedomBox.
9.3.1. Imágenes U-boot sobre Pioneer Edition
Hay una excepción menor en el paquete u-boot que viene con el hardware que se vende como Kits de Servidor Casero FreedomBox Pioneer Edition. Contiene un parche pequeño pero importante que no está en el código fuente de Debian. Tanto el repositorio fuente de Debian u-boot como el parche de FreedomBox están disponibles como un repositorio aparte. Esperamos que en algún momento este parche esté integrado en u-boot de serie y este repositorio ya no sea necesario. Este paquete se puede compilar en una máquina Debian armhf como sigue (también se puede hacer compilación cruzada, simplemente sigue las instrucciones para compilación cruzada de paquetes Debian):
apt install git git-buildpackage git clone https://salsa.debian.org/freedombox-team/u-boot.git cd u-boot pbuilder create --distribution=buster gbp buildpackage --git-pbuilder
El paquete u-boot Debian estará en u-boot-sunxi*.deb. Este paquete contendrá
mkdir temp dpkg -x u-boot-suxi*.deb temp unxz <lime2_image_built_with_freedom_maker> dd if=temp/usr/lib/u-boot/A20-OLinuXino-Lime2/u-boot-sunxi-with-spl.bin of=<lime2.img> seek=8 bs=1k conv=notrunc
La imagen resultante tendrá el u-boot modificado.
9.4. Botones de encendido y apagado
El Kit Pioneer Edition tiene 3 botones indocumentados para RESET, ARRANQUE, e INTERRUPTOR de ALIMENTACIÓN (Encendido/Apagado). Son restos de funcionalidades heredadas originalmente diseñadas para usarse con el sistema operativo Android pero que son útiles para casos particulares.
Aviso: Aplicar demasiada fuerza romperá los botones. Estos botones no se han dieñado para apretarlos regularmente, por eso son frágiles y difíciles de accionar.
Más detalles en nuestro Foro.
10. A20 OLinuXino Lime2
Olimex's A20 OLinuXino Lime2 is a fully Open Source Hardware (OSHW) single board computer. This means that the designer is actively helping people using the platform for their own designs, and supports them in adding hardware functionality and production advice. This is a part of freedom that is often overlooked, but very much aligned with the FreedomBox goals. It uses the Allwinner A20 Dual Core ARM processor.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
10.1. Similar Hardware
The following similar hardware will also work well with FreedomBox.
Olimex's A20 OLinuXino Lime2 4GB. This hardware merely has extra 4GB NAND storage that is not used by FreedomBox.
10.2. Download
FreedomBox SD card images are available for this device. Follow the instructions on the download page to create a FreedomBox SD card and boot the device. These SD card images are meant for use with the on-board SD card slot and won't work when used with a separate SD card reader connected via USB.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
10.3. Availability
- Price: 45 EUR (A20 OLinuXino Lime2)
- Price: 55 EUR (A20 OLinuXino Lime2 4GB)
10.4. Hardware
Open Source Hardware (OSHW): Yes
- CPU: Allwinner A20, ARM Cortex-A7 @ 1GHz dual-core
- RAM: 1 GiB DDR3
- Storage: 4 GB NAND flash built-in (only on 4GB model), 1x microSD slot
- Architecture: armhf
- Ethernet: 10/100/1000, RJ45
WiFi: None, use a USB WiFi device
- SATA: 1x port
10.5. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
Boot Firmware: BROM (GPLV2+)
10.6. Known Issues
Revision G2 (written on the board): The current stable Debian11/bullseye image (from 2021-08-27) will not start an Ethernet connection! This means you can not continue with the installation process at first. This can be fixed by following this description after you copied the image to your SD card. Or you Download and use the Pioneer Edition image to fix the issue. It contains a slightly modified u-boot.
Revision G2 hardware has also poor performance when transmitting Ethernet data in Gigabit mode for older FreedomBox releases. The procedure above or for rev. C fixes this.
Revision C hardware has poor performance when receiving Ethernet data in Gigabit mode. To workaround the problem, you can switch to 100 Mbps mode instead of Gigabit mode. Login to your FreedomBox as root (or plugin the SD card into another computer) and create the file /etc/NetworkManager/dispatcher.d/20-fix-ethernet-problem with the following contents:
set -e # Exit with code on error IFACE="$1" ACTION="$2" if [[ "$IFACE" != "eth0" ]]; then exit 0 fi case ${ACTION} in up) logger "Setting up $IFACE in 100Mbps mode" mii-tool eth0 -A 100BaseTx-FD ;; *) ;; esac
Revision K hardware is not working properly.
11. A20 OLinuXino MICRO
Olimex's A20 OLinuXino MICRO is a fully Open Source Hardware (OSHW) single board computer. This means that the designer is actively helping people using the platform for their own designs, and supports them in adding hardware functionality and production advice. This is a part of freedom that is often overlooked, but very much aligned with the FreedomBox goals. It uses the Allwinner A20 Dual Core ARM processor.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
11.1. Similar Hardware
The following similar hardware will also work well with FreedomBox.
Olimex's A20 OLinuXino MICRO 4GB. This hardware merely has extra 4GB NAND storage that is not used by FreedomBox.
11.2. Download
FreedomBox MicroSD card images are available for this device. Follow the instructions on the download page to create a FreedomBox MicroSD card and boot the device. These MicroSD card images are meant for use with the on-board MicroSD card slot and won't work on the SD card slot or when using a separate MicroSD card reader connected via USB.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
11.3. Availability
- Price: 50 EUR (A20 OLinuXino MICRO)
- Price: 63 EUR (A20 OLinuXino MICRO 4GB)
11.4. Hardware
Open Source Hardware (OSHW): Yes
- CPU: Allwinner A20, ARM Cortex-A7 @ 1GHz dual-core
- RAM: 1 GiB DDR3
- Storage: 4 GB NAND flash built-in (only on 4GB model), 1x microSD slot
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: None, use a USB WiFi device
- SATA: 1x port
11.5. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
Boot Firmware: BROM (GPLV2+)
11.6. Known Issues
- Not visible on local network
When booting the 'stable' image (made on 2017-06-18) the board does not automatically get an IP address from the router's DHCP server over ethernet. Booting the 'testing' image (2018-06) the board does get an IP address. Tested on MICRO hardware revision J. see also: https://www.olimex.com/forum/index.php?topic=5839.msg24167#msg24167
12. APU
PC Engines APU 1D is a single board computer with 3 Gigabit ethernet ports, a powerful AMD APU and Coreboot firmware. FreedomBox images built for AMD64 machines are tested to work well for it.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
12.1. Similar Hardware
Although untested, the following similar hardware is also likely to work well with FreedomBox.
- Using amd64 image:
12.2. Download
FreedomBox disk images for this hardware are available. Follow the instructions on the download page to create a FreedomBox SD card, USB disk, SSD or hard drive and boot into FreedomBox. Pick the image meant for all amd64 machines.
An alternative to downloading these images is to install Debian on the APU and then install FreedomBox on it.
12.3. Networking
The first network port, the left most one in the above picture, is configured by FreedomBox to be an upstream Internet link and the remaining 2 ports are configured for local computers to connect to.
12.4. Availability
- Price: 110 - 170 USD (depending on the board and supplier)
12.5. Hardware
- Open Hardware: No
CPU: AMD G series T40E
- RAM: 2 GB DDR3-1066 DRAM
- Storage: SD card, External USB
- Architecture: amd64
- Ethernet: 3 Gigabit Ethernet ports
WiFi: None, use a USB WiFi device
- SATA: 1 m-SATA and 1 SATA
12.6. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
Boot firmware: Coreboot
13. Cubietruck
13.1. FreedomBox Danube Edition
FreedomBox Danube Edition is a custom casing around Cubietruck and an SSD-hard drive.
13.2. Cubietruck / Cubieboard3
Cubietruck (Cubieboard3) is a single board computer with very good performance compared to many other boards. FreedomBox images are built for this device.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
13.3. Download
FreedomBox SD card images are provided for this hardware. These SD card images are meant for use with the on-board SD card slot and do not work when used with a separate SD card reader connected via USB.
An alternative to downloading these images is to install Debian on the Cubietruck and then install FreedomBox on it.
13.4. Availability
Cubietruck / Cubieboard3
- Price: 89 USD
13.5. Hardware
- Open Hardware: No
- CPU: Allwinner A20, ARM Cortex-A7 @ 1GHz dual-core
- RAM: 2 GiB DDR3 @ 480 MHz
- Storage: 8 GB NAND flash built-in, 1x microSD slot
- Architecture: armhf
- Ethernet: 10/100/1000, RJ45
WiFi: Broadcom BCM4329/BCM40181 (no free WiFi drivers + firmware available)
- SATA: 1x 2.0 port
13.6. Non-Free Status
- Non-free blobs required: ?
WiFi: no free WiFi drivers + firmware available
13.7. Known Issues
The on-board WiFi does not work with free software. A separate USB WiFi device is recommended.
14. Cubieboard 2
The Cubieboard 2 is a single board computer based on the Allwinner A20 processor. It doesn't require any non-free firmware to run FreedomBox, and Wifi capability can be added via a USB adaptor if needed. This board is available in two versions, one with on-board flash and a microSD slot, and a version with two microSD card slots.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
14.1. Download
FreedomBox SD card images are available for this device. Follow the instructions on the download page to create a FreedomBox SD card and boot the device.
14.2. Availability
14.3. Hardware
- CPU: ARM Cortex A7 Dual-Core
- RAM: 1GB DDR3 @960M
- Storage: 4GB internal NAND flash, up to 64GB on uSD slot
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: None, use a USB WiFi device
- SATA: Yes
14.4. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
15. Beagle Bone Black
Beagle Bone Black (Revision C.1) is an Open Source Hardware (OSHW) single board computer. This means that the designer is actively helping people using the platform for their own designs, and supports them in adding hardware functionality and production advice. This is a part of freedom that is often overlooked, but very much aligned with the FreedomBox goals. FreedomBox images are built and tested for this device.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
15.1. Download
FreedomBox SD card images are available for this device. Follow the instructions on the download page to create a FreedomBox SD card and boot the device.
Note: This image is for BeagleBone Black (Revision C.1) only. It will not work on the BeagleBone Green, and also not on the Revisions A & B.
An alternative to downloading these images is to install Debian on the BeagleBone and then install FreedomBox on it.
15.2. Availability
- Price: ~ 59 USD (50 EUR)
15.3. Hardware
Open Source Hardware (OSHW): Yes
- RAM: 512MB DDR3L 800 Mhz
- Storage: Onboard 4GB, 8bit Embedded MMC and microSD
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: None, use a USB WiFi device
- SATA: None
15.4. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
16. pcDuino3
LinkSprite pcDuino3S is a single board computer running on Allwinner A20 and sold with a good case. FreedomBox images are built and tested for this device.
Note: The FreedomBox logo is simply a sticker on top of device brought from store.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
16.1. Similar Hardware
Although untested, the following similar hardware is also likely to work well with FreedomBox.
https://www.linksprite.com/linksprite-pcduino3/ also covers pcDuino3B
16.2. Download
FreedomBox disk images for this hardware are available. Follow the instructions on the download page to create a FreedomBox SD card, USB disk, SSD or hard drive and boot into FreedomBox. Pick the image meant for pcduino3.
An alternative to downloading these images is to install Debian on the APU and then install FreedomBox on it.
16.3. Availability
- Price: 89 USD
16.4. Hardware
- Open Hardware: No
CPU: AllWinner A20 SoC, 1GHz ARM Cortex A7 Dual Core
- RAM: 1 GB
- Storage: SD card, 4 GB onboard flash
- Architecture: armhf
- Ethernet: 10/100 Mbps
WiFi: Built-in WiFi requires non-free firmware, use a USB WiFi device instead
- SATA: 1 SATA host socket
16.5. Non-Free Status
- Non-free blobs required: No
WiFi: Requires non-free firmware
Boot Firmware: BROM (GPLV2+)
17. Debian
FreedomBox is a pure blend of Debian. This means that all the work on FreedomBox is available in Debian as packages. It also means that any machine running Debian can be turned into a FreedomBox.
This page describes the process of installing FreedomBox on a Debian system. Currently, FreedomBox works in Debian Stable (bookworm), Testing (trixie), and Unstable (sid).
Important: Read general advice about hardware before building a FreedomBox with this approach.
Use a fresh Debian installation
Installing FreedomBox changes your Debian system in many important ways. This includes installing a firewall and regenerating server certificates. It is hence recommended that you install FreedomBox on a fresh Debian installation instead of an existing setup.
17.1. Installing on Debian 12 (bookworm) or newer
Check the Troubleshooting section below, for any tips or workarounds that might help during the install.
Install Debian 12 (Bookworm) or newer on your hardware. During installation choosing "Btrfs" for root filesystem type is recommended as FreedomBox uses it take regular snapshots of the system.
- Update your package list.
$ sudo apt-get update
Install freedombox package.
$ sudo DEBIAN_FRONTEND=noninteractive apt-get install freedombox
- The "DEBIAN_FRONTEND=noninteractive" will avoid several configuration prompts that would otherwise appear during the install.
During the installation, you will be provided a secret key that needs to be entered during the initial configuration process. Note this down. The secret can also be read at a later time from the file /var/lib/plinth/firstboot-wizard-secret.
You can start using FreedomBox. During initial wizard, you will need to enter the secret noted above.
17.2. Tips and Troubleshooting
FreedomBox uses NetworkManager to manage network configuration. If you have configured your network interfaces using Debian installer or by editing /etc/network/interfaces, FreedomBox will not manage those interfaces. (See bug #797614.) To let FreedomBox/NetworkManager manage your network interfaces, edit the /etc/network/interfaces manually and ensure that it contains only the following:
auto lo iface lo inet loopback
If you have already completed the setup process without doing this step, you will need to clear out the /etc/network/interfaces file keeping only the above lines. Then perform a reboot. Network interfaces will then be in the internal or external firewall zone. This is essential for the FreedomBox's web interface to be reachable from other machines in the network. You can tweak network manager connections with the nmtui command if you wish.
FreedomBox will use an automatically configured IP address by default. You can assign a static IP address if necessary. Network configuration changes can be done using FreedomBox web interface or by using the nmtui or nmcli commands. nmcli can be used as follows:
nmcli con mod "Ethernet connection 1" \ ipv4.addresses A.A.A.A/X \ ipv4.gateway G.G.G.G \ ipv4.dns N.N.N.N \ ipv4.dns-search somedomain.com \ ipv4.method "manual" \ ipv4.ignore-auto-dns yes \ ipv6.method ignore
- ..with the block capitals and somedomain.com replaced with your actual address, mask description, gateway and dns server details.
18. VirtualBox
This page will help you get started with using FreedomBox on a virtual machine using VirtualBox. While VirtualBox images are primarily used for testing and development, they can also be used for regular use if you have spare resources on one of your machines. This setup is useful if:
You don't own one of the supported hardware devices.
- You don't use Debian GNU/Linux as your operating system.
You don't want to disturb your Debian installation to try out FreedomBox.
Prebuilt FreedomBox images for VirtualBox are routinely made available in VirtualBox's own VDI image file format. They contain a Debian GNU/Linux operating system and an installation of FreedomBox with all dependencies ready to run on any OS supported by VirtualBox (Windows, Linux, Macintosh, and Solaris).
A more adventurous alternative to downloading one of these images is to install Debian on VirtualBox and then install FreedomBox on it.
VirtualBox itself is available from https://www.virtualbox.org/ (or your distribution's package manager).
18.1. Download
Follow the instructions on the download page to download and verify a VirtualBox image. The latest images are available on freedombox.org.
18.2. Creating a Virtual Machine
Decompress the downloaded VDI image (tool for Windows, Mac).
Create a new VM in the VirtualBox UI with OS type Linux and Version Debian (32/64-bit according to the downloaded image).
In the Hard disk dialog choose Use an existing virtual hard disk file and select the .vdi file you extracted in step 1.
When created, go to the virtual machine's Settings -> [Network] -> [Adapter 1]->[Attached to:] and choose the network type your want the machine to use according to the explanation in Network Configuration below. The recommended type is the Bridged adapter option, but be aware that this exposes the FreedomBox's services to your entire local network.
Note: It is important to make sure that you have provided the correct network interface in the above step. For example, if the virtual machine is running on a laptop connected to a Wi-Fi network, then the wireless interface (starts with wlp) must be chosen as shown in the screenshot.
18.3. First Boot
When satisfied with the VM settings click the start button in the VirtualBox UI and your new FreedomBox will boot.
The console of the VM will show the textual screen below when finished booting, from here most interaction with FreedomBox will be through the web interface in a browser.
If everything went well so far, you should be able to access the web interface of FreedomBox by pointing a browser on the host machine to https://freedombox.local.
In case freedombox.local cannot be resolved, you need to find out your FreedomBox's IP address as described in Finding out the IP address of the virtual machine. Then access this IP from a web browser which is on the same network as the VM (for example, the host). If all is well, you are now presented with a welcome message and invited to complete the first boot process.
This mainly consist of creating an administrative user for the system.
18.4. Using
See the FreedomBox usage page for more details.
You can log in to the Debian GNU/Linux system as the user created during FreedomBox first boot on the VirtualBox console or remotely via ssh.
After logging in, you can become root with the command sudo su.
18.5. Build Image
If you wish to build your own images instead of downloading available images, it can be done using Freedom Maker.
18.6. Tips & Troubleshooting
18.6.1. Network Configuration
VirtualBox provides many types of networking options. Each has its advantages and disadvantages. For more information about how various networking types work in VirtualBox, see VirtualBox's networking documentation. https://www.virtualbox.org/manual/ch06.html
For a simple setup, it is recommended that you use a single network interface in your guest machine. This will make the first boot script automatically configure that interface as an internal network with automatic network configuration. Inside the guest machine, the networking is configured automatically and all the services are made available on this network interface. For more information on how networks are configured by default in FreedomBox, see Networks section.
What remains is to make those services available to the host machine or to other machines in the network. You must then choose one of the following types of networking for the network interface on your guest machine. To set a particular type of network for the guest's network adapter, go to the guest VM's settings then the network options and then select the adapter you wish to configure. There, set the network type from the available list of networks.
First and the recommended option is to use the Bridged type of network. This option exposes the guest machine to the same network that host network is connected to. The guest obtains network configuration information from a router or DHCP server on the network. The guest will appear as just another machine in the network. A major advantage of this of setup is that the host and all other machines in the network will be able to access the services provided by guest without requiring any further setup. The only drawback of this approach is that if the host is not connected to any network, the guest's network will remain unconfigured making it inaccessible even from the host.
Second method is Host only type of networking. With a guest's network interface configured in this manner, it will only be accessible from the host machine. The guest will not able access any other machine but the host, so you do not have internet access on the guest. All services on the guest are available to the host machine without any configuration such as port forwarding.
The third option is to use the NAT type of network. This the networking type that VirtualBox assigns to a freshly created virtual machine. This option works even when host is not connected to any network. The guest is automatically configured and is able to access the internet and local networks that host is able to connect to. However, the services provided by the guest require port forwarding configuration setup to be available outside.
To configure this go to VM settings -> [Network] -> [Adapter] -> [Port Forwarding]. Map a port such as 2222 from host to guest port 22 and you will be able to ssh into FreedomBox from host machine as follows:
ssh -p 2222 fbx@localhost
Map 4443 on host to 443 on the guest. This make FreedomBox HTTPS service available on host using the URL https://localhost:4443/ You will need to add a mapping for each such services from host to guest.
The final option is to create two network interfaces, one host only and one NAT type. This way you can access the guest without any additional configuration, and you have internet access on the guest. The guest will be invisible to any other machines on the network.
Summary of various network types:
- |
Guest accessible from other machines |
Guest accessible from host |
Works without port forwarding |
Works without host connected to network |
Guest has internet access |
Bridged |
|
|
|
|
|
Host only |
|
|
|
|
|
NAT |
|
|
|
|
|
NAT and Host |
|
|
|
|
|
18.6.2. Finding out the IP address of the virtual machine
This depends on the network configuration you chose. With a bridged adapter, your virtual machine gets its IP address from the DHCP server of your network, most likely of your Router. You can try the first couple of IP addresses or check your router web interface for a list of connected devices.
If you chose host-only adapter, the IP address is assigned by the DHCP server of your VirtualBox network. In the VirtualBox Manager, go to File -> Preferences -> Network -> Host-only Networks. You can see and edit the DHCP address range there, typically you get assigned addresses close to the Lower Address Bound.
Another possibility of finding the IP address is to login via the VirtualBox Manager (or similar software). The FreedomBox images do not have any default user accounts, so you need to set an initial user and password using the passwd-in-image script.
See also QuickStart for instructions on how to scan your network to discover the IP of the VM.
18.6.3. Networking Problems with macchanger
The package macchanger can cause network problems with VirtualBox. If you have a valid IP address on your guest's host network adapter (like 192.168.56.101) but are not able to ping or access the host (like 192.168.56.1), try uninstalling macchanger:
$ dpkg --ignore-depends=freedombox-setup --remove macchanger
You might have to manually remove the script /etc/network/if-prep-up/macchanger. If Debian complains about unmet dependencies when you use a package manager (apt-get, aptitude, dpkg), try to remove 'macchanger' from the dependencies of 'freedombox-setup' in the file /var/lib/dpkg/status.
18.6.4. Mounting Images Locally
If you want to mount images locally, use the following to copy built images off the VirtualBox:
$ mkdir /tmp/vbox-img1 /tmp/vbox-root1 $ vdfuse -f freedombox-unstable_2013.0519_virtualbox-amd64-hdd.vdi /tmp/vbox-img1/ $ sudo mount -o loop /tmp/vbox-img1/Partition1 /tmp/vbox-root1 $ cp /tmp/vbox-root1/home/fbx/freedom-maker/build/freedom*vdi ~/ $ sudo umount /tmp/vbox-root1 # $ sudo umount /tmp/vbox-img1 # corruption here.
18.6.5. Fixing the time after suspend and resume
The virtual machine loses the correct time/date after suspending and resuming. One way to fix this is to create a cron-job that restarts the time service ntp. You can add a crontab entry as root to restart ntp every 15 minutes by typing 'crontab -e' and adding this line:
*/15 * * * * /etc/init.d/ntp restart
Do not restart this service too often as this increases the load of publicly and freely available NTP servers.
18.6.6. UUID collision in VB
Whenever this happens VirtualBox shows following error message: Cannot register the hard disk A with UUID ... because a hard disk B with UUID ... already exists in the media registry
Creating several VMs from the same image causes collisions due to ID's (hostname, IP, UUID, etc) that are expected to be universally unique. Most can be handeled operating the running VM. But VirtualBox complains before that (at the very creation of the VM) about the hard disk's UUID. This is usual stuff when you develop/test e.g. FreedomBox.
You can change a clone's UUID in the terminal as follows:
$ VBoxManage internalcommands sethduuid path/to/the/hd/vdi/file
19. Pine A64+
Pine A64+ is an affordable single board computer with good performance.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
19.1. Similar Hardware
Both 1GB and 2GB versions of Pine A64+ are supported with the same FreedomBox image.
There is a separate Pine A64-LTS image.
19.2. Download
FreedomBox SD card images for this hardware are available. Follow the instructions on the download page to create a FreedomBox SD card and boot into FreedomBox. Pick the image meant for Pine A64+.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
19.3. Availability
- Price: 29 USD (for the 2 GB variant), 21 USD (for the 1 GB variant)
19.4. Hardware
- Open Source Hardware (OSHW): No
- CPU: Allwinner A64, Quad-core ARM Cortex A53 64-bit processor
- RAM: 3 variants - 512 MB (not recommended), 1 GB and 2 GB (recommended)
Storage: SD card, eMMC (module sold separately but not tested with FreedomBox)
- Architecture: arm64
- Ethernet: Gigabit Ethernet port
- Battery: Supports battery backup using a Li-Po battery
WiFi: None, use a USB WiFi device
- SATA: None
19.5. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
20. Banana Pro
LeMaker Banana Pro is an updated version of its predecessor Banana Pi.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
20.1. Download
FreedomBox SD card images for this hardware are available. Follow the instructions on the download page to create a FreedomBox SD card and boot into FreedomBox. Pick the image meant for Banana Pro.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
20.2. Hardware
- Open Source Hardware (OSHW): No
- CPU: Allwinner A20, Dual-core ARM Cortex A7 processor
- RAM: 3 variants - 1 GB
- Storage: SD card
- Architecture: armhf
- Ethernet: 10/100/1000 Mbps
- Battery: No
WiFi: WiFi 802.11 b/g/n 2.4GHz (not tested with FreedomBox)
- SATA: SATA 2.0 (2.5 inch SSD or HDD recommended)
20.3. Non-Free Status
- Non-free blobs required: No
WiFi: Unknown
21. Orange Pi Zero
Orange Pi Zero is a single board computer available at very low price. It uses the Allwinner H2 SoC, and has 256MB/512MB DDR3 SDRAM. It doesn't require any non-free firmware to run FreedomBox. However, the onboard Wi-Fi module needs proprietary firmware to work. The board is available in two versions: with 256MB RAM and 512MB RAM. The version with 512 MB RAM is recommended for FreedomBox. Even then, FreedomBox is expected to gracefully run only a small number of services.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
21.1. Download
FreedomBox SD card images are available for this device. Follow the instructions on the download page to create a FreedomBox SD card and boot the device.
21.2. Availability
21.3. Hardware
- CPU: ARM Cortex-A7 Quad-Core (Allwinner H2)
- RAM: 256MB/512MB DDR3 SDRAM
- Storage: Up to 32GB on uSD slot, 2MB SPI Flash
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: Onboard 802.11 b/g/n, use a USB WiFi device
21.4. Non-Free Status
- Non-free blobs required: No (without Wi-Fi)
- Wi-Fi: no free Wi-Fi drivers + firmware available
22. RockPro64
Pine64's RockPro64 is a powerful single board computer. It uses the Rockchip RK3399 Hexa Core ARM64 processor. FreedomBox images are built and tested for this device.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
22.1. Download
Before downloading and using FreedomBox you need to ensure that latest u-boot based firmware is installed into the SPI flash chip. See instructions on how to write u-boot firmware into SPI flash. The gist is that you download and write an image to an SD card. Boot with SD card and wait for white LED blinking to stop. After that power off, remove the SD card and proceed with FreedomBox download.
FreedomBox images meant for all "arm64" hardware work well for this device. However, u-boot firmware must be present in SPI flash (or on a separate SD card, which is not explained here). Follow the instructions on the download page to create a FreedomBox SD card and boot the device. These images also work well for onboard eMMC, USB 2.0 and USB 3.0 disk drives. The process for preparing USB disk drives is same as for an SD card. For eMMC, boot the board using any OS and then write the image to the eMMC similar to writing to SD card.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
22.2. Availability
Price: 60 USD (RockPro64 2GB)
Price: 80 USD (RockPro64 4GB)
22.3. Hardware
- Open Source Hardware (OSHW): No
CPU: Rockchip RK3399 SOC (2x Cortex A72@1.8Ghz, 4x Cortex A53@1.4Ghz)
- GPU: Mali T860 MP4 GPU
- RAM: 2 GiB or 4 GiB LPDDR4
- Storage: eMMC module slot, microSD slot, 16 MiB SPI Flash
- USB: 2x USB 2.0, 1x USB 3.0, 1x USB-C
- Expansion slot: 1x PCIe 4x slot (NVMe disks, etc.)
- Architecture: arm64
- Ethernet: 10/100/1000, RJ45
WiFi: None, use a USB WiFi device
22.4. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
22.5. Known Issues
FreedomBox on NVMe disk has not been tested.
23. Rock64
Pine64's Rock64 is a powerful single board computer. It uses the Rockchip RK3328 Quad Core ARM64 processor. FreedomBox images are built and tested for this device.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
23.1. Download
Before downloading and using FreedomBox you need to ensure that latest u-boot based firmware is installed into the SPI flash chip. Download the latest u-boot to write to SPI flash and then see instructions on how to write u-boot firmware into SPI flash. The gist is that you download and write an image to an SD card. Boot with SD card and wait for white LED to blink continuously. After that power off remove SD card and proceed with FreedomBox download.
FreedomBox images meant for all "arm64" hardware work well for this device. However, u-boot firmware must present in SPI flash (or on a separate SD card, which is not explained here). Follow the instructions on the download page to create a FreedomBox SD card and boot the device. These images also work well for eMMC disk which an optional attachment to this board and disk drives in USB 2.0 ports (but not in the USB 3.0 port). The process for preparing them is same as for an SD card.
An alternative to downloading these images is to install Debian on the device and then install FreedomBox on it.
23.2. Availability
- Price: 25 USD (1GB)
- Price: 35 USD (2GB)
- Price: 45 USD (4GB)
23.3. Hardware
- Open Source Hardware (OSHW): No
- CPU: Rockchip RK3328 Quad-Core SOC (4x Cortex A53 @ 1.5Ghz)
- GPU: Mali 450MP2
- RAM: 1 GiB or 2 GiB or 4 GiB LPDDR3
- Storage: eMMC module slot, microSD slot, 16 MiB SPI Flash
- USB: 2x USB 2.0, 1x USB 3.0
- Architecture: arm64
- Ethernet: 10/100/1000, RJ45
WiFi: None, use a USB WiFi device
23.4. Non-Free Status
- Non-free blobs required: No
WiFi: Not available
23.5. Known Issues
FreedomBox does not work when booted from USB 3.0 port (but works from eMMC, SD card or USB 2.0 disk).
FreedomBox does not work when booted form the top USB 2.0 port with some u-boot firmware versions (the one listed above). It only works with the bottom USB 2.0 port (the one closer to the board).
24. Raspberry Pi 2 Model B
Raspberry Pi 2 (Model B ) is a popular single board computer developed with the intention of promoting teaching of basic computer science in schools. It is a successor to Raspberry Pi Model B+ with much faster processor and more RAM. FreedomBox images are built and tested for it.
Please do not expect any output on a monitor connected via HDMI to this device as it does not display anything beyond the message 'Starting kernel...'. See the Quick Start page to access and control your FreedomBox from network.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
24.1. Download
FreedomBox SD card images for this hardware are available. Follow the instructions on the download page to create a FreedomBox SD card and boot into FreedomBox.
24.2. Availability
- Price: 35 USD
24.3. Hardware
- Open Hardware: No
- CPU: 900 MHz quad-core ARM Cortex-A7
- RAM: 1 GB
- Storage: MicroSD card slot
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: None, use a USB WiFi device
- SATA: None
24.4. Non-Free Status
- Non-free blobs required: boot firmware
WiFi: Not available
25. Raspberry Pi 3 Model B
Raspberry Pi 3 Model B is a popular single board computer developed with the intention of promoting teaching of basic computer science in schools. It is a successor to Raspberry Pi 2 Model B with a 64-bit processor and on-board Wi-Fi. FreedomBox "stable" and "testing" images are available for Raspberry Pi 3 Model B.
Please do not expect any output on a monitor connected via HDMI to this device as it does not display anything beyond the message 'Starting kernel...'. See the Quick Start page to access and control your FreedomBox from network.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
25.1. Download
Raspberry Pi recommends creating a bootable SD card with the Raspberry Pi Imager (rpi-imager), their official cross-platform utility that downloads an image and writes it to removable media. FreedomBox "stable" and "testing" images can be selected in rpi-imager under the "Other specific-purpose OS" category.
FreedomBox SD card images for this hardware are also available online. Download the "stable" or "testing" image for Raspberry Pi 3 Model B. Follow the instructions on the download page to create a FreedomBox SD card and boot into FreedomBox.
25.2. Availability
- Price: 35 USD
25.3. Hardware
- Open Hardware: No
- CPU: 1.2GHz 64-bit quad-core ARMv8 CPU
- RAM: 1 GB
- Storage: MicroSD card slot
- Architecture: armhf
- Ethernet: 10/100, RJ45
WiFi: 802.11n but requires non-free firmware, instead use a USB WiFi device
- SATA: None
25.4. Non-Free Status
- Non-free blobs required: boot firmware
WiFi: Requires non-free firmware
26. Raspberry Pi 3 Model B+
Raspberry Pi 3 Model B+ is a popular single board computer developed with the intention of promoting teaching of basic computer science in schools. It is a successor to Raspberry Pi 3 Model B with better Ethernet and a 5Ghz Wi-Fi. FreedomBox "stable" and "testing" images are available for Raspberry Pi 3 Model B+.
Please do not expect any output on a monitor connected via HDMI to this device as it does not display anything beyond the message 'Starting kernel...'. See the Quick Start page to access and control your FreedomBox from network.
Important: Read general advice about hardware before building a FreedomBox with this single board computer.
26.1. Download
Raspberry Pi recommends creating a bootable SD card with the Raspberry Pi Imager (rpi-imager), their official cross-platform utility that downloads an image and writes it to removable media. FreedomBox "stable" and "testing" images can be selected in rpi-imager under the "Other specific-purpose OS" category.
FreedomBox SD card images for this hardware are also available online. Download the "stable" or "testing" image for Raspberry Pi 3 Model B+. Follow the instructions on the download page to create a FreedomBox SD card and boot into FreedomBox.
26.2. Availability
- Price: 35 USD
26.3. Hardware
- Open Hardware: No
- CPU: 1.4GHz 64-bit quad-core ARMv8 CPU
- RAM: 1 GB
- Storage: MicroSD card slot
- Architecture: armhf
- Ethernet: 10/100/1000, RJ45
WiFi: 802.11ac but requires non-free firmware, instead use a USB WiFi device
- SATA: None
26.4. Non-Free Status
- Non-free blobs required: boot firmware
WiFi: Requires non-free firmware
27. Raspberry Pi 4 Model B
Raspberry Pi 4 Model B is a popular single board computer developed with the intention of promoting teaching of basic computer science in schools. It is a successor to Raspberry Pi 3 Model B+ with better processor and ability to drive multiple displays. Both stable and "testing" images are available for Raspberry Pi 4 Model B.
27.1. Download
Raspberry Pi recommends creating a bootable SD card with the Raspberry Pi Imager (rpi-imager), their official cross-platform utility that downloads an image and writes it to removable media. FreedomBox "stable" and "testing" images can be selected in rpi-imager under the "Other specific-purpose OS" category.
FreedomBox SD card images for this hardware are also available online. Download the "stable" or "testing" image for Raspberry Pi 4 Model B. Follow the instructions on the download page to create a FreedomBox SD card or USB drive and boot into FreedomBox.
27.2. Booting from USB
MicroSD cards are notouriously slow and prone to be corrupted. SD card corruption means that a high read/write load or a sudden power outage can make render your card unusable. It is therefore strongly recommended that you use a USB drive for your root partition. To be able to do that, you have to follow these preliminary steps:
Download and install the Raspberry Pi Imager.
- Insert a microSD card to your computer.
- Open the Raspberry Pi Imager
3.1 Select CHOOSE OS >> Misc utility images >> Bootloader >> USB Boot
3.2 From CHOOSE STORAGE select your microSD card
3.3 Click on WRITE
- After the writing was succesful, you should eject the card.
- Insert the newly created card into your Raspberry Pi and boot up the device. If it is connected to a monitor, you will see a green screen. Let your device rest for a minute, after which you can disconnect it from power and eject the card from the Raspberry Pi. It can now boot from USB.
Final step: write your FreedomBox image into your USB device, then connect it to your Raspberry Pi. Make sure you did not leave your microSD card in the Raspberry Pi.
Please note that steps 1. to 5. only need to be done once.
27.3. Build Image
FreedomBox images for this hardware can be built using Freedom Maker. Use the target 'raspberry64' to build the image for this board.
27.4. Availability
- Price: 35 USD (2GB RAM)
- Price: 50 USD (4GB RAM)
- Price: 75 USD (8GB RAM)
27.5. Hardware
- Open Hardware: No
CPU: Broadcom BCM2711 SOC (4x Cortex-A72@1.5GHz)
- RAM: 2 GB or 4GB or 8 GB
- Storage: MicroSD card slot or USB drive
- USB: 2x USB 2.0, 2x USB 3.0, USB Type-C power supply
- Architecture: arm64
- Ethernet: 10/100/1000, RJ45
WiFi: 802.11ac but requires non-free firmware, instead use a USB WiFi device
- SATA: None
27.6. Non-Free Status
- Non-free blobs required: boot firmware
WiFi: Requires non-free firmware
28. USB Wi-Fi
FreedomBox works on many single board computers. However, many of these boards do not have built-in Wi-Fi capabilities. Even when Wi-Fi capability is available, non-free proprietary firmware is required to make them work.
A solution to the problem is to plug-in a USB Wi-Fi device into one of the available USB ports. There are many such devices available which do not require non-free firmware to work. The following is a list of such devices that work with FreedomBox devices. Some devices based on these chips have tested to work well with FreedomBox including functions such as access point mode.
28.1. Firmware Installation
The free firmware for these devices is not packaged in Debian yet. You can manually download and install the firmware as follows:
sudo su [enter password] cd /lib/firmware wget https://www.thinkpenguin.com/files/ath9k-htc/version-1.4-beta/htc_9271.fw wget https://www.thinkpenguin.com/files/ath9k_firmware_free-version/htc_7010.fw
28.2. Resources
Release Notes
The following are the release notes for each FreedomBox version.
1. FreedomBox 25.7 (2025-04-07)
1.1. Highlights
- calibre: Remove existing data directory before a restore operation
- kiwix: Remove existing data directory before a restore operation
- mediawiki: Run database upgrade after package upgrade
- power: Disable sleep and hibernate on the system
- upgrades: Revamp distribution upgrade UI
1.2. Other Changes
- app: During startup, run post-init operation in background
- backups: Add ability to cleanup files before restoring a backup
- debian: Build depend on python3-systemd
- locale: Update translations for Bengali, French, Hindi, Russian, Telugu
- main: Run package operations immediately after startup
- mediawiki: Update configuration to work with version 1.4 (Trixie)
- mypy: Ignore missing type stubs for systemd.*
- package: Allow app to say it wants to rerun setup after updates
- packages: Don't run force upgrade hooks when freedombox performs ops
- radicale: Explicitly set the auth type to accommodate radicale 3.5
- radicale: Rerun setup when package updated
- service: Increase startup/shutdown timeout to 5 minutes
- service: Notify systemd when service starts up
- setup: Implement mechanism to rerun setup when apt is updated
- setup: Perform package operations immediately on trigger
- tests: Fix a warning with pytest setup
- tests: django: Fix a warning related to timezone settings
- upgrades: Add introduction to the distribution upgrade page
- upgrades: Don't ignore apt error during distribution upgrade
- upgrades: Increase distribution upgrade timeout to 3 days
- upgrades: Prevent installation of the Samba Active Directory service
- upgrades: Remove unused import
- upgrades: Run distribution upgrade around 06:00 everyday
- upgrades: Show notification before, during, and after a dist upgrade
- upgrades: Trigger special package operations in a simpler way
- upgrades: Use special desc. for snapshots take before dist upgrade
2. FreedomBox 25.6 (2025-03-25)
2.1. Highlight
- names: Store domains in kvstore instead of /etc/hosts
2.2. Other Changes
- container: Allow taking snapshots of VMs
- container: Don't remove qcow2 image when terminating VM
- doc: Fetch latest manual
- locale: Update translations for German
- operation: Drop type annotations on enum members
- setup: Fix a minor flake8 complaint
- SOGo: add dpkg-dev to the package list
storage: tests: Fix a test failure for psutils >= 7.0
- syncthing: Extend setup process to recover from manual config errors
- tests: functional: Add enable-all-apps script
- upgrades: Run dpkg/apt fixes before dist upgrade
3. FreedomBox 25.5 (2025-03-10)
3.1. Highlights
- ui: tags: Add tag search/filter for system page
3.2. Other Changes
- action_utils: Ensure that package are unheld if dist upgrade fails
- locale: Update translations for Ukrainian
- setup: Fix issue with pending app update and force upgrade
- sogo: Fix a typo in tags
- ui: Minor change with renaming a variable
- ui: system: When canceling search stay on current page
- ui: tags: Minor refactoring in menu filtering and sorting
- ui: tags: Redirect to apps or system page appropriately
- ui: tags: Show tags on all cards pages if present
- upgrades: Drop special handling for searx
- upgrades: Log apt output to journal during dist upgrade
- upgrades: Log messages using python logging framework
- upgrades: Minor refactor to pre-dist upgrade checks
- upgrades: Perform easier checks first during dist upgrade
- upgrades: Perform sources file update more reliably
- upgrades: Refactor code for disabling Quassel during dist-upgrade
- upgrades: Refactor code to disable snapshots
- upgrades: Refactor code to hold packages
- upgrades: Refactor code to retrieve the new codename
- upgrades: Relax list of packages to hold during dist upgrade
- upgrades: Simplify dist upgrades checks using exceptions
- upgrades: Simplify some global names
- upgrades: Split dist upgrade into a separate module
- upgrades: Split the main dist upgrade code
- upgrades: Use bind mounts to edit sources file only upon completion
- upgrades: Use systemd service status instead of flag file
- upgrades: Use systemd-run to create transient service
- upgrades: tests: Add unit tests for dist upgrade methods
4. FreedomBox 25.4.1 (2025-03-02)
- debian: Move e2fsprogs to Recommends
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, German, Turkish
5. FreedomBox 25.4 (2025-02-24)
5.1. Highlights
- dynamicdns: Implement adding multiple domains
- names: Allow adding multiple static domain names
5.2. Other Changes
- container: Fix spelling of 'destroy'
- dynamicdns: Add/remove domains when app is enabled/disabled
- dynamicdns: Handle addition of duplicate domains
- dynamicdns: List domains that have not had status update yet
- dynamicdns: Show specific operations on domains in Names apps
- locale: Update translation for Telugu
- matrixsynapse: tests: Fix adding domain
- names: Add more URLs to the domain type component
- names: Handle addition of duplicate static domains
- names: Retrieve the most important domain in a more generic way
- names: Simplify showing current and available domains
- names: Simplify/clarify domain names types for static/dynamic
- names: Sort domains by priority of their domain types
- names: Specify priority order among domain types
- names: Use hostnamectl instead of socket API get the current hostname
- names: domain type: Minor refactor
- pyproject: Ignore missing types for numpy (needed by pytest)
- upgrades: Drop unattended-upgrade call from dist-upgrade
- upgrades: Inhibit shutdown during dist-upgrade
6. FreedomBox 25.3.1 (2025-02-15)
- email: fix fresh installation issue
7. FreedomBox 25.3 (2025-02-10)
- debian: Switch from dnsutils to bind9-dnsutils
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Chinese (Traditional Han script), Czech, Dutch, German, Turkish
8. FreedomBox 25.2 (2025-01-27)
8.1. Highlights
- gnome: Add app to provide a graphical desktop environment
- sogo: Add a new app for SOGo groupware
8.2. Other Changes
- action_utils: Implement methods to get/set the systemd boot target
- apache: Enable expires module by default
- d/control: Fix incorrect comment format
- d/copyright: Fix copyright entry for GNOME app icons
- db: Add more utilities for managing PostgreSQL databases
- email: Make rspamd learn spam/ham when the user marks mails as junk or not junk.
- email: Recommend Thunderbird Mobile instead of K-9 Mail
- firewall, networks, storage: Drop polkit pkla files
- gnome: Add changes missing from branch merge
- locale: Updated translations for Albanian, Bulgarian, Chinese (Simplified Han script), Chinese (Traditional Han script), Czech, Dutch, German, Turkish
- miniflux: Add management of postgresql daemon in a shared manner
- nextcloud: Drop some dead code
- nextcloud: tests: functional: Fix test for modified structure of UI
- nextcloud: tests: functional: Set override domain testing on VM
- ttrss: Add management of postgresql daemon in a shared manner
- ttrss: Fix issue with installing after uninstalling
- ui: Drop the temporary fix for missing popper.js 2.0
- ui: Fix missing arrow on dropdown form fields
- ui: Fix tag separator not showing on some machines
- wordpress: Order daemon enable/disable correctly
9. FreedomBox 25.1 (2025-01-13)
9.1. Highlights
- email: Show DNS entries for all domains instead of just primary
- privacy: Add option in UI to set lookup URL for public IPs
9.2. Other Changes
- app: Add tags to menu and frontpage components
- app: Allow apps to instantiate without Django initialization
- app: Stop showing short description on installation page
- apps: Only show app tags all the tags in apps page search box
- backups: Add warning that services may become unavailable
- backups: Handle error when there is not enough space on disk
- backups: Make all generated archive names consistent
- backups: Properly cleanup after downloading an archive
- deluge: tests: functional: Fix deluge client logged in detection
- doc: dev: Remove short description and add tags to all components
- dynamicdns: Use the public IP lookup URL from privacy app
- email: Create DKIM keys for all known domains
- email: Fix regression error when installing/operation app
- email: Show reverse DNS entries to be configured
- locale: Translated using Weblate (German, Russian)
- miniflux: Ignore an type check error with pexpect library
- privacy: Introduce utility to lookup external IP address
- privacy: Show notification for privacy settings again
- ui: Don't place JS file at the bottom of the page
- ui: Drop remnants of already removed background images
- ui: Fix missing variables in Bootstrap 5.2/Debian stable
- ui: Update section header style to increase size, remove underline
- ui: js: Load all JS files in deferred mode to speed up page load
- views: Use tags from menu or shortcut instead of the app
- web_framework: Disable caching templates files in development mode
10. FreedomBox 24.26.1 (2025-01-05)
10.1. Highlights
- email: Fix DKIM signing by setting correct ownership on private keys
- nextcloud: remove experimental warning
10.2. Other Changes
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, French, German, Turkish
- mumble: Add diagnostic for setup config changes
- mumble: Support config file moved into /etc/mumble
- sharing: Drop jQuery code as the library dependency has been removed
- users: Drop jQuery code as the library dependency has been removed
11. FreedomBox 24.26 (2024-12-30)
11.1. Highlights
- apps: Replace short description with tags in apps list
- ui: Show breadcrumbs on deeper pages
- ui: Handle and show most page load errors as alerts
11.2. Other Changes
- actions: Allow privileged methods to be decorated again
- backups: Fix issue clicking on schedule buttons with Bootstrap 5
- backups: Fix issue with verifying SSH hosts with RSA key
- backups: Fix issue with verifying remote server identity
- backups: Format better when showing archive time delete page
- backups: Handle common errors during borg operations
- backups: Parse borg errors from all operations and not just some
- backups: Remove unused import contextlib
- backups: Require POST method for mount/unmount operations
- backups: Use ISO timestamp for auto-naming archives
- backups: tests: functional: Wait for pages to load after click
- container: Add support for VMs using libvirt
- container: Generalize language in output messages for VMs
- container: Minor refactoring to reduce repeated code
- container: Refactor nspawn specific operations into a separate class
- container: Update FSID inside the image file to keep it bootable
- context_processors: Use breadcrumbs to highlight current section
- debian: Remove dependency libjs-jquery
- diagnostics: Use generic handler to handle exceptions in diagnostics
- frontpage: Replace short description with tags
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, German, Tamil, Telugu, Turkish
- Makefile: Add i2p to list of apps to remove
- mediawiki: tests: functional: Use click function from functional library
- menu: Ensure that all menu items have names for use by breadcrumbs
- menu: Implement a helper method to lookup menu items using URL name
- middleware: Handle method not allowed errors and redirect
- middleware: Handle page not found errors specially
- minetest: Provide default gameid argument
- miniflux: tests: functional: Use helper functions from functional library
- networks: Fix error during creation of PPPoE connections
- samba: tests: functional: Wait for page update after enable/disable share
- sharing: tests: functional: Use click function from functional library
- system: Add tags to all remaining apps
- tags: Add button to clear all tags
- tags: Add tags to system apps
- tags: Remove short description from system apps
- tags: Replace short description with tags in app pages
- tests: functional: Add utility to click element wait for page update
- tests: functional: Fix typos in diagnostics checks
- tests: functional: Make first wizard run more robust
- tor, torproxy: Fix daemon services are running after reboot when app is disabled
- torproxy: Don't disable apt-transport-tor in setup
- ui: Don't show breadcrumbs in login and first wizard pages
- ui: Fix regression with margin above app title
ui: Replace use of jQuery with plain JavaScript
- users: Restart nslcd service after configuration changes during setup
- users: tests: functional: Use click function from functional library
- views: Implement retrieving breadcrumbs of a page
- views: Show exception details with the utility to show errors
- zoph: Include tags from the manifest
12. FreedomBox 24.25 (2024-12-16)
12.1. Highlights
- deluge: Fix app installation on Debian testing
- notifications: Don't error when dismissing missing notifications
- ui: Switch to using bootstrap 5
12.2. Other Changes
- action_utils: Add utility to ensure that service is stopped
- apache: Relax content security policy to allow data: URL
- ci: Add flake8 to gitlabci container
- d/control: Drop unnecessary recommendations
- d/control: Drop version specification on dependencies for Bookworm
- debian: Added po-debconf Catalan translation
- deluge: Cleanup and simplify setup code
- diagnostics: Fix trimming an i18n string
- diagnostics: tests: functional: Pick errors more specifically
- firewalld: Reduce severity for alert about service on internal zone
- help: Add a class to the help index page
- help: Update the privacy notice on status log page
- i2p: Drop app as it has not been available in Debian for a while
- letsencrypt: Declare explicit dependency on openssl
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, French, German, Russian, Turkish
- matrixsynapse: Fix trimming an i18n string
- networks: Fix issue with loading create PPPoE form
- networks: Fix minor typo in template related to signal strength
- networks: Use new accordion component from Bootstrap 5
- openvpn: Declare explicit dependency on openssl
- power: Refactor display of package manager busy alerts
- radicale: Update link to supported clients
- sso: Switch using cryptography module instead of OpenSSL.crypto
- tags: Fix issue with JS init on a page without tags
- tags: tests: Fix deprecated webdriver attribute
- tests: functional: Disable smooth scrolling from Bootstrap 5
- tests: functional: Don't try disable app after tests if app was not installed
- tests: functional: Fix app installation test skipped on slow machines
- ui: Accept default styling of Bootstrap 5 for warning button
- ui: Align app icons in the center for home, apps, and help pages
- ui: Allow underlining for most links due to Bootstrap 5
- ui: Allow users to provide a CSS file to customize styling
- ui: Cleanup use of colors with CSS variables
- ui: Don't use nav-link inside card
- ui: Drop use of badge-* utility classes for newer replacements
- ui: Fix flash of notifications popdown during page load
- ui: Fix issue with notifications icon showing twice in mobile view
- ui: Fix overflow of exception text in message
- ui: Fix placement of tags menu under tags input with Bootstrap 5
- ui: Fix styling in dismiss button in form errors for Bootstrap 5
- ui: Fix toggle button styling for Bootstrap 5
- ui: Reduce the gap at the top of the pages
- ui: Rename data- attributes to data-bs- for Bootstrap 5
- ui: Restore spacing between form elements in Bootstrap 5
- ui: Restyle tags, remove underlining of text
- ui: Show disabled form elements as grey for Bootstrap 5
- ui: Style the 'Log out' item properly
- ui: Update custom button styles for Bootstrap 5
- ui: Update styling for navbar menu items
- ui: Use Bootstrap 5 styling for all alerts
- ui: Use collapse instead of dropdown for notification in Bootstrap 5
- ui: Workaround dropdowns not working with Bootstrap 5
- ui: app, system: Revert to earlier width for card lists
- ui: app: Fix an incorrect HTML tag nesting
- ui: backups: Drop unused styling in verify host key page
- ui: backups: Use Bootstrap color variables instead of static values
- ui: diagnostics: Fix gap between headings
- ui: diagnostics: Fix layout of repair buttons
- ui: firewall: Fix styling with Bootstrap 5
- ui: forms: Fix margins for form labels for Bootstrap 5
- ui: help: Fix alignment issue with footer links in about page
- ui: samba: Fix layout regressions with Bootstrap 5
- ui: snapshots: Fix horizontal form layout on mobiles for Bootstrap 5
- ui: snapshots: Fix horizontal form styling margins for Bootstrap 5
- ui: users: Fix close button for confirmation dialog for Bootstrap 5
13. FreedomBox 24.24 (2024-11-18)
13.1. Highlights
nextcloud: Switch to using FreedomBox container registry
- networks: Overhaul Wi-Fi network scan page
13.2. Other Changes
- container: Quote arguments that contain spaces when restoring pytest args
i18n: Fix translation of FreedomBox name in various places
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, German, Turkish
- networks: Fix display of mangled SSIDs when scanning Wi-Fi networks
- networks: Fix display of strength and channel for Wi-Fi connections
- networks: Fix editing wireless connections with SSID field
- networks: Improve styling of badges in the information tables
- networks: wifi: In new connection page set form defaults properly
- nextcloud: Drop diagnostic for checking availability of docker.com
- rssbridge: Mention miniflux in app description similar to tt-rss
- tests: functional: Don't enable/disable app during tests
- tests: functional: Fix visit() returning prematurely before page load
- tests: functional: Wait for uninstall page load before uninstalling
- ui: Drop box shadow around the card in card lists
- ui: Drop logo backgrounds for index, apps, and system pages
14. FreedomBox 24.23 (2024-11-04)
- backups: Better explanation for the format of upload file
- backups: Sort list of apps in backup, restore, and schedules
- base: Add link to about for unauthenticated users
- debian: Drop python3-flake8 build dependency
- ejabberd: Set mod_mam default to always
- functional tests: Add pytest testinfra plugin
- help: Add all footer links to about page
- help: Make about page available to unauthenticated users
- index: Remove links and about text and link to about page
- index: css: Move the 'powered by' logo further down
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, French, German, Norwegian Bokmål, Spanish, Turkish
- middleware: tests: Drop some obsolete mock code
- system: Increase the size of items in listing page
- ui: Don't bold titles in card lists
- ui: Increase the width of app and system listings
- ui: Move app names below app icons
- ui: Remove the border around content container
- ui: Remove the noise background
- users: Delete or move home folder when user is deleted or renamed
- users: tests: functional: Check LDAP information is correct after renaming user
15. FreedomBox 24.22 (2024-10-21)
15.1. Highlights
- Add tags for apps
15.2. Other Changes
- .gitlab-ci.yml: Update for new infrastructure
- Remove unused imports to fix flake8 errors
- apache2: Allow popups to have different sandbox policy
- backups: Use new utility for handling file uploads
- calibre: tests: functional: Fix occasional failure in add book test
- ci: Add a custom driver for gitlab runner for podman
- ci: Add docker container for functional-tests:stable
- ci: Add gitlab runner configuration
- ci: Dockerfile: Drop obsolete dependency on pytest-bdd
- ci: Enable showing test failures immediately as they fail
- ci: Generalize script to update container, switch to podman
- ci: Rename Dockerfiles to Containerfiles
- ci: Update functional test timeout to 10h
- context_processors: Stop adding unused 'submenu' to context
- context_processors: Use active menu urls to decide what to highlight
- css: Fix height of navbar in mobile layout during first boot
- css: Navbar styling fixes in mobile layout
- first_boot: Add notification for next steps after first setup
- first_boot: Allow the next steps page to be revisited
- firstboot: Hide navigation toggler in mobile layouts
- firstboot: Improve the setup complete page with more setups
- firstboot: Make logo image responsive during first setup
- firstboot: Show spinner instead of message during first setup
- help, system: Stop using submenu.sorted_items
- help: tests: Fix tests failing due to tags related changes
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, Spanish, Turkish, Ukrainian
- middleware: Show translated error messages when operation completes
- networks: Remove first boot steps for connectivity/topology
nextcloud: Fix install failure due to PrivateTmp=yes
- operation: Use safe formatter for translating messages
- setup: Translate errors when installing/updating/repairing apps
- ssh: Start server after nslcd service
- syncthing: Fix app setup in Debian testing
- tags: Adjust tags and style
- tags: Localization fixes
- tags: css: Minor styling cleanups
- tags: js: Minor fixes and refactoring
- tests: functional: Add package for printing test failures instantly
- tests: functional: Create utility to set user preferred locale
- upgrades: Remove step upgrade during first setup
- upgrades: Show notification to remind user to run updates manually
- utils: Improve safe formatter by handling more cases
- wordpress: tests: functional: Fix tests on Trixie
16. FreedomBox 24.21 (2024-10-07)
16.1. Highlights
- django: Improve handling of file uploads
- nextcloud: Fix existing installs to upgrade properly
16.2. Other Changes
- action_utils: Fix missing parent folder when creating apt hold flag
- action_utils: Introduce utility to move uploaded files
- actions: Handle exceptions with Path-like objects
- featherwiki: Use new utility for handling uploads
- functional tests: Upgrade dependencies selenium and splinter
- kiwix: Don't leave invalid .zim in library after a failed attempt
- kiwix: Use new utility for handling uploads
- locale: Albanian: Fix build issue by correcting typo
- locale: Update translations for Albanian, Czech
- names: Don't control resolved daemon when package is not installed
- names: Don't hard depend on systemd-resolved
- names: Don't show resolver status if package is not installed
- names: Introduce method to check if resolved is installed
- names: Perform resolve diagnostics only if resolved is installed
- names: Schedule a task to install systemd-resolved when possible
- names: Try to install systemd-resolved during app setup
- networks: Disable DNS-over-TLS option if resolved is not installed
- networks: Don't show DNS-over-TLS when resolved is not installed
- nextcloud: During upgrade wait properly for upgrade to complete
- privacy: Disable DNS fallback option if resolved is not installed
- samba: Remove option to backup app
- storage: Skip tests that involve loopback device in a container
- tiddlywiki: Avoid writing duplicate temporary files
- transmission: tests: Fix functional test failures in Debian testing
17. FreedomBox 24.20.1 (2024-09-25)
17.1. Highlights
- samba: Fix nmb systemd service is in erroneous state
- users: Inactivate users in LDAP user database
17.2. Other Changes
- Revert "debian: tests: Wait for systemd-resolved to be started"
- ci: Run autopkgtest but allow failure
- d/tests: Add breaks-testbed restriction
- locale: Update translations for Bulgarian, Chinese (Simplified Han script), Spanish, Turkish
- security: Remove PAM configuration for 'access' module
- users: Increment app version for changes w.r.t. inactive users
- users: Set proper class on default password policy object
18. FreedomBox 24.20 (2024-09-23)
18.1. Highlights
- nextcloud: Fix issue with upgrading to next version
18.2. Other Changes
- action_utils: Add a method to reset services in 'failed' state
- action_utils: Update outdated docstrings
- apache: Don't restart daemon when changing certificates
- config, names: Move domain name configuration to names app
- config, names: Move setting hostname from config to names
- debian: tests: Wait for systemd-resolved to be started
- letsencrypt: Allow reloading daemons after cert changes
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, Dutch, Spanish, Turkish
- miniflux: Workaround a packaging bug with DB connection
- service: Add privileged utility for 'try-reload-or-restart' action
- tests: functional: Don't timeout when web server restarts
- upgrades: Treat n/a release as testing
- users: Don't cache NSS user identity information
- users: Invalidate nscd cache after nslcd service startup
19. FreedomBox 24.19 (2024-09-09)
19.1. Highlights
- mediawiki: Increase PHP maximum execution time to 100 seconds
- names: Use systemd-resolved for DNS resolution
19.2. Other Changes
- bind: Don't start a stopped daemon during changes/upgrades
- bind: Fix port number clash with 'shared' network connections
- bind: Set default forwarder as systemd-resolved
- container: Re-run failed provisioning even if container is running
- letsencrypt: Handle both standard and custom repairs
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Dutch, German, Spanish, Telugu, Turkish, Ukrainian
- makefile: Workaround problems with systemd-resolved package
- names, network: Re-feed DNS known to network-manager to resolved
- names: Add option for setting global DNS-over-TLS preference
- names: Add option for setting global DNSSEC preference
- names: Implement a diagnostic check for checking name resolution
- names: Restart instead of reload for systemd-resolved changes
- names: Show systemd-resolved status in the names page
- networks: Add more options for IPv6 configuration method
- networks: Add support for DNS-over-TLS for individual connections
- networks: Declare a need for DHCP/DNS ports to be open in firewall
- networks: Fix focusing on network interface field on error
- networks: Groups fields in create/edit connection form
- networks: Set 'auto' as default IPv6 method in new connection form
- networks: Show current global value of DNS-over-TLS and link to it
- privacy: Implement a way to disable fallback DNS servers
- privacy: Show notification again so that users see the new setting
- storage: Handle grub-pc package not available
- upgrades: Add repair step for held packages
20. FreedomBox 24.18 (2024-08-26)
- *.md, pyproject.toml: Update default branch from 'master' to 'main'
- d/control: Don't recommend libnss-gw-name
- d/control: Remove haveged as it no longer relevant on latest kernels
- debian: Set gbp default branch to main
- doc/dev: Fix Django related errors with auto-documentation
- doc/dev: Limit table of contents depth to 2 for clarity
- doc/dev: Update copyright year
featherwiki, tiddlywiki: Remove redundant </p> in template
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Czech, Dutch, Norwegian Bokmål, Spanish, Telugu, Turkish, Ukrainian
- plinth: Fix translating app operations
- ttrss: Remove unavailable Android client - org.fox.tttrss
- upgrades: Add diagnostic for held packages
21. FreedomBox 24.17 (2024-08-12)
21.1. Highlights
- featherwiki: Add new app for Personal Notebooks
- tiddlywiki: Add new app for Non-linear Notebooks
21.2. Other Changes
- COPYING.md: Update copyright years
- actions: Add error when likely parameters are not marked as secret
- actions: Define and allow a new alias for str; secret_str
- actions: Log arguments without secret strings in privileged calls
- apache: Enable dav and dav_fs modules
- backups: Mark secret strings in privileged actions
- base.html: Drop dependency on modernizr.js library
- bepasty: Mark secret strings in privileged actions
- django: settings: Don't set USE_L10N on newer versions
- featherwiki: Fix a type check failure
- featherwiki: Proxy download through freedombox.org
- firewall: Setup inter-zone forwarding
- gitweb: Don't backup/restore a drop-in configuration file
- ikiwiki: Mark secret strings in privileged actions
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Czech, Spanish, Turkish
- makefile: Don't fail while building and installing multiple versions
- mediawiki: Mark secret strings in privileged actions
- miniflux: Mark secret strings in privileged actions
- mumble: Mark secret strings in privileged actions
- nextcloud: Mark secret strings in privileged actions
- nextcloud: Prevent process restart when nextcloud is uninstalled
- nextcloud: Redirect to URL nextcloud/ if ending slash is not given
- nextcloud: tests: functional: Add base and interface tests
- pagekite: Mark secret strings in privileged actions
rssbridge: tests: Add missing __init__.py
- shadowsocks: Mark secret strings in privileged actions
- shadowsocksserver: Mark secret strings in privileged actions
- ssh: Mark secret strings in privileged actions
- storage: Add diagnostic for grub config issue
- templates: Fix warning about using default.html for form template
- tests: functional: Allow submitting form buttons along with inputs
- tests: functional: Name the background fixture
- users: Mark secret strings in privileged actions
22. FreedomBox 24.16 (2024-07-29)
22.1. Highlights
- miniflux: Add new app
- Note that miniflux is currently only available in Debian testing and unstable.
22.2. Other Changes
- locale: Update translations for Bulgarian, Chinese (Traditional), German, Swedish
- miniflux, ttrss: Factor out duplicated postgres utility methods
- miniflux: Add list of client apps from upstream clients list
- miniflux: Drop postgres-contrib package as it seem redundant
- miniflux: Fix error handling for reset password
- miniflux: Fix issues with running the CLI in a pseudo-terminal
- miniflux: Fix regression in creating admin user
- miniflux: Remove a spurious error message after resetting password
- miniflux: Trim error messages when creating user
- miniflux: tests: functional: Fix failing tests when run out of order
- readme: Mention the AGPLv3+ license
- tests: functional: Handle click failure when waiting for page update
- tests: functional: Handle obscured elements when submitting forms
23. FreedomBox 24.15 (2024-07-16)
- locale: Update translations for Albanian, Chinese (Simplified), French, German, Polish, Spanish, Turkish, Ukrainian
- make: Ignore .mypy_cache folders while copying files
24. FreedomBox 24.14 (2024-07-01)
- container: Allow podman containers to run inside the container
- diagnostics: Add option for automatic repair
- locale: Update translations for French
25. FreedomBox 24.13 (2024-06-17)
- locale: Update translations for Czech, Dutch, Swedish, Ukrainian
26. FreedomBox 24.12 (2024-06-03)
- locale: Update translations for Albanian, Chinese (Traditional), German, Russian
27. FreedomBox 24.11 (2024-05-20)
- locale: Update translations for Chinese (Simplified), Chinese (Traditional), Spanish, Swedish, Turkish
28. FreedomBox 24.10 (2024-05-06)
28.1. Highlights
- nextcloud: Enable app with experimental warning
- minidlna: Add media directory selection form
28.2. Other Changes
- app, component: Add repair method
diagnostics: Add optional component_id to DiagnosticCheck
- diagnostics: Change "Re-run setup" to "Try to repair"
- letsencrypt: Re-obtain certificates during repair
- letsencrypt: Remove unused imports
- locale: Update translations for Chinese (Simplified), Chinese (Traditional), Czech, Spanish, Turkish
- minidlna: Do not proxy minidlna web interface over Apache
- minidlna: Explicitly include ssdp service to firewall configuration
- minidlna: Restart app when upgrading to reconfigure firewall
- nextcloud: Add fallback for when quadlet is not available
- nextcloud: Allow re-running setup
- nextcloud: Allow re-running setup when app is disabled
- nextcloud: Create network using systemd generator
- nextcloud: Drop network namespacing in container, use host network
- nextcloud: Enable pretty URLs without /index.php in them
- nextcloud: Implement enable/disable container
- nextcloud: Populated and maintain a list of trusted domains
- nextcloud: Pull the image separately before starting systemd unit
- nextcloud: Restart container when dependent services are restarted
- nextcloud: Ship instead of create cron timer related units
- nextcloud: Use php-fpm container instead of apache container
- nextcloud: Use systemd generator for creating container service
- nextcloud: Wait on init sync lock
- nextcloud: Warn that community provides the container not team
- notification: Handle more formatting errors
- setup: Add method to run app repair
- storage: Add an option to include help text to directory selection form
29. FreedomBox 24.9 (2024-04-22)
- action_utils, nextcloud: Make podman util more generic
- config: Handle dropin config files with limited permissions
- locale: Update translations for Albanian, Chinese (Simplified), Chinese (Traditional), Russian, Spanish, Turkish
- nextcloud: (Note that this app is currently disabled, and not available to install.)
- Add network interface to firewall zone after creating it
- Add warning that the app is experimental
- Allow backup/restore when app is disabled
- Connect to mysql using socket instead of TCP
- Connect to redis using Unix socket
- Connect to slapd for LDAP using Unix socket
- Don't fail uninstall if DB or user do not exist
- Don't set password on redis server
- Don't show incorrect phone region when it is not set
- Drop a repeated creation of systemd service file
- Ensure that database is running when running setup
- Expand on the warning about container usage
- Fail on errors when configuring the app
- Fix configuring trusted proxies setting
- Improve check used to test if installation wizard is done
- Improve database permission granting
- Improve setting up LDAP configuration
- Minor changes to cron timer units
- Minor refactoring
- Minor update to description regarding users' usage
- Refactor container creation code
- Refactor setting admin password
- Remove fail2ban jail, brute force protection present
- Rename the systemd service names
- Retrieve database password in a more robust way
- Use a separate DB for redis
- Use secrets module generate passwords
- When backup fails, unset the maintenance mode
- tests: functional: Disable functional tests
30. FreedomBox 24.8 (2024-04-08)
30.1. Highlights
- gitweb: Fix an issue when cloning existing repository
- ttrss: Improve backup and restore of the database
- ttrss: Include dbconfig configuration file in backup
- zoph: Include dbconfig configuration file in backup
30.2. Other Changes
- action_utils: Add generic utils for managing podman containers
- actions: Don't repeat action traceback in stderr
- diagnostics: Don't store list of app objects with results
- locale: Update translations for Albanian, Chinese (Simplified), Dutch, French, German, Norwegian Bokmål, Spanish, Turkish
- network: Skip bridge interfaces in connections list
- nextcloud: Add new app based on podman container
- Note: The Nextcloud app is currently disabled (not available to install). It will be made available after there has been more testing and review.
- Add backup/restore
- Add option to configure the default phone region
- Configure redis caching, create static PHP file
- ttrss: Ensure that database is removed after uninstall
- ttrss: tests: functional: Uninstall during backup/restore test
- upgrades: Re-enable unattended-upgrade during dist-upgrade
- zoph: Re-add a safety check when reading the setup state of the app
31. FreedomBox 24.7 (2024-03-25)
31.1. Highlights
- package: Don't remove packages of other apps on uninstall
- samba: Fix Samba not accessible from IPv6 localhost ::1 address
- system: Organize items into sections
- users: Add email address field when creating/updating user accounts
31.2. Other Changes
- actions: Minor refactor to action error logging
- actions: Move most of the privileged action code to main directory
- actions: Provide HTML error message with action error
- backups: Adjust to changes in privileged errors
- letsencrypt: Remove unnecessary processing of the error messages
- letsencrypt: Show better error messages
- letsencrypt: Simplify error warning when certificate revoke fails
- matrixsynapse: Prevent setup page from being shown during uninstall
- middleware: Show HTML exception message as extra detail in messages
- package: Drop special error message handling for package errors
- samba: Disable nmbd NetBIOS service
- snapshot: Show better error messages
- storage: Adjust to changes in privileged errors
- storage: Show better error message
- tests: Automatically create pytest marks for apps
- tests: Merge actions related test files
- tests: Move test configuration to plinth directory
- tests: Remove unused fixture for testing actions
- upgrades: Show better error messages
- users: Add email address field during first boot
- views: Fix alignment of close button in error messages
- views: Implement a utility to easily show error message
32. FreedomBox 24.6 (2024-03-11)
32.1. Highlights
- gitweb: Fix modifying git repositories when gitweb app is disabled
- users: Fix creating users with initial set of groups
- wordpress:
- Don't fail setup if mysql installed but not running
- Drop database user when app is uninstalled
- Fix backup, restore and uninstall when db is not running
- zoph:
- Don't fail setup if mysql installed but not running
- Don't fail with backup/restore if app is disabled
- Don't redirect to setup page when app is disabled
- Ensure that database server is running when setting up app
- Hide configuration form when app is disabled
- Restore database password to old value after restore operation
- Uninstall fully so that reinstall works
32.2. Other Changes
- *: Add type hints for app init methods
- *: Add type hints for diagnose method
- action_utils: Implement method for starting a service temporarily
- actions: Fix log message when action return can't be decoded
- actions: When action errors out, log a better message
- app: Add ability to hide configuration form when app is disabled
- app: views: Expose method to get enabled/disabled state and cache it
- daemon: Added method to ensure a daemon is running in component
- diagnostics: Add tests for get_results
diagnostics: Handle TypeError when copying results
- locale: Update translations for Dutch
- log: Don't log with in color inside actions scripts
- samba: Ignore non-existent users who are in freedombox-share group
- tests: functional: Refactor install/setup fixture for apps
- tests: functional: Uninstall app after backup and before restore
- users: Minor refactor when creating django groups
- users: tests: Do not remove LDAP user when testing views
- wordpress: Fix minor issue in restoring database
- wordpress: tests: Uninstall app after backup and before restore
33. FreedomBox 24.5 (2024-02-26)
- backups: tests: Don't use pytest marks on fixtures
- container: Fix issue with missing make command on stable image
- daemon: Add new component for daemons shared across apps
- firewalld: Implement force upgrading to any 2.x versions
- gitweb, users: Minor fixes for newer pycodestyle
- locale: Update translations for German
- pyproject.toml: Exclude the build directory from mypy checks
- setup: Ensure that apt is updated before checking force upgrade
- setup: Ensure that force upgrade won't run when app is not installed
- setup: Minor refactoring of force upgrader class instantiation
- setup: Try force upgrade before running app setup
- tests: Patch apps_init for enable/disable daemon test
- tor: tests: Convert to pytest style tests from class based tests
- tor: tests: Fix issue with pytest 8.x versions
- wordpress: Add shared daemon component for mariadb/mysql
- zoph: Add shared daemon component for mariadb/mysql
34. FreedomBox 24.4 (2024-02-12)
34.1. Highlights
- locale: Update translations for Albanian, Chinese (Simplified), German, Spanish, Swedish, Telugu, Turkish, Ukrainian
34.2. Other Changes
- *: Introduce make file based build, eliminate setup.py
- Makefile: Move most of the provision process into build system
- Makefile: Move various tests into build system
- actions: Drop legacy placeholders for unused actions
- d/copyright: Update copyright year
- debian: Remove lintian override for init script
- doc: Install man1 page using Makefile
- doc: dev: Update all references to setup.py
- help: tests: Run tests using doc in current dir instead of /usr
- pyproject.toml: Move project meta data from setup.py
35. FreedomBox 24.3 (2024-01-29)
35.1. Highlights
- diagnostics: Add option to toggle daily run
- zoph: Fix failing PHP configuration requirements
35.2. Other Changes
diagnostics: Add parameters to DiagnosticCheck
- diagnostics: Add method to translate checks
- diagnostics: Translate descriptions only in view
- diagnostics: Store results of full run in database
- diagnostics: Simplify getting translated description in results
- diagnostics: Safely access results when showing notification
- diagnostics: Fix a potential iteration of None value in error cases
- glib: Change API for repeating an in-thread scheduled task
36. FreedomBox 24.2 (2024-01-15)
- locale: Update translations for Chinese (Simplified), French, Spanish, Swedish, Turkish, Ukrainian
37. FreedomBox 24.1 (2024-01-01)
37.1. Highlights
- locale: Add translation for Belarusian
- storage: Show notification when rootfs is read-only
37.2. Other Changes
- locale: Update translation for Dutch
- tests: operation: Fix mock has_calls assertion
38. FreedomBox 23.21 (2023-11-20)
- locale: Update translations for Chinese (Simplified), Czech, Spanish, Swedish, Turkish, Ukrainian
39. FreedomBox 23.20 (2023-11-06)
39.1. Highlights
- backups: Don't leave services stopped if backup fails
- coturn: Fix incorrectly passing transport argument to STUN URIs
39.2. Other Changes
apache: tests: Update to use DiagnosticCheck class
- app: Update diagnose() docstring
- datetime: Fix diagnostic test for checking NTP server sync
- diagnostics: Add shortcut to re-run setup for app
- ejabberd: Update old STUN URIs to remove 'transport' parameter
- email: Increase the size of the message to 100MiB
- locale: Update translations for Albanian, German, Spanish, Turkish, Ukrainian
- matrixsynapse: Update old STUN URIs to remove 'transport' parameter
- operation: Fix issue with re-running setup when it fails first time
- tests: functional: Run tests on two app servers
40. FreedomBox 23.19 (2023-10-23)
40.1. Highlights
- backup: Fix bug in adding existing unencrypted backup location
- diagnostics: Run daily check and notify on failures
- email: Fix issue with install caused by missing drop-in config file
- kiwix: Add app for Kiwix offline Wikipedia reader
- upgrades: Allow matrix-synapse to be installed from bookworm
40.2. Other Changes
- db: Serialize most of the database queries using locks
diagnostics: Add DiagnosticCheck dataclass
- diagnostics: Refactor background diagnostics task
- diagnostics: Refactor check IDs, tests and background checks
- glib: Add a jitter to the interval by default when scheduling tasks
- glib: Refactor schedule debugging in a central place
- kiwix: Do not require login to access the app
- kiwix: Drop unnecessary file in /etc/plinth/modules-enabled
- kiwix: Fix various issues after review
- locale: Update translations for Arabic, Czech, Dutch, German, Hindi, Spanish, Swedish, Telugu, Turkish, Ukrainian
- matrix-synapse: Update warning on how to change domain name
- operation: Add unique ID for each operation
41. FreedomBox 23.18 (2023-09-25)
- *: Fix all typing hint related errors
- development: Make passing mypy checks mandatory
- development: Perform backports tests on bookworm instead of bullseye
- ikiwiki: Disable discussion pages by default for new wiki/blog
- locale: Update translations for Bulgarian
- middleware: Add new middleware to handle common errors like DB busy
- upgrades: Fix detecting apt over tor during upgrade
- wordpress: Use absolute path in service file
42. FreedomBox 23.17 (2023-09-11)
- locale: Update translations for Czech, Dutch, Spanish, Swedish, Turkish, Ukrainian
43. FreedomBox 23.16 (2023-08-28)
43.1. Highlights
- openvpn: Renew server/client certificates
- openvpn: Correctly set expiry of server/client certs to 10 years
43.2. Other Changes
- backups: Remove use of length_is template function
- django: Remove use of X-XSS-Protection header
- locale: Update translations for Czech, Norwegian Bokmål, Swedish
- networks, samba: Fix tests setting firewall zone
- openvpn: Ensure that re-running setup works as expected
- openvpn: Fix app not installing on Debian testing
- openvpn: Minor refactoring in setting up easy-rsa
- openvpn: Use config file instead of env vars for easy-rsa
sso: Switch to django-axes >= 5.0
- sso: Use POST method for logout
- users, networks: Use the autofocus HTML attribute sparingly
44. FreedomBox 23.15 (2023-08-14)
- debian: Add Swedish translation for debconf
- locale: Update translations for Dutch, German, Spanish, Turkish, Ukrainian
45. FreedomBox 23.14 (2023-07-31)
45.1. Highlights
- app: Implement advanced option to rerun app setup
- torproxy: Add separate app for Tor Proxy
- upgrades: Use codename in apt preferences
45.2. Other Changes
- HACKING: Add instructions for container on Raspberry Pi
- bepasty: Don't enable app when setup is rerun
- bind: Don't enable app when setup is rerun
- ci: Add mypy static type check
- container: Add support for retrieving GPG keys using wget
- container: Update for bookworm images
- deluge: Don't enable app when setup is rerun
- ejabberd: Don't enable app when setup is rerun
- firewall: Add diagnostic check for backend
- firewall: Add diagnostic check for passthroughs
- firewall: Add diagnostic for default zone
- gitweb: Don't enable app when setup is rerun
- ikiwiki: Don't enable app when setup is rerun
- infinoted: Don't enable app when setup is rerun
- janus: Don't enable app when setup is rerun
- jsxc: Don't enable app when setup is rerun
- kvstore: Optionally, don't throw exception when deleting key
- locale: Update translations for Dutch
- mediawiki: Don't enable app when setup is rerun
- minetest: Don't enable app when setup is rerun
- openvpn: Don't enable app when setup is rerun
- performance: Don't enable app when setup is rerun
- privoxy: Don't enable app when setup is rerun
- quassel: Don't enable app when setup is rerun
- radicale: Don't enable app when setup is rerun
- rssbridge: Don't enable app when setup is rerun
- shaarli: Don't enable app when setup is rerun
- sharing: Don't enable app when setup is rerun
- tor, torproxy: Export settings from old to new app
- tor, torproxy: Update description for info on services provided
- tor: tests: Make functional test check for running service
- ttrss: Don't enable app when setup is rerun
- upgrades: Use codename for unattended-upgrades origin pattern
- users: Add diagnostic checks for nsswitch config
- users: Add diagnostics check for nslcd config
- wireguard: Don't enable app when setup is rerun
- zoph: Don't enable app when setup is rerun
46. FreedomBox 23.13 (2023-07-17)
- container: Add support for ARM64 containers
- HACKING: Instructions for macOS on Apple Silicon
- locale: Update translations for German, Spanish, Turkish, Ukrainian
47. FreedomBox 23.12 (2023-06-19)
47.1. Highlights
- packages: Purge packages on uninstall
- gitweb: Fix issue with service startup when gitweb is not enabled
- mediawiki: Increment version to run update.php automatically
47.2. Other Changes
- deluge: Utilize purging of packages and don't remove explicitly
- locale: Update translations for Czech, Dutch, Spanish, Turkish, Ukrainian
- mediawiki: Utilize purging of packages and don't remove explicitly
- roundcube: Clarify description for local mail only option
- samba: Remove additional configuration files on uninstall
- searx: Fix typo in method name
- shaarli: Utilize purging of packages and don't remove explicitly
- uninstall: Remove experimental warning
48. FreedomBox 23.11 (2023-06-05)
48.1. Highlights
- *: Fix icons not present in the generated .deb
- shadowsocksserver: Add separate app for Shadowsocks server
48.2. Other Changes
- apache: Fix failure during app update
- apache: Use drop-in config component for /etc files
- bepasty: Use drop-in config component for /etc files
- calibre: Use drop-in config component for /etc files
- cockpit: Use drop-in config component for /etc files
- config: Add new component for managing drop-in /etc/ config files
- debian/install: Add new place in /usr to keep drop-in config files
- deluge: Use drop-in config comonents for /etc files
- ejabberd: Use drop-in config component for /etc files
- email: Use drop-in config component for /etc files
- gitweb: Use drop-in config component for /etc files
- i2p: Use drop-in config component for /etc files
- ikiwiki: Use drop-in config component for /etc files
- janus: Use drop-in config component for /etc files
- letsencrypt: Use drop-in config component for /etc files
- matrixsynapse: Use drop-in config component for /etc files
- mediawiki: Use drop-in config component for /etc files
- minidlna: Use drop-in config component for /etc files
- networks: Use drop-in config component for /etc files
- pagekite: Drop the config file for forcing use of Debian certs
- privacy: Use drop-in config component for /etc files
- radicale: Use drop-in config component for /etc files
- roundcube: Use drop-in config component for /etc files
- rssbridge: Use drop-in config component for /etc files
- searx: Use drop-in config component for /etc files
- security: Use drop-in config component for /etc files
- sharing: Use drop-in config component for /etc files
- ssh: Use drop-in config component for /etc files
- sso: Use drop-in config component for /etc files
- syncthing: Use drop-in config component for /etc files
- transmission: Use drop-in config component for /etc files
- ttrss: Use drop-in config component for /etc files
- upgrades: Use drop-in config component for /etc files
- users: Use drop-in config component for /etc files
- wordpress: Use drop-in config component for /etc files
49. FreedomBox 23.10 (2023-05-22)
- *: Move modules-enabled files to /usr/share
- locale: Update translations for Dutch, Portuguese, Spanish, Turkish, Ukrainian
- doc/dev: Set language code explicitly in Sphinx configuration
- gitweb: Disable gpg signing in tests
50. FreedomBox 23.9 (2023-05-08)
50.1. Highlights
- transmission: Allow remote UIs to connect
- ttrss: Allow apps to use /tt-rss URL instead of separate one
50.2. Other Changes
- apache: Reload apache using component if config changes
- debian: Follows policy v4.6.2
- debian: Update copyright years
- doc/dev: Update copyright year
- help: Add information on obtaining source code
- locale: Update translations for Japanese
- mediawiki: Make a utility method public
- mediawiki: Make retrieving list of supported languages robust
- mediawiki: Simplify retrieving the default language
- minidlna: Resize icon and export to PNG also
- service: Remove reference to managed_services in a message
- storage: Handle mount error properly
- theme: Move icons to app folders
- tor: Check if Hidden service is version 3
- tor: Only diagnose relay ports if feature enabled
- tor: Rename Hidden service to Onion service
- transmission: Add Tremotesf to list of client apps
- ttrss: Don't show app in enabled list of apps if install fails
- ttrss: Update list of clients
- ttrss: Use the apache component to restart apache on config change
- uninstall: Fix issue with uninstall of apps that have no backup
- zoph: Don't fail at showing app view during uninstall
51. FreedomBox 23.6.2 (2023-05-01)
- upgrades: Check apt result during dist-upgrade
- locale: Update translations for Bulgarian, Ukrainian
52. FreedomBox 23.8 (2023-04-24)
52.1. Highlights
- coturn: Prevent package removal when roundcube is uninstalled
- datetime: Re-implement backup/restore for timezone
- gitweb: Disable snapshot feature
52.2. Other Changes
- HACKING: Force pip to install packages to system environment
- bepasty: When uninstalling, remove all data and configuration
- calibre: Remove libraries during uninstallation
- ci: Force pip install for functional tests
- coturn: When uninstalling, remove all data and configuration
- datetime: Use unique component ID for related daemon
- deluge: When uninstalling, remove all data and configuration
- gitweb: When uninstalling, remove all data and configuration, remove repositories
- gitweb: Make globally configured features overridable per-repository
- gitweb: Simplify handling shortcut for front page
- ikiwiki: When uninstalling, remove all data and configuration
- infinoted: When uninstalling, remove all data and configuration
- locale: Update translations for Bulgarian, French, Ukrainian
- matrixsynapse: When uninstalling, remove all data and configuration
- mediawiki: When uninstalling, remove all data and configuration
- mediawiki: Fix broken view on Bullseye due to language selection
- openvpn: When uninstalling, remove all data and configuration
- roundcube: When uninstalling, remove all data and configuration
- rssbridge: When uninstalling, remove all data and configuration
- samba: When uninstalling, remove all data and configuration
- searx: When uninstalling, remove all data and configuration
- searx: Simplify handling shortcut for front page
- shaarli: When uninstalling, remove all data and configuration
- shadowsocks: When uninstalling, remove all data and configuration
- sharing: When uninstalling, remove all data and configuration
- syncthing: When uninstalling, remove all data and configuration
- syncthing: Remove unused pathlib import so job code-quality can pass
- tests: Don't error during collection if selenium is not installed
- tests: functional: Make install script work for Bullseye
- tests: functional: Remove handling for custom enable/disable buttons
- tests: functional: Update detecting page changes
- tor: When uninstalling, remove all data and configuration
- ttrss: When uninstalling, remove all data and configuration
- upgrades: Check apt result during dist-upgrade
- wordpress: When uninstalling, remove all data and configuration
53. FreedomBox 23.6.1 (2023-04-10)
- coturn: Prevent package removal when roundcube is uninstalled
- datetime: Re-implement backup/restore for timezone
- gitweb: Disable snapshot feature
- gitweb: Make globally configured features overridable per-repository
- locale: Update translations for Bulgarian, French
54. FreedomBox 23.7 (2023-03-27)
54.1. Highlights
- matrixsynapse: Add token based registration verification
- mediawiki: Allow setting site language code
54.2. Other Changes
- container: Fix resizing disk image containing multiple partitions
- container: Force pip to install packages to system environment
- container: Increase wait time to accommodate slower architectures
- locale: Update translations for Bulgarian
- tests: functional: Fix setting first ethernet connection as internal
55. FreedomBox 23.6 (2023-03-13)
- /etc/issue: Update message to reflect that all users can login
- ci: Force pip to install packages to system environment
- datetime: Use timedatectl to read current timezone
- samba: Make sure shares are not accessible from the internet
- ttrss: Fix failing backup
56. FreedomBox 23.5 (2023-02-27)
- mediawiki: Fix app view error
- locale: Update translations for Albanian, Bulgarian, Czech, Dutch, German, Spanish, Swedish, Turkish, Ukrainian
- samba: tests: Fix enable share view test
57. FreedomBox 23.4 (2023-02-13)
57.1. Highlights
- ejabberd: Fix making call connections when using TURN
- matrixsynapse: Disable verification to fix public registrations
- snapshot: Fix issue with snapshot rollbacks
57.2. Other Changes
- app: Add backup and restore menu items to toolbar menu
- backups: Allow selecting a single app from URL when creating backup
config: Drop RuntimeMaxUse=5% for journal logging
- dynamicdns: Skip uninstall test
ejabberd: Add Monal and Siskin for iOS and remove ChatSecure
- email: Redirect to the app page if roundcube isn't installed
- ikiwiki: Re-run setup for each site after restore
- locale: Update translations for Bulgarian, Spanish
- matrixsynapse: Minor refactor in getting/setting public registrations
- matrixsynapse: Add python3-psycopg2 to packages
- matrixsynapse: Use yaml.safe_load
- searx: Add libjs-bootstrap to packages
- snapshot: Fix mounting /.snapshots subvolume and use automounting
- templates: Show better title for 404 page
- uninstall: Fix spelling in warning message
- vagrant: Drop unnecessary script that deletes sqlite file
- vagrant: Hide the vagrant-script directory
- vagrant: Mount source in /freedombox instead of /vagrant
- vagrant: Switch to /freedombox before running service with alias
58. FreedomBox 23.3 (2023-01-30)
- config: Fix showing the value of the default home page
- email: Revert workaround for error on finishing uninstall
- firewalld: Allow upgrade to version 2*
- gitweb: tests: Skip tests using git when git is not installed
- locale: Update translations for Bulgarian
- tests: functional: Fix submitting forms with notifications present
- tor: Also use Aptsources822 augeas lens
- tor: Remove workaround for old Augeas bug
- upgrades: Add augeas lens for Deb822 apt sources
- views: Use dedicated view when showing an app with operations
59. FreedomBox 23.2 (2023-01-16)
- locale: Update translations for Albanian, Bulgarian
- ssh: Add sudo to allowed groups
- upgrades: Stop quassel during dist upgrade
60. FreedomBox 23.1 (2023-01-03)
60.1. Highlights
- package: Don't uninstall packages that are in use by other apps
- tor: Add onion location to apache
60.2. Other Changes
- email: Workaround an issue with error on finishing uninstall
- gitweb: Run git commands as a web user
- janus: Allow upgrade to 1.1
- locale: Update translations for Galician, Spanish
- operation: tests: Fix warning when test helpers start with 'Test'
- zoph: Add explicit dependency on default-mysql-server
61. FreedomBox 22.27 (2022-12-19)
61.1. Highlights
- minidlna: Fix incorrect marking for firewall local protection
- zoph, wordpress: Add conflicts on libpam-tmpdir
61.2. Other Changes
- container: Drop free tag from image URLs
- d/control: Don't recommend libpam-tmpdir
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, German, Turkish, Ukrainian
- package, email: Move conflicting package removal to framework
- snapshot: Fix showing unsupported message on non-btrfs filesystems
- tests: functional: Set timeout to 3 hours
- upgrades: dist-upgrade: Don't change apt security line
- users: tests: Fix privileged tests
- wordpress: Redirect Webfinger queries
62. FreedomBox 22.26 (2022-12-05)
62.1. Highlights
- ejabberd: Enable mod_http_upload
- security: Remove restricted access setting and configuration
- ssh: Restrict logins to groups root, admin and freedombox-ssh
62.2. Other Changes
- calibre: Add protection to local service using firewall
- deluge: Add protection to local service using firewall
- email: Add protection to local service using firewall
- firewall: Create a mechanism for protecting local services
- firewall: Introduce component for local service protection
- i2p: Add protection to local service using firewall
- i2p: Remove donation URL that is no longer available
- minidlna: Add protection to local service using firewall
- searx: Ensure that socket is only reachable by Apache and root
- ssh: Add checkbox to remove login group restrictions
- syncthing: Add protection to local service using firewall
- transmission: Add protection to local service using firewall
63. FreedomBox 22.25 (2022-11-21)
- email: Add fail2ban jail for dovecot
- email: Fix creation of aliases for security@ and usenet@
64. FreedomBox 22.24 (2022-11-07)
64.1. Highlights
- locale: Update translations for Bulgarian, French, German, Norwegian Bokmål
64.2. Other Changes
- debian/lintian-overrides: Fix mismatch patterns and new messages
- minetest: Handle upgrade from 5.3.0 to 5.6.1
- storage: Drop skip_recommends
- upgrades: Add documentation link to upgrades service file
- upgrades: Update list of holds during dist upgrade
65. FreedomBox 22.23 (2022-10-24)
65.1. Highlights
- letsencrypt: Fix regression with comparing certificate
- rssbridge: Add option to allow public access
65.2. Other Changes
- locale: Update translations for Bulgarian, Hungarian, Swedish
- storage: Handle file systems on non-physical devices
upgrades: Allow FreedomBox vendor when adding backports
- upgrades: Skip unattended-upgrade in dist-upgrade
66. FreedomBox 22.22.1 (2022-10-16)
- debian: tests: Fix PYTHONPATH
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, Turkish, Ukrainian
- privacy: Remove unused import, fix pipeline
67. FreedomBox 22.22 (2022-10-10)
67.1. Highlights
- privacy: Add new system app for popularity-contest
- matrix: Add fail2ban jail
67.2. Other Changes
- *: Use privileged decorator for actions
- action_utils: Drop support for non-systemd environments
- action_utils: Drop unused progress requests from apt-get
- actions: Allow actions to be called by other users
- actions: Allow nested and top-level actions
- actions: Drop unused superuser_run and related methods
- actions: Implement getting raw output from the process
- actions: Use separate IPC for communicating results
- apache: Fix logs still going into /var/log files
- bind: Drop enabling DNSSEC (deprecated) as it is always enabled
- config: Drop ability to set hostname on systems without systemd
- config: Drop legacy migration of Apache homepage settings
- fail2ban: Make fail2ban log to journald
- firewall: Drop showing running status
- locale: Update translations for Albanian, Czech, Norwegian Bokmål, Russian, Swedish, Ukrainian
- minidlna: Use the exposed URL for diagnostic test
- openvpn: Drop RSA to ECC migration code and two-step setup
privacy: Set vendor as FreedomBox for dpkg and popularity-contest
- searx: Show status of public access irrespective of enabled state
- templates: Update HTML meta tags for better description and app-name
- tests: Add fixture to help in testing privileged actions
- wordpress: Update fail2ban filter
68. FreedomBox 22.21.1 (2022-10-01)
- locale: Update translations for Bulgarian, Ukrainian
- notification: Don't fail when formatting message strings
69. FreedomBox 22.21 (2022-09-26)
- janus: Enable systemd sandboxing
- locale: Update translations for Albanian, Bulgarian, Czech, Danish, Dutch, French, German, Greek, Hungarian, Indonesian, Italian, Latvian, Lithuanian, Norwegian Bokmål, Persian, Polish, Portuguese, Russian, Serbian, Slovenian, Spanish, Swedish, Turkish, Ukrainian
- mediawiki: Add powered by freedombox logo
- wordpress: Add fail2ban filter and jail
- wordpress: Disable readme.html, xmlrpc.php, wp-cron.php
70. FreedomBox 22.20 (2022-09-12)
70.1. Highlights
matrixsynapse: Allow matrix-synapse >= 1.65 to install successfully
70.2. Other Changes
- backups: Use generic form template for create and schedule views
- backups: tests: functional: Find forms more accurately
- bepasty: Use generic form template for add password view
- bepasty: tests: functional: Minor refactor for form submission
- calibre: tests: functional: Find forms more specifically
- d/maintscript: remove tahoe and mldonkey apache conf files
- debian: Add Italian debconf translation
- ejabberd: tests: functional: Ensure jsxc is installed
- firewall: Allow upgrade from any version to 1.2.*
- first_boot: tests: functional: Find form more specifically
- gitweb: Fix issue with page not refreshing during uninstall
- gitweb: Use generic form template for create/edit repository
- gitweb: tests: functional: Find forms more accurately
- ikiwiki: tests: functional: Find forms more accurately
- locale: Update translations for Chinese (Simplified), Czech, French, Italian, Turkish
- samba: Ignore mounted files when listing mounts
- samba: Update client apps information
- shaarli: tests: functional: Specify setup form submission button
- sharing: tests: functional: Find forms more accurately
- snapshot: tests: functional: Minor refactoring for form submission
- sso: tests: functional: Find forms more accurately
- templates: form: Specify a form class for use with functional tests
- tests: functional: Assert app is not installed after uninstallation
- tests: functional: Force specifying form to submit more accurately
- tests: functional: Wait for installation to complete fully
- users: tests: functional: Find forms more accurately
- version: Compare Debian package version numbers
- wordpress: tests: functional: Find forms more specifically
- zoph: tests: functional: Simplify finding the form to submit
71. FreedomBox 22.19 (2022-08-29)
71.1. Highlights
- jsxc: Allow disabling the app
- app: Add a menu item to trigger uninstallation
71.2. Other Changes
- app: Add API to uninstall an app
- avahi: Don't disable after tests
backups: Use AppView for the main app page
- container: Display help message when no args are passed
- container: Show default values in command help
- d/control: Break ufw as we use firewalld
- debian: Update Spanish translation template
diagnostics: Use AppView for app page
- ejabberd: Set hostname for test that relies on it
- forms: Implement form for uninstallation
- janus: Convert action to privileged
- janus: Handle upgrades to 1.0.*
letsencrypt: Use AppView for app page
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, French, German, Spanish, Turkish, Ukrainian
names: Use AppView for app page
networks: Use AppView for app page
- operation: Factor out template code into a separate file
- operation: Show operations on app page in addition to setup page
- package: Implement low-level methods for uninstalling
- package: Implement uninstall in Package component
power: Use AppView for app page
security: Use AppView for app page
- setup: Drop check for already running operation
- setup: Implement operation to uninstall an app
snapshot: Use AppView for app page
- tests: Make functional.is_available check faster
- tests: functional: Add install/uninstall test for all apps
tor: Use AppView and Operation for app page
- ttrss: Add donation url
- upgrades: Add button to test dist-upgrade in development mode
- upgrades: Hold janus during dist-upgrade
- views: Implement a view to uninstall an app
72. FreedomBox 22.18 (2022-08-15)
72.1. Highlights
- networks: Remove DNSSEC diagnostics
- setup: Allow starting installation when package manager is busy
- setup: Fix issue with immediate refresh after installation
72.2. Other Changes
- *: Add setup method on all apps that don't have it
- *: Drop module level app property
- *: Make force upgrading part of app rather than a module
- *: Make setup method part of App class for all apps
- app: Drop optimization that skips setup process
- backups: tests: Mark need for Django database during API tests
container: Add IdentitiesOnly option to SSH
- container: Ignore flake8 error 'line too long' in bash script text
- coturn: Fix link to ejabberd in description
- doc: dev: Document previously undocumented components
- ejabberd: Fix showing the status messages
- locale: Update translations for Bulgarian, Czech, Dutch, French, German, Turkish, Ukrainian
- matrixsynapse: Fix showing the status messages
- notification: Pass full context when rendering body template
- operation: Add module to manage threaded operations
- package: Run installation operation using app_id instead of module
- setup: Drop setup_helper and use the new Operation API
- sharing: Add installing and enable/disable like other apps
- sharing: tests: functional: Fix a flaky test by waiting
- ssh: tests: functional: Keep service enabled after tests
- storage: Fix enumerating partitions without mount points
73. FreedomBox 22.17 (2022-08-01)
73.1. Highlights
- help: Add "How can I help?" section to Contribute page
73.2. Other Changes
- locale: Update translations for Chinese (Simplified), Dutch, French, German, Turkish
- wordpress: Don't install php-ssh2
74. FreedomBox 22.16 (2022-07-18)
74.1. Highlights
- cockpit: Reconfigure to allow any origin
- rssbridge: New app to generate RSS feeds for websites
74.2. Other Changes
- apache: Also configure to serve on /freedombox
- apache: Merge old configuration files into a better location
- apache: Redirect all logs to systemd journal
- cockpit: Depend on apache and setup after it
- cockpit: Use decorator for privileged actions
- config: Add option to set logging mode: none/volatile/persistent
- config: Set volatile logging by default
- debian: Follows policy version 4.6.1
- debian: Update copyright year
- gitweb: Switch default branch name to main for new repositories
- janus: Change short description to "Video Room"
- locale: Update translations for Bulgarian, Chinese (Simplified), French, Russian, Ukrainian
- privoxy: Restrict to private IPs, prevent access over the internet
- privoxy: Use privileged decorator for actions
- roundcube: Add fail2ban jail
- roundcube: Configure to log to journald
- roundcube: Use privileged to simplify actions
- rssbridge: Add functional tests
- rssbridge: Fix flake8 errors
- rssbridge: Whitelist all bridges by default
75. FreedomBox 22.15 (2022-07-04)
75.1. Highlights
- backups: Add options to keep sshfs shares responsive
- backups: Unmount repositories before and after backup
- users: create home directories for newly created users
75.2. Other Changes
- *: pylint: Avoid calling super() with arguments
- *: pylint: Don't inherit from 'object'
- *: pylint: Drop unnecessary 'pass' statements
- *: pylint: Explicitly specify encoding when open a file
- *: pylint: Suppress unused argument warnings
- ci: Use compatible versions of Selenium and Splinter
- locale: Update translations for Bulgarian, Russian, Ukrainian
- mediawiki: Add regex validator to the domain field
- mediawiki: Remove Buster specific code not needed in Bullseye
- mediawiki: Remove wgLogo as it is not needed in Bullseye
- pyproject.toml: Ignore some refactoring messages with pylint
- static: js: css: Make multiple select fields work with Django 4.0
- tests: functional: Simplify GitLabCI configuration
- upgrades: Hold packages one at a time
- upgrades: Re-add workaround for grub
- views: Add a comment about change in Django 4.0
76. FreedomBox 22.14.1 (2022-06-27)
76.1. Highlights
- matrixsynapse: Allow new dependency to be installed from backports
76.2. Other Changes
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, German, Turkish
- actions: Note that privileged actions can't output to stdout
- mumble: Backup/restore the configuration file
- mumble: Don't set the root channel name unless it is changed
- mumble: Use privileged decorator for superuser actions
- mumble: tests: Add functional tests for setting the passwords
77. FreedomBox 22.14 (2022-06-20)
77.1. Highlights
- ejabberd: Allow domains to be added or removed
- mumble: Allow setting a password that is required to join the server
- mediawiki: Add option to change the site name
77.2. Other Changes
- actions: Add a decorator for marking superuser actions
- doc: dev: Use and recommend new privileged actions
- ejabberd: Automatically use coturn
- janus: Improve description about coturn
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, French, German, Russian, Turkish
- tests: Add a dummy parameter for middlewares for Django 4.0
- translation: Don't use session for storing lang pref in Django 4.0
- transmission: Simplify actions using the privileged decorator
- users: Fix deleting user LDAP entry with Django 4.0
78. FreedomBox 22.13 (2022-06-06)
78.1. Highlights
- email: Make app available for all users (even without advanced flag)
- janus: Add new app for lightweight WebRTC server
- wordpress: Allow installing/updating plugins and themes
78.2. Other Changes
- email: Add description about ISP and domain limitations
- locale: Added Latvian translation
- locale: Update translation for Bulgarian, Chinese (Simplified), Czech, Dutch, German, Russian, Swedish, Turkish
- mumble: Allow changing root channel name
- tests: functional: Add jobs for bullseye-backports
- tests: functional: Integrate into Salsa CI
- transmission: Add redirects to avoid 409 conflict
- wordpress: tests: Continue past language selection screen
- wordpress: tests: Fix writing title for new post in newer versions
79. FreedomBox 22.12 (2022-05-23)
79.1. Highlights
- *: Show Learn More... links in frontpage with description
- mediawiki: Serve hidden service over http for .onion domains
79.2. Other Changes
- apache: Allow URL diagnostics to work with redirects
- firewall: Show service name in port forwarding info table
- frontpage: Allow showing links to manual pages
- frontpage: Reuse app header template for showing app description
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, French, German, Norwegian Bokmål, Turkish
- mediawiki: Add stricter sandbox rules for jobrunner service
- mediawiki: Fix URL diagnostics with redirects involved
- ssh, bind: Show 'Learn More...' links
- tor: Show port forwarding information in consistent way
- tt-rss: Fix description about user access
80. FreedomBox 22.11 (2022-05-09)
80.1. Highlights
- email: Fix userdb lookups with LDAP
- matrixsynapse: Allow new dependencies to be installed from backports
80.2. Other Changes
- HACKING: Improve documentation on how to run tests
- container: Show executed commands when setting up/running tests
- locale: Update translations for Bulgarian, Danish, French, Hungarian, Norwegian Bokmål, Polish, Russian, Ukrainian
- mediawiki: Check if admin password is at least 10 characters long
mediawiki: Handle password rejection from MediaWiki
- samba: Fix functional tests when user is not logged in at start
- tests: functional: Get rid of dependency on xvfb
- transmission: Improve description
81. FreedomBox 22.10 (2022-04-25)
- locale: Update translations for Bulgarian, Czech, Dutch, German, Greek, Russian, Swedish, Turkish
- sharing: Allow spaces in path strings
82. FreedomBox 22.9 (2022-04-11)
82.1. Highlights
- minetest: Allow alternate name for 3d armor mod
- upgrades: Use python3-typing-extensions from bullseye-backports
82.2. Other Changes
- calibre: Fix description of allowable library names
- locale: Add new Arabic translation
- locale: Update translations for Arabic, Bulgarian, Czech, Dutch, French, German, Hungarian, Turkish
- plinth: Add forum link to footer
83. FreedomBox 22.8 (2022-03-28)
83.1. Highlights
- network: Fix showing wifi connection
83.2. Other Changes
- calibre: explain correct name format for new library
- ikiwiki: add packages that are necessary
- locale: Updated translations for Chinese (Simplified), French, Russian
- upgrades: Allow backports from src:freedombox
84. FreedomBox 22.7 (2022-03-14)
- locale: Update translations for French, Hungarian, Spanish
85. FreedomBox 22.6.1 (2022-03-06)
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, German, Turkish
86. FreedomBox 22.6 (2022-03-02)
86.1. Highlights
- email: Enable as an advanced app
86.2. Other Changes
- dynamicdns: Fix adding null domain into configuration
- email: Add backup/restore component
- email: Add basic functional tests
- email: Add front page shortcut, update name and description
- email: Add more special-use IMAP folders, set autoexpunge to 60days
- email: Add shortcut for non-admin users to manage their aliases
- email: Add various documentation links for future readability
- email: Allow re-running setup
- email: Backup/restore aliases and mailboxes
- email: Depend on and run redis server
- email: Implement adding common aliases for first admin user
- email: List all listening ports of the daemons
- email: Narrowly match just rspamd's spam header
- email: Open firewall port for managesieve protocol
- email: Revert to LDAP auth as pam does not allow non-admin users
- email: Set an icon from Tango project
email: Setup rspamd configuration to include FreedomBox config
- email: Tweak client auto-configuration file
- email: Update donation URL to rspamd donation URL
- email: aliases: Drop ability to enable/disable aliases
- email: clients: Make Thunderbird URLs language independent
- email: dkim: Implement setting up DKIM signing keys
- email: dns: Show table for desired DNS entries
- email: postfix: Fix priority for authentication directives
- email: postfix: use inline map for TLS SNI maps
- email: rspamd: Log to journald via syslog
- email: rspamd: Simplify installing configuration
- locale: Update translations for Bulgarian, Chinese (Simplified), Czech, Dutch, German, Hungarian, Russian, Swedish, Telugu, Turkish, Ukrainian
- minidlna: add iOS VLC client
- samba: add iOS VLC client
87. FreedomBox 22.5 (2022-02-14)
87.1. Highlights
- dynamicdns: Replace ez-ipupdate
- Drop NAT detection as it is no longer used
- Drop about page and merge into description
- Drop tabs and use single page
- Rewrite configuration handling and update using URL
87.2. Other Changes
- app: Add component to store enabled state of an app in kvstore
- backups: Implement backup/restore of key/value settings
- locale: Update translations for Albanian, Bulgarian, Chinese (Simplified), Czech, Dutch, German, Hungarian, Russian, Spanish, Swedish, Turkish, Ukrainian
- minetest: Reduce the number of configuration update messages
- tests: functional: Add plugin for HTML reports
tt-rss: Restrict access to feed-reader group in "/tt-rss-app"
- users: Fix typo in description
88. FreedomBox 22.4 (2022-01-31)
88.1. Highlights
- coturn: Use wildcard listening address to fix startup issues
- sso, users: Redirect to home page after logout
88.2. Other Changes
- apache: Don't redirect to HTTPS for .onion domains
- apache: Don't set HSTS for .onion domain
cockpit: Explicitly redirect to HTTPS as needed for WebSockets
- doc: Fail when downloading images from Debian wiki fails
- email_server: Drop showing diagnostics/repair and roundcube config
- email_server: Drop some unused code
- locale: Update translations for Bulgarian, Dutch, French, German, Hungarian, Russian, Swedish, Ukrainian
matrixsynapse: Add FluffyChat to client list
- mldonkey: Drop app not available in Debian Bullseye and Bookworm
- power: Add a link to power app in the system menu
- roundcube: Add setting for local connection only
- shaarli: Add android app to description
- shaarli: Add backup component
- shaarli: Add functional tests
- snapshots: Clarify that snapshots are take during updates too
- tests: functional: Implement a workaround for issue with screenshots
- users: Clarify help message for authorization password
- wireguard: tests: Add functional tests
89. FreedomBox 22.3 (2022-01-17)
89.1. Highlights
- upgrades: Allow matrix's new dependency to be installed
- sso: Adjust URL to CAPTCHA page needed by Django security fix
89.2. Other Changes
- container: Avoid a warning that interactive mode is intended
- help: tests: Fix functional test to check for status logs
- locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Turkish
- sso: Add missing captcha/rate limiting on SSO login
- tests: functional: Fix setting domain name with active notifications
- tt-rss: Allow published articles to be publicly available
90. FreedomBox 22.2 (2022-01-11)
90.1. Highlights
- debian, setup.py: Add dependency on python3-tomli
- help: Fix failing setup when manual directory is not available
90.2. Other Changes
- backups: Correct spelling of encryption protocols
- i2p: Fix grammar in description
- ikiwiki: Initialize shortcuts during post-init setup
- locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Italian, Swedish, Turkish
- mumble: Change description to include iOS client app
- networks: Fix reference to an option
- openvpn: Add link to IOS app
- radicale: Update Thunderbird URLs
- transmission: Fix capitalization
- wireguard: Fix spelling
91. FreedomBox 22.1 (2022-01-03)
91.1. Highlights
- package: Add diagnostic to check if a package is the latest version
91.2. Other Changes
- backups: Capitalize 'SSH' in template
- config, upgrades: Specify submit button for tests
- datetime: Explicitly list systemd-timesyncd as a dependency
- locale: Update translations for Chinese (Traditional), Czech, Dutch, Hungarian, Norwegian Bokmål, Spanish, Swedish
- storage: Skip tests if not enough disk space is available
- upgrades: Relabel from 'Update' to 'Software Update'
92. FreedomBox 21.16 (2021-12-20)
92.1. Highlights
- datetime: Fix checking when timesyncd will run on a system
92.2. Other Changes
- cockpit, ejabberd: Make 'name' optional in Signal handlers
- diaspora: Drop app that was never finished
- email_server:
- Adjust TLS configuration parameters
- Fix issue with handling domain removal
- Include postfix package in packages list
- Re-implement TLS configuration
- Rename dovecot TLS configuration file for consistency
- letsencrypt: Handle cert setup when an app wants all domains
- locale: Update translations for Chinese (Simplified), Chinese (Traditional), Czech, French, German, Swedish, Turkish
- monkeysphere, tahoe-lafs: Drop unused apps
- roundcube: Allow upgrades by avoiding configuration file change
- tests: Fix app name in pytest.skip statement
- tests: functional: Skip MLDonkey app
- upgrades: Cleanup dist upgrade steps specific to bullseye release
- upgrades: Refactor dist upgrade process
93. FreedomBox 21.15 (2021-12-06)
93.1. Highlights
- dynamicdns: Update URLs to the new dynamic DNS server
- firewall: Allow configuration upgrade to version 1.0.x
- shaarli: Enable app (only available in testing and unstable)
93.2. Other Changes
- *: Drop module level depends declaration
- *: Drop module level package_conflicts and use component API
- *: Drop unused manual_page at module level
- *: Drop use of managed_packages and rely on Packages component
- *: Drop use of managed_services, rely on Daemon component
- *: Drop use of module level is_essential flag
- *: Drop use of module level version
- *: Drop use of unnecessary managed_paths
- *: Use the App's state management API
- actions/letsencrypt: Drop use of managed_paths and use LE component
- actions/service: Drop unused list action
- actions/service: Drop use of managed_services for Daemon component
- actions: Get list of packages from Packages components
- app: Introduce API for managing setup state of the app
- app: Introduce API to setup an app
bind: Drop alias handling unnecessary in >= Bullseye
- daemon: Add new component to hold information about related daemons
- doc/dev: Drop discussion on managed_paths
- doc/dev: Drop reference to module level depends declaration
- doc/dev: Remove mention of managed_services
- doc/dev: Remove outdated reference to init() at module level
- doc/dev: Update documentation to not refer to managed_packages
- email_server: Merge domain configuration with app view
- email_server: Simplify domain configuration form
- first_boot: Drop use of loaded_modules and use App.list
- forms: Fix regression with TLS domain form in quassel and tt-rss
- letsencrypt: On domain removal, don't revoke certificate, keep it
- locale: Update translations for Czech, German, Norwegian Bokmål
- main: List apps instead of modules
- middleware, views: Reduce use of setup_helper
- module_loader, app: Move app init to app module
- package: Add parameter to specify skipping package recommendations
- package: Implement installing packages in the component
- package: Introduce component API for package conflicts
- packages: Move checking for unavailable packages to component
- security: Drop use of loaded_modules and use App.list
- security: Drop use of managed_services in security report
- security: Get the list of packages from Packages component
- setup: Drop unused API for app's state management
- setup: List dependencies for apps instead of modules
- setup: Run setup on apps instead of modules
- setup: Use apps instead of modules to determine running first setup
- setup: Work on apps instead of modules for force upgrade
- tests: Add 'domain' mark for apps that add/remove domains
- web_server: Drop use of loaded_modules and use App.list
94. FreedomBox 21.14.1 (2021-11-24)
- config: Add packages component to a re-add zram-tools dependency
95. FreedomBox 21.14 (2021-11-22)
95.1. Highlights
- tt-rss: Allow selection of a domain name
95.2. Other Changes
- *: Split app initialization from app construction
- app: Introduce separate method for post initialization operations
- datetime: Avoid error when systemctl is not available
- debian: Fail build if no module dependencies found
- locale: Update translations for Swedish, Turkish, Ukrainian
- main: Drop initializing Django when listing dependencies
96. FreedomBox 21.13 (2021-11-08)
96.1. Highlights
- avahi, samba: Use systemd sandboxing
- components: Introduce new component - Packages
- security: Properly handle sandbox analysis of timer units
96.2. Other Changes
- email_server (not enabled yet):
- Add buttons for managing aliases, domains, spam
- Authenticate using PAM instead of LDAP
- Delivery mail to /var/mail instead of home directory
- Don't use user IDs when performing lookups
- Drop hash DB and use sqlite3 directly
- Use Django forms and views
- locale: Update translations for German, Swedish, Turkish, Ukrainian
tests: Use BaseAppTests for functional tests of most apps
- utils: Fix ruamel.yaml deprecation warnings
97. FreedomBox 21.12 (2021-10-25)
- locale: Update translations for Bulgarian, Czech, French, German, Turkish, Ukrainian
- middleware: Don't show setup view to non-admin users
- performance: Add backup support (no data)
- storage: Pass optional mount point to partition expansion
- storage: tests: Fix tests for expanding disk partitions
tests: Add BaseAppTests class for common functional tests
98. FreedomBox 21.11 (2021-10-11)
98.1. Highlights
- ttrss: Fix daemon not running sometimes on startup
98.2. Other Changes
- *: Always pass check= argument to subprocess.run()
- *: Convert all functional tests to python format
- *: Move all systemd service files from /lib to /usr
- calibre: Run service only if when installed
- d/control: Allow building with python interpreter of any arch
- d/rules: Don't install and enable other systemd service files
- d/rules: Don't use setup.py to invoke tests, invoke directly instead
- email: Manage known installation conflicts
- locale: Update translation for Bulgarian, Ukrainian
- package: Add functions for removing packages
performance: Cleanup code meant for cockpit version < 235
- pyproject.toml: Merge contents of .converagerc
- pyproject.toml: Merge contents of pytest.ini
- settings: Choose password hashing complexity suitable for SBCs
- setup: Show and remove conflicts before installation
- sso, translation: Help set language cookie when user logins in
- storage: tests: functional: Fix tests always getting skipped
- tests: Add some missed marks for functional tests
- tests: Add tests for action utilities
- tests: Improve handling of tests skipped by default
- tests: help: Add help view tests
- translation: Always set language cookie when switching language
- ttrss: Add systemd security hardening to daemon
- ttrss: tests: functional: Make subscription faster
- user: Accommodate Django 3.1 change for model choice iteration
- users: Help set language cookie when user profile is edited
- wordpress: Run service only if when installed and configured
99. FreedomBox 21.10 (2021-09-27)
99.1. Highlights
- locale: Update translations for German, Italian, Swedish, Turkish, Ukrainian
99.2. Other Changes
- Use Django gettext functions instead of ugettext
- Use allow/denylist instead white/blacklist in comments
- Use django.urls.re_path() instead of its alias url()
- Various isort fixes
- pyproject: Make isort consistent across execution environments
- settings: Set Django auto field type explicitly
- signals: Drop provider args when creating Signal object
- sso: Update usage of OpenSSL crypt signing API
- tests: Convert functional tests to python format
- tests: Introduce fixtures to make it easy to test actions
- tests: Show warning when app not available
- tests: Use common fixtures for testing actions module
- tests: Use newer splinter API for finding links
- views: Update utility for checking URL safety
100. FreedomBox 21.9 (2021-09-18)
100.1. Highlights
- mediawiki: Backup and restore uploaded files
- mediawiki: Enable a subset of default extensions
100.2. Other Changes
- apache: Update security settings
- Drop support for GnuTLS
- Drop support for SSLv3, TLSv1 and TLSv1.1
- Enable and prioritize HTTP/2 protocol
- Setup Mozilla recommended configuration
- locale: Update translations for Bulgarian, Chinese (Simplified), Dutch, Persian, Russian, Swedish, Turkish, Ukrainian
- mediawiki: Handle upgrade for 1.35
mediawiki: Switch to MediaWiki 2020 logo
- plinth: remove diagnose command
- Add workaround for Django 3.2 with captcha 0.5.6
101. FreedomBox 21.8 (2021-08-30)
101.1. Highlights
wordpress: New app to manage a WordPress site/blog
101.2. Other Changes
- d/control: Drop wireless-tools as recommends
- email: Basic app to manage an email server
- - Email server app is currently disabled by default, so it is not yet visible in the interface.
- locale: Update translations for Norwegian Bokmål, Ukrainian
- security: Remove display of past vulnerabilities
102. FreedomBox 21.7 (2021-08-16)
102.1. Highlights
- ttrss: Allow upgrade to version 21
102.2. Other Changes
- locale: Update translations for Albanian, Bengali, Chinese (Simplified), German, Indonesian, Norwegian Bokmål, Ukrainian, Vietnamese
- action_utils: Use flag to indicate freedombox package has been held
- debian: Ensure fuse gets replaced by fuse3
103. FreedomBox 21.6 (2021-05-31)
103.1. Highlights
- locale: Add Sinhala language
- locale: Add Vietnamese language
- backups: Change submit button to fix translation issues
103.2. Other Changes
- locale: Update translations for Chinese (Simplified), Chinese (Traditional), Dutch, French, German, Hungarian, Indonesian, Japanese, Portuguese, Sinhala, Swedish, Telugu, Turkish, Vietnamese
104. FreedomBox 21.5 (2021-04-19)
104.1. Highlights
- ejabberd: Add STUN/TURN configuration
- locale: Add Albanian language
104.2. Other Changes
- Update copyright year
- action_utils: Introduce utility for masking services
- ci: Merge with Salsa CI pipeline
- config, dynamicdns, pagekite: Remove incorrect use of str
- config: Convert entered domain name to lower case
- config: Disable rsyslog and syslog forwarding
- config: Fix tests related to user home directory
- config: Install and configure zram for swap
- container script: Must convert env. var. string to a Path object
- container: Work in the absence of systemd in PATH
- container: distribution as environment variable
- coturn: Mention ejabberd in app description
- coturn: Validate TURN URIs if provided in form
- debian: Add coverage to autopkgtest
- deluge, mldonkey, syncthing, transmission: Depend on nslcd.service
- deluge: Fix daemon user not in freedombox-share group after installation
- diagnostics: Use lock to protect results
- docs: Add filename to code snippets in tutorial
- docs: Add missing imports in tutorial
- docs: Add some troubleshooting information
- docs: Generate developer documentation
- docs: Improve Developer Documentation index page
docs: Set the version attribute as required instead of optional
- dynamicdns: Convert entered domain name to lower case
- dynamicdns: Wait after changing domain name in tests
- first_boot: Use session to verify first boot welcome step
- letsencrypt: Always return a diagnostics result
- locale: Update translations for Albanian, Chinese (Simplified), Dutch, German, Greek, Indonesian, Polish, Spanish, Swedish, Turkish
- pagekite: Convert entered kite name to lower case
- security: Clarify vulnerability count and provide link to more info
- security: Ensure that fail2ban is not re-enabled on version increment
- security: Increment app version to reload fail2ban
- security: Move fail2ban default configuration to this app
- ssh, apache: Make fail2ban use systemd journald backend by default
- users: Fix unit test failures when LDAP is empty
105. FreedomBox 21.4.2 (2021-03-28)
105.1. Highlights
- firstboot: Use session to verify first boot welcome step
105.2. Other Changes
- locale: Update translations for German, Greek, Indonesian, Turkish
- manual: Update Contributing and Matrix Synapse pages
106. FreedomBox 21.4.1 (2021-03-13)
106.1. Highlights
- deluge, mldonkey, syncthing, transmission: Ensure nslcd is running before the service is started
- deluge: Fix daemon user not in freedombox-share group after installation
106.2. Other Changes
- config: Fix tests related to user home directory
- locale: Update translations for Dutch, German, Greek, Polish, Spanish, Swedish, Turkish
107. FreedomBox 21.4 (2021-02-28)
107.1. Highlights
- matrix-synapse: Auto configure STUN/TURN using coturn server
107.2. Other Changes
- coturn: Add new component for usage of coturn by other apps
- coturn: Minor refactor view to use utility to generate URIs
- coturn: Remove advanced flag, make app visible to all
- locale: Update translations for Dutch, French, German, Hungarian, Italian, Lithuanian, Norwegian Bokmål, Swedish, Turkish
- matrix-synapse: Update description to talk about TURN configuration
- plinth: Disable start rate limiting for service
- ui: Fix buttons jumping on click in snapshots page
- upgrades: Disable searx during dist-upgrade
108. FreedomBox 21.3 (2021-02-11)
108.1. Highlights
- zoph: Add new app to organize photos
- Only available in Debian testing (bullseye) due to issues in buster.
108.2. Other Changes
- locale: Update translations for Dutch, Greek, Spanish, Swedish, Turkish
- sharing: Improve shares group access description
- upgrades: Add 10 minute delay before apt update
- upgrades: Disable apt snapshots during dist upgrade
- upgrades: Only check free space bytes before dist upgrade
109. FreedomBox 21.2 (2021-02-05)
109.1. Highlights
- calibre: Fix freedombox.local inaccessible after enabling app
- matrix-synapse: Install python3-psycopg2 from backports
109.2. Other Changes
- backups: schedule: tests: Fix failures due to long test run
jsxc: Fix issues with jQuery >= 3.5.0
- locale: Update translations for Bengali, Dutch, French, German, Hungarian, Italian, Polish, Russian, Spanish, Swedish, Turkish
- mediawiki: Fix app installation process doesn't display status information
- mediawiki: Set default logo to mediawiki.png
- minidlna: Implement force upgrading from older version
- minidlna: Minor refactor of media directory handling
- plinth: Show running spinner when app installation is in progress
- radicale: Allow older 2.x release to upgrade to 3.x
- roundcube: Allow upgrade to 1.4.*
- tests: Update functional tests default config
- upgrades: Add notifications for dist upgrade
upgrades: Increment version for MatrixSynapse 1.26
110. FreedomBox 21.1 (2021-01-25)
110.1. Highlights
- backups: Add scheduled backups for each location
110.2. Other Changes
- container script: Various improvements
- locale: Update translations for Bulgarian, Chinese (Simplified), Chinese (Traditional), Czech, Danish, Dutch, French, Galician, German, Greek, Gujarati, Hindi, Hungarian, Italian, Lithuanian, Norwegian Bokmål, Persian, Polish, Portuguese, Russian, Serbian, Slovenian, Spanish, Swedish, Turkish, Ukrainian
- networks: Change connection type to a radio button
- networks: Hide deactivate/remove buttons for primary connections
- networks: Prevent unintended changes to primary connection.
- networks: Separate the delete button and color it differently
- networks: Use radio buttons for network modes
- performance: Fix web client link to Cockpit
- plinth: Fix disable daemon when service alias is provided
- setup: Enable essential apps that use firewall
- syncthing: Create LDAP group name different from system group
- syncthing: Hide unnecessary security warning
- tahoe: Disable app
- ui: New style for select all checkbox
- upgrades: Require at least 5 GB free space for dist upgrade
111. FreedomBox 21.0 (2021-01-11)
111.1. Highlights
- apache2: Allow downloads in openvpn and backups with latest browsers
111.2. Other Changes
- locale: Update translations for Dutch, French, German, Hungarian, Polish, Spanish, Swedish, Turkish
- app: Add locked flag
- app: component: Add app_id and app properties
- app: info: Move client validation to info component
- backups: Add new component for backup and restore
- backups: Don't open a new window for downloading backups
- dev-container: 'up' command: Show banner also when container is already running
- dev-container: Add command to print container IP address
- dev-container: Add subcommand to run tests
- doc: dev: Update the tutorial to reflect latest API/code
- ejabberd: functional tests: Wait until the jsxc buddy list is loaded
- functional tests: Make tests compatible with pytest-bdd v4.0
- functional-tests: Fix installation errors in install.sh script
- gitweb: Add functional tests for git-access group
- gitweb: tests: functional: Fix test failures in localized environment
- mumble: Updated mumla and removed plumble from clients list
- openvpn: Don't show running status on download profile button
- plinth: Fix daemon is enabled check when service alias is provided
- radicale: Fix backup and restore of configuration
- tests: functional: Improve creating users in tests
- transmission: Show port forwarding information
- transmission: Update description
- upgrades: Add service for dist upgrade
- upgrades: Ensure freedombox package is upgraded during dist upgrade
- upgrades: Hold tt-rss during dist upgrade, if available
- upgrades: Install python3-systemd for unattended-upgrades
upgrades: Restart FreedomBox service at end of dist-upgrade
- upgrades: Use full path to searx action script
- users: Skip action script tests if LDAP is not set up
112. FreedomBox 20.21 (2020-12-28)
112.1. Highlights
- apache: Create snake oil certificate if not exists
Fixes an issue when installing FreedomBox on Hetzner Cloud's Debian image
- calibre: Fix link to manual page
112.2. Other Changes
- deluge: Require user to be in bit-torrent group to access
- locale: Update translations for German, Hungarian, Polish, Russian, Spanish, Swedish
- security: Fix access denied for user daemon from cron
- upgrades: Allow grub-pc upgrade without reinstalling grub
- upgrades: Update searx search engines during dist upgrade
- users: Remove timeout when creating Samba user
113. FreedomBox 20.20.1 (2020-12-19)
113.1. Highlights
- config: Skip homepage test on buildd
- ui: Migrate from bootstrap 3 to bootstrap 4
113.2. Other Changes
- apache: Disallow all inline styling in sandbox settings
- gitweb: Make functional tests compatible with pytest-bdd v4.0
- javascript: Fix disabled submit buttons when navigating back to a page
- locale: Update translations for Dutch, German, Turkish
- ui: Adopt a consistent and new table style
114. FreedomBox 20.20 (2020-12-14)
114.1. Highlights
- config: Add user websites as choices for homepage config
- templates: Make toggle button responsive
114.2. Other Changes
- apache: Add app name for diagnostics
- diagnostics: Improve exception handling in app diagnostics
- diagnostics: Show app name and fallback to app id if not exist
- locale: Update translations for Dutch, French, German, Portuguese, Spanish, Swedish, Turkish
- mumble: Implement force upgrade for 1.3.*
- snapshot: Check that / is a btrfs subvolume before setup
- upgrades: Hold mumble-server during dist upgrade
115. FreedomBox 20.19 (2020-11-30)
115.1. Highlights
- openvpn: Create user group "vpn"
- upgrades: Add first boot step to run initial update
115.2. Other Changes
- bepasty: Apply translation to autogenerated comments
- locale: Update translations for Bengali, Dutch, German, Spanish
- networks: Apply translation to a tooltip
- samba: Show toggle buttons and share names
- snapshots: Translate snapshot types (field description)
- upgrades: Fix sources list for dist upgrade from buster
- upgrades: Hold freedombox package during dist upgrade
116. FreedomBox 20.18.1 (2020-11-23)
- locale: Update translations for Dutch, French, German, Italian, Norwegian Bokmål, Spanish, Swedish, Turkish
- sso: Fix regression in auth-pubtkt configuration
117. FreedomBox 20.18 (2020-11-16)
117.1. Highlights
- openvpn: Support Elliptic Curve Cryptography (ECC)
If you are already using OpenVPN, you can migrate to ECC to improve speed and security. Visit the OpenVPN page in the FreedomBox interface to perform the one-time migration, and to re-download the client profiles.
117.2. Other Changes
- dynamicdns: Handle IPv6
- locale: Update translations for Dutch, French, German, Italian, Spanish
- openvpn: Cleanup easyrsa 2 to 3 upgrade code
- openvpn: Remove explicit setup step
118. FreedomBox 20.17.1 (2020-11-07)
- ci: Fix flake8 errors
- debian: Rename source package to freedombox
- locale: Update translations for German, Italian, Turkish
- pubtkt: Fix Python format language errors
119. FreedomBox 20.17 (2020-11-02)
119.1. Highlights
- locale: Add Chinese (Traditional) translation
- mediawiki: Add action to set domain name
- upgrades: Add a setting to enable dist upgrade
119.2. Other Changes
- apache: setup uwsgi by default
- backups: i18n: Mark form success messages for translation
- locale: Update translations for Danish, French, German, Italian, Norwegian Bokmål, Polish, Russian, Spanish, Swedish, Telugu, Turkish
- mediawiki: Ensure password file is not empty
- networks: css: Make button wider in network list
- networks: i18n: Mark string for translation on delete page
- networks: i18n: Mark various strings for translation
- notifications: i18n: Mark app names and extra data for translation
- package: i18n: Mark progress status strings for translation
- upgrades: Disable the option when not able to dist upgrade
120. FreedomBox 20.16 (2020-10-19)
120.1. Highlights
- app: Add donation buttons on app pages
- updates: Eliminate delay and better status for manual upgrade
120.2. Other Changes
- calibre: Update group description to reflect 'using' app
- diagnostics: Lazy format all diagnostic test strings properly
- diagnostics: Show low system memory notifications
- help: Link to updates page when new version is available
- locale: Update translations for Chinese (Simplified), French, Greek, Norwegian Bokmål, Russian, Slovenian, Spanish, Swedish, Turkish
- notifications: Show severity level on every notification
- upgrades: Add status section showing version and upgrade status
121. FreedomBox 20.15 (2020-10-05)
121.1. Highlights
- calibre: Add new e-book library app
- mumble: configure letsencrypt component
- upgrades: Detect and upgrade to next stable release
121.2. Other Changes
- bepasty: Change default permissions to 'read'
- container: Assign virtual network interface to trusted firewall zone
- container: Handle edge cases with container update
- coturn: Don't handle certificates if not installed
- debian/control: Add sshpass as build dependency
- doc: Before fetching, drop all old to cleanup deleted pages/images
- doc: dev: Link to list of potential apps from tutorial
- dynamicdns: Drop unnecessary code to set app as enabled
- locale: Update translations for French, Norwegian Bokmål, Portuguese, Spanish, Swedish, Turkish
- module_loader, web_framework: Update console log messages
- mumble: Store and use a single domain for TLS certificate setup
- pagekite: Don't announce unconfigured kite as a valid domain
- pagekite: Don't update names module if not installed
- quassel: Don't handle certificates if not installed
- ssh: action script: Require user credentials when editing ssh keys
- tests: functional: Simplify calling the login helper
- tor: Don't check if enabled when not installed
- upgrades: Check free space before dist-upgrade
- upgrades: Extend function to check for normal dist availability
- upgrades: Set a flag so interrupted dist-upgrade can be continued
- users: Deal with admin user already existing during first boot
- users: Require admin credentials when creating or editing a user
122. FreedomBox 20.14.1 (2020-09-23)
- cockpit: Don't show home page icon to non-admin users
- locale: Update translations for French, German, Norwegian Bokmål, Russian, Turkish
minidlna: Fix typo DNLA -> DLNA
- module_loader: Load/process all essential modules before others
123. FreedomBox 20.14 (2020-09-15)
123.1. Highlights
- apache: Disable mod_status (CVE-2020-25073)
- bepasty: New app for file upload and sharing
- matrixsynapse: Allow upgrade to version 1.19
123.2. Other Changes
- apps: Remove Coquelicot
- backups: Make app available by default
- debian: Add newline to end of /var/lib/plinth/firstboot-wizard-secret
- debian: Don't show first wizard secret on command line
- debian: Temporarily revert source package rename
- diagnostics: Prevent showing running status on diagnostics menu item
- doc: Add moinmoin wiki parser
- doc: Fix wiki links in manual
- ejabberd, mumble, wireguard: Update Apple app links
- ejabberd: Use new ruamel.yaml API and allow duplicate keys
- firewall: Show port forwarding info contextually
- firewall: Show port forwarding info in tabular format
- gitweb: Add ability to change default branch
- gitweb: Fix enable auth webserver component on app init
- help, networks: Clarify i18n different contexts for "Manual"
- i18n: Mark strings missed for translation
- ikiwiki: Validate a path when deleting wiki or blog
- js: Don't show running status on buttons pulled to right
- jsxc, sharing, wireguard: Add 'Learn more...' link for help pages
- locale: Update translations for Danish, Dutch, Galician, German, Hungarian, Italian, Spanish, Swedish, Russian, Turkish
- matrixsynapse: Perform a one time conversion to new config format
- matrixsynapse: Rename Riot to Element
- matrixsynapse: Use conf.d snippets
- radicale: Remove code to handle 1.x
- radicale: Stop service during backup and restore
- samba: Hide common system partitions
- snapshots: Clarify description for disabling yearly snapshots
- ssh: Disallow managing keys for the root user
- storage: Fix expanding partitions on GPT partition tables
- upgrades, security: Update the messages describing backports
- upgrades: Add first boot step to configure backports
- upgrades: Change backports activation message wording
- upgrades: Display correct backports info for unstable
- upgrades: security: Don't use technical term 'backports' in UI
- wireguard: Remove hardcoded Windows client version
124. FreedomBox 20.13 (2020-07-18)
124.1. Highlights
- upgrades: Update apt cache before manual update
- minidlna: Do not expose statistics over public web
124.2. Other Changes
- backups: Allow remote repository usernames to start with numbers
- locale: Update translations for Chinese (Simplified), Hungarian, Kannada, Norwegian Bokmål, Spanish, Swedish
- security: Move backports notice to security page
- upgrades: Add button to activate backports if needed for current release
- debian: Rename source package from plinth to freedombox
125. FreedomBox 20.12.1 (2020-07-05)
- cfg, frontpage: Ignore errors while reading config and shortcuts
- locale: Update translations for French, German, and Norwegian Bokmål
126. FreedomBox 20.12 (2020-06-29)
126.1. Highlights
- apt: Recover from errors before installing apps or updating system
- apache: Add strict content security policy, sandbox and other security headers
- storage: Allow ejecting SATA disks
- configuration: Allow changes using .d drop-in files
126.2. Other Changes
- configuration: Move default configuration into source code
- configuration: Read from multiple locations in /etc/ and /usr/share/
- debian: Add ssl-cert and nscd as proper dependencies
- frontpage: Allow adding shotcuts using .d drop-in files
- frontpage: Read shortcuts from multiple locations in /etc/, /usr/share and /var/lib
- locale: Update translations for Czech, Danish, French, German, Russian, Spanish, Swedish, Telugu, Turkish
- storage: Automount system disks without partition table but ignore all loopback devices
- storage: Allow ejecting SATA disks
- storage: Show only physical disks and not all mount points
- upgrades: Skip enabling backports on testing and unstable
- upgrades: Show more logs
- ui: Show a spinner and disable button on form submit
127. FreedomBox 20.11 (2020-06-15)
127.1. Top Highlight
- locale: Add new translation for Arabic (Saudi Arabia)
127.2. Other Changes
- javascript: Remove use of Turbolinks library
- locale: Update translations for French, Norwegian Bokmål, German, Swedish, Polish, and Spanish
- matrixsynapse: Handle upgrade to versions 1.15.x
- upgrades: Avoid manual update interruption when upgrading freedombox package
- upgrades: Don't enable backports on Debian derivatives
128. FreedomBox 20.10 (2020-06-01)
128.1. Top Highlights
- pagekite: Fix expired certificates causing connection failures
- tor: Fix problems with running a relay
128.2. Other Changes
- backups: Add optional field - Name
- cockpit: Promote for advanced storage/firewalld/networking ops
- firewall: Don't show tun interface in internal zone warning
- firewall: Mention that internal services are available over VPN
- ikiwiki: Enable 'attachment' plugin by default
- locale: Update translations for Spanish, French, Russian, Norwegian Bokmål, Czech, Hungarian, and Greek
- minidlna: Add link to manual page
- minidlna: Fix internationalization for name of the app
- mldonkey: Add app to freedombox-share group
- openvpn: Use app toggle button and common app view
- radicale: Fix link in description to clients
- samba: Add clients information
- templates: Fix setup state check
- users: Avoid error when user's groups cannot be parsed
129. FreedomBox 20.9 (2020-05-18)
129.1. Top Highlights
- performance: Add app for system monitoring
- upgrades: Restart services and system when needed after upgrades
- System restart will happen at 02:00 local time
129.2. Other Changes
bind: Add service alias for bind9 -> named
- firewall: Reload firewalld so it works with newly installed services
- first_setup: Fix regression with logo not showing
- locale: Update translations for Norwegian Bokmål, German, Swedish, Spanish, and Russian
- mediawiki: Stop jobrunner during backup/restore
- minidlna: Stop service during backup/restore
- mumble: Stop service during backup/restore
- package: Fix error log when checking if package manager is busy
- performance: Launch the Cockpit graphs directly if possible
- quassel: Fix stopping service during backup/restore
- quassel: Use systemd sandboxing features
- samba: Change description to Network File Storage
- snapshot: Fix issues with restore and delete
- snapshot: Set as essential module
- storage: Auto-mount disks, notify of failing disks
- tor: Fix stopping service during backup/restore
130. FreedomBox 20.8 (2020-05-04)
- syncthing: Add service to freedombox-share group
- users: When adding service to sharing group, only restart if already running
- datetime: Ignore time synchronization service in containers and virtual machines
- minidlna: Make app installable inside unprivileged container
- web_server: Suppress warnings that static directories don't exist
- debian: Remove unused timer
- static: Use SVG logo during first wizard welcome step
- static: Reduce the size of the background noise image
- setup.py: Don't install/ship .po files
- static: Don't ship visual design file and unused images
- all: Update links to repository and project page
- coturn: Add app to manage Coturn TURN/STUN server
- mediawiki: Partial fix for installing on testing
- datetime: Disable diagnostics when no tests are available
- data: Print hostname and IP addresses before console login
- snapshot: Fix message when not available
- snapshot: Fix title
- mumble: Add Mumla to the list of clients
- locale: Update translations for Spanish, Telugu, Russian, German, French, and Swedish
131. FreedomBox 20.7 (2020-04-20)
- matrixsynapse: Fix initial installation and upgrade from backports
- gitweb: Improve error handling when creating repository
- locale: Update translations for French, Serbian, and Telugu
132. FreedomBox 20.6.1 (2020-04-11)
- users: Restore line of help text that was accidentally dropped
- debian: Add firmware-ath9k-htc to Recommends
- gitweb: Use proper ellipsis char when showing clone progress
- locale: Update translations for Norwegian Bokmål, German, French, Portuguese, Italian, Russian, and Serbian
133. FreedomBox 20.6 (2020-04-06)
- app: Ensure toggle buttons work independently of configuration form
- networks, monkeysphere: Make styling more specific to avoid interference
- syncthing: Update description to mention 'syncthing' group
- radicale: Support upgrade up to any 2.x version
- packages: Hold freedombox package during package installs
- users: Add component for managing users and groups
- app: Fix grammar in developer documentation string
- ikiwiki: Disable public edits of blog pages
- ikiwiki: Add moderation of blog comments
- firewalld: Support upgrade up to any 0.8.x version
- infinoted: Fix permissions of sync directory
- locale: Added Serbian translation
- locale: Update translations for Russian, French, German, Czech, Italian, Hindi, Telugu, and Spanish
134. FreedomBox 20.5.1 (2020-03-26)
- networks: Update label wording in topology form
- jsxc: Fix issue with serving static files
- debian: Separate binary packages for each language manual
- locale: Update translations for Norwegian Bokmål and German
135. FreedomBox 20.5 (2020-03-23)
- app: Fix description block in app header
- pagekite: Don't signal new domain on init if app is disabled
- pagekite: Don't attempt to notify about domain if app is disabled
- pagekite: Remove app enabled checking from getting configuration
- pagekite: On enable/disable, add/remove domain from names module
- pagekite: Fix an error message in custom services form
- matrixsynapse: Handle release of matrix-synapse 1.11
- setup: Fix regression to force-upgrade caused by Info changes
- pagekite: Don't allow non-unique custom services
- index: Reintroduce clients button in front page
- upgrades: Don't ship apt backport preferences file
- upgrades: Use internal scheduler instead of systemd timer
- shadowsocks: Change default configuration
- shadowsocks: Fix incorrect setting of state directory
- shadowsocks: When editing configuration, don't re-enable
- mediawiki: Don't allow anonymous edits
- names: Fix Local Network Domain is not shown
- shadowshocks: Fix setting configuration on Buster
- locale: Update translations for Swedish, Spanish, and French
136. FreedomBox 20.4 (2020-03-09)
- apache: Handle transition to php 7.4
- app: Fix showing app name in port forwarding information
- apps: Do not show status block if service is running
- i2p: New style app page layout
- locale: Update translations for French, Telugu, Spanish, and Swedish
- networks: Add first boot step for network topology wizard
- networks: Add form for network topology
- networks: Don't show router wizard if not behind a router
- networks, firewall: Support newer version of policykit
- networks: Fixes for networks wizards access and user experience
- networks: If topology wizard is skipped, skip router wizard too
- networks: Show router wizard before Internet connection type wizard
- plinth: Increase sqlite busy timeout from default 5s to 30s
- quassel: Fix unable to disable application without choosing a domain name
- shadowsocks: Move user settings to state directory
- storage: Directory selection form improvements
- transmission: Allow to submit download directory if it is creatable
- upgrades: Clean apt cache every week
- views: Improve template security
137. FreedomBox 20.3 (2020-02-24)
- apps: Update style for toggle button
- apps: Drop border shadow for app icon in mobile view
- apps: Show short description as secondary title
- apps: Remove css filters and glow from app icons
- cards: Remove the transition delay on hover effect
- system: Implement new style for cards
- framework: Generate secret key (existing sessions will get logged out)
- framework: Cleanup expired sessions every week
- networks: Add setting for internet connection type
- networks: Ask about internet connection type during setup
- shadowsocks: Fix shadowsocks not able to start
- jsxc: Bypass issue with stronghold to get the app working again
- monkeysphere: Fix regression with reading Apache configuration
- help: Fix attribute on download manual button
- firewall: Improve speed of some operations using DBus API
- css: Add missing license identifier on some CSS files
- deluge: Use safer method for editing configuration
- deluge: More reliable initial configuration setup
- samba: Add link to manual page
- searx: Update search engines for 0.16.0
- openvpn: Fix spelling for Tunnelblick
- bind: Show served domains
- Update translations for German, Swedish, Italian, Spanish, Norwegian Bokmål, Hungarian, Polish, and French
138. FreedomBox 20.2 (2020-02-10)
- networks: Support virtual Ethernet (veth) devices
- diagnostics: Show firewall service status
storage: Show disks if FreedomBox is running in an unprivileged container
- service: Stop service not before but after disabling it
- users: Use more precise username validation
- sso, users: Turn off autocapitalization on the username field
- help: Fix anchor hidden under navbar
- searx: Fix installation issue for 0.16.0
- firewall: Show Run Diagnostics button in app
- glib: Introduce method to schedule an operation at regular intervals
- notification: Show a drop down from main navbar for notifications
- storage: Show low disk space warning using notifications API
upgrades: Show notification when FreedomBox is updated
- security: Add Sandbox Coverage to report page
- matrixsynapse: Enable systemd sandboxing
- locale: Update translations for Telugu, French, Norwegian Bokmål, German, Spanish, and Swedish
139. FreedomBox 20.1 (2020-01-27)
- deluge: Allow to set a download directory
- deluge: Fix installation failure on slow machine
- storage: Make external disk mounts accessible to other users
- gitweb: Add link to the manual page
- style: Fix incorrect margins for containers in mobile view
- style: Fix responsiveness for app header
- network: Fix activating connections that don't have real devices
wireguard: Add WireGuard VPN app
- networks: Add router configuration page
- networks: Add first boot step for router config helper
- bind: Enable sandboxing for bind service
- locale: Updated translations for Dutch, Norwegian Bokmål, German, Spanish, Swedish, French, and Greek
140. FreedomBox 20.0 (2020-01-13)
- samba: Improve speed of actions
- deluge: Manage deluged service and connect automatically from web interface
- openvpn: Enable support for communication among all clients
- storage: Ignore errors resizing partition during initial setup
- storage: Make partition resizing work with parted 3.3
- debian: Add powermgmt-base as recommended package
- openvpn: Enable IPv6 for server and client outside the tunnel
- networks: Fix crashing when accessing network manager D-Bus API
- mediawiki: Use a mobile-friendly skin by default
- mediawiki: Allow admin to set default skin
- matrixsynapse: Allow upgrade to 1.8.*
- security: Add explanation of sandboxing
- Update translations for Greek, German, Swedish, Hungarian, Norwegian Bokmål, and French
141. FreedomBox 19.24 (2019-12-30)
app: Fix JavaScript doesn't run on first visit
- samba: Add private shares
- firewall: Support upgrading firewalld to 0.8
- deluge: Add systemd sandboxing features
- infinoted: Add systemd sandboxing features
- storage: Add systemd sandboxing features to udiskie service
- upgrades: Add systemd sandboxing features to repository setup service
- security: List whether each app is sandboxed
- mediawiki: Avoid delay in update script
- diagnostics: Use new component based API for all diagnostic tests
- minidlna: Fix showing clients information
- mediawiki: Fix problem with session cache failing logins
- locale: Update translations for French, German, Swedish, Greek, Hungarian, Norwegian Bokmål, and Dutch
142. FreedomBox 19.23 (2019-12-16)
- minidlna: New app for MiniDLNA (Simple Media Server)
- apps: Show app icons in app pages
- apps: Implement responsive layout for app pages
- samba: Recursively set open share directory permissions
- transmission: Add directory selection form
mumble: Add option to set SuperUser password
- cockpit: Extend apps description with access info
- cockpit: Add list of valid urls to access the app
- Update translations for French, German, Spanish, Portuguese, and Swedish
143. FreedomBox 19.22 (2019-12-02)
- samba: Add new app for Samba file sharing
- pagekite: Remove tabs in the configuration page
- openvpn: Fix text with manual link
- pagekite: Show existing services only if there are any
- pagekite: Move Custom Services under Configuration
- pagekite: Use the new app toggle button
- openvpn: Add client apps
- backups: Fix title not appearing
- diagnostics: Don't run on disabled modules
- apps: Remove link to webapps in app descriptions
- interface: Fix error with app toggle input
- templates: Add toolbar for apps
- toolbar: Move diagnostics button into dropdown menu
- ssh: Fix Avahi SFTP service file
- diagnostics: Fix IPv6 failures
- matrix-synapse: Fix installation of 1.5 from buster-backports
- app: Fix javascript constant redeclaration error
- ikiwiki: Move the create button to manage section
- gitweb: Move create button into manage section
- networks: Move actions button into connection section
- users: Move create button into users section
- locale: Update translations for French, German, and Swedish
144. FreedomBox 19.21 (2019-11-18)
- gitweb: Allow to import from a remote repository
- interface: Disable turbolinks on links that don't point to /plinth/...
- backups: Show proper error when SSH server is not reachable
- tor: Rename "Hidden Service" to "Onion Service"
- ejabberd: Handle case where domain name is not set
- tahoe: Mark Tahoe-LAFS as an advanced app
- searx: Set safe_search to Moderate by default
- backups: Make verify ssh host page string translatable
- backups: Simplify SSH fingerprint verification command
- doc: Fix unavailability of manual images
- tor: Fix port diagnostics by correcting port data type
- tor: Expect obfs service to be also available on IPv6
tor: Listen on IPv6 for OrPort
- clients: implement launch button feature
- apps: Implement toggle button in apps pages
- Update translations for German, Hungarian, Swedish, Norwegian Bokmål, French, Polish
145. FreedomBox 19.20 (2019-11-04)
- doc: Add Spanish manual
- ssh: Add option to disable password authentication
- sharing: Fix wrong links on Apache2 directory index page
- gitweb: Set correct access rights after enabling application
- gitweb: Fix links leading to blank page
- gitweb: Set proper access after restoration of a backup
- snapshot: Sort snapshot list from newest to oldest
- infinoted: Add missing manual page link
- backups: Fix typo
- Update translations for German, Spanish, Swedish, Czech, French, Norwegian Bokmål, Hungarian
146. FreedomBox 19.19 (2019-10-21)
- gitweb: New app for simple git hosting
- ikiwiki: Allow full Unicode text in wiki/blog title names
- users: reload Apache2 to flush LDAP cache after user operations
- ssh: Show server fingerprints in SSH page
- frontpage: Show public shortcuts to all users regardless of group
- ikiwiki: Remove extra create button when no wiki/blog is present
- quassel: Add Let's Encrypt component for certificates
- Update translations for Czech, French, Bulgarian, Dutch, German, and Norwegian Bokmål
147. FreedomBox 19.18 (2019-10-07)
- diagnostics: Ensure that exceptions are reported as failures
- users: Rearrange UI to match with other apps
- upgrades, ikiwiki, networks, backups: Replace page tabs with buttons
- dynamicdns, i2p, pagekite, snapshot: Cleanup page templates
- deluge: Support deluge 2 by starting it properly
- minetest: Remove mod-torches no longer available in testing/unstable
- security: Add past vulnerabilities count, move report to new page
- Update translations for Spanish, Norwegian Bokmål, German
148. FreedomBox 19.17 (2019-09-23)
- firstboot: Add new help menu to firstboot navbar
- firstboot: Hide left menu during first boot as intended
- Update translations for Chinese (Simplified) and Czech
- Fix tests for letsencrypt and tor
149. FreedomBox 19.16 (2019-09-09)
- backups: Allow adding backup repositories on multiple disks
- help: Add buttons for contribute, support, and feedback
- action_utils: Workaround problem with setting debconf answers
- views: Fix failure in redirecting from language selection page
- manual: Move PDF download link to HTML manual page
- help: Convert help icon in the navbar to dropdown
- ejabberd: Fix listen port configuration for ejabberd 19.x
- cockpit, ejabberd: Prevent restart on freedombox startup
- ejabberd: Perform host/domain name operations only when installed
- logging: Improve formatting and reduce noise
- translations: Update Hungarian, German, Italian, French, and Norwegian Bokmål
150. FreedomBox 19.15 (2019-08-26)
- security: Hide vulnerability table by default
- names: Perform better layout of domain names table on small screens
- cockpit: Apply domain name changes immediately
- ejabberd: Prevent processing empty domain name
- config: Send hostname change signal only after fully processing it
- letsencrypt: Don't try to obtain certificates for .local domains
- avahi: Expose .local domain as a proper domain
- cockpit: Make essential and install by default
- tt-rss: Force upgrade to 18.12-1.1 and beyond
- updates: Allow matrix-synapse 1.3 to be installed for buster users
- javascript: Don't resubmit when refreshing the page
- storage: Fix regression with restoring backups with storage
- matrix-synapse: Use recommended reverse proxy configuration
- Update translations for German, Hungarian, and Norwegian Bokmål
151. FreedomBox 19.14 (2019-08-12)
- storage: Handle all device paths during eject
- storage: Fix incorrect internationalization when throwing an error
- upgrades: Use collapsible-button style for logs
- firewall: Allow automatic upgrade to 0.7.x
- upgrades: Handle release info change
- frontpage: Fix regression with loading custom shortcuts
- names: Add dynamic domain name
- names: Add button to configure each type of name
- names: Update page layout for clearer presentation
- names: Introduce new API for domain name handling
- api: Fix regression with listing only enabled apps in mobile app
- Update translations for Czech, Hungarian, French, Chinese (Simplified), Turkish, Polish, and Norwegian Bokmål
152. FreedomBox 19.13 (2019-07-29)
- backups: Make UI more consistent with other apps
- backups: Make backup location tables collapsible
- Updated translations for Chinese (Simplified), German, and Norwegian Bokmål
- help: Show security notice when backports are in use
- security: Show vulnerability counts
153. FreedomBox 19.12 (2019-07-22)
- sharing: Allow directories to be publicly shared
- backups: Add option to select/deselect all apps for backup or restore
dbus: Allow plinth user to own FreedomBox DBus service
- letsencrypt: Simplify renewal hooks implementation
- cockpit: Don't handle domains if app is not installed
- dynamicdns: Send domain added signal properly during init
- ejabberd: Backup and restore TLS certificates
- Started new Galician translation on Weblate
- Updated translations for Czech, Norwegian Bokmål, Hungarian, Spanish, Telugu, Chinese (Simplified), German, Turkish, and Russian
154. FreedomBox 19.2.2 (2019-07-17)
This release does not contain any functional changes, but fixes test failures when building the package.
155. FreedomBox 19.2.1 (2019-07-09)
This is a bugfix release for 19.2.
dbus: Allow plinth user to own FreedomBox DBus service
156. FreedomBox 19.11 (2019-07-08)
- backups: Fixes to issues while adding SSH remotes:
- Improve UX of adding ssh remote
- Avoid creating duplicate SSH remotes
- Fix issue with repository not being initialized
- Verify SSH hostkey before mounting
- Allow SSH directory paths with : in them
- Require passphrase for encryption in add repository form
- Don't send passphrase on the command line
- Un-mount SSH repositories before deleting them
- matrixsynapse: Fix missing translation mark
- Started new Greek translation on Weblate
- Updated translations for Chinese (Simplified), Hungarian, Spanish, and Russian
157. FreedomBox 19.10 (2019-06-24)
- syncthing: Open firewall ports for listening and discovery
- radicale: Workaround issue with creating log directory
- Update translations for Turkish, German, Czech, Norwegian Bokmål, and Portuguese
- Introduce components for firewall, webserver, uwsgi, and daemons
158. FreedomBox 19.9 (2019-06-10)
- config: Add option to show advanced apps, which are hidden by default
- monkeysphere: Hide by default
- searx: Add option to allow public access to the application
- Introduce component architecture for apps, with components for menus and shortcuts
- Start new translation for Bulgarian
- Update translations for Turkish and Norwegian Bokmål
159. FreedomBox 19.8 (2019-05-27)
- Switch to using SVG icons for all apps.
- Updated translations for Czech, Norwegian Bokmål, Hungarian, German, Turkish, and Spanish.
160. FreedomBox 19.7 (2019-05-13)
- i2p: Include default favorites.
- Separate enabled and disabled apps.
- Display port forwarding info for apps.
- Added Slovenian translation.
- Updated translations for Dutch, German, Hungarian, Norwegian Bokmål, Polish, Portuguese, Telugu.
161. FreedomBox 19.6 (2019-04-29)
- i2p: Enable new application for I2P Anonymity Network.
- Updated translations for Czech, German, Norwegian Bokmål, and Turkish.
- letsencrypt: Provide link to configure domain if not configured.
- firewall: Show port numbers and types.
162. FreedomBox 19.5 (2019-04-15)
- storage: Use more reliable method to list disks and disk space usage.
- Updated translations for Russian and German.
163. FreedomBox 19.4 (2019-04-01)
- clients: Open web app in a new browser tab
- matrix-synapse: Change client diagnostics url
- minetest: Fix duplicate domain names being displayed in UI
- storage: Do not show an eject button on /boot partitions
- letsencrypt: Call letsencrypt manage_hooks with correct arguments
- dynamicdns: Install module by default
- storage: Don't check type of the disk for / and /boot
- storage: Don't log error when checking if partition is expandable
- Updated translations for Norwegian Bokmål, Czech, German, Hungarian, Spanish, German, and Russian.
164. FreedomBox 19.3 (2019-03-18)
- UI: Move tabs below descriptions.
- firewall: Style heading
- names: Add description
- pagekite: Change heading text
- ikiwiki: Consistent styling for delete warning page
- main: Show service version in logs
- setup: Organize data files into various apps
- Updated translations for Czech, Hungarian, Norwegian Bokmål, Spanish, German, French, Italian, and Turkish.
165. FreedomBox 19.2 (2019-03-02)
- config: Fix Ikiwiki entries not showing up as default apps
- config: Migrate default app configuration to new conf file
- config: Rename Default App to Webserver Home Page
- config: Add option to use Apache's default home page as home page
- config: Fix error when setting JSXC as the home page
- Disable Coquelicot for Buster release
- matrix-synapse: Fix LDAP login issue
- config: Revert changes in freedombox.conf to avoid conffile prompt
- openvpn: Migration from easy-rsa 2 to 3 for existing installations
- tor: Use fixed 9001 port for relaying
- package: Implement identifying packages that need conffile prompts
- setup: Trigger force upgrade for app that implement it
- bind: Handle conffile prompt during upgrade
- apache: Pre-enable necessary apache modules
- apache: Use cgid module instead of cgi
- openvpn: Make frontpage shortcut appear after an upgrade
- openvpn: Work around firewalld bug 919517
- firewalld: Implement upgrading from 0.4.x to 0.6.x
- ttrss: Implement upgrade from 17.4 to 18.12
- radicale: Add description of web interface
- ttrss: Add backup support
- security: Migrate access config to new file
- Updated translations for Czech, Hungarian, Norwegian Bokmål, Spanish, German, Telugu.
166. FreedomBox 19.1 (2019-02-14)
- radicale: Increment module version to trigger upgrade handling
- radicale: Remove obsolete diagnostics
- radicale: Fix server URLs in client info
- Updated translations for Czech, Norwegian Bokmål, and Spanish.
- setup: Add option to handle configuration prompts during install
- radicale: Simplify upgrading to newer packages
- matrixsynapse: Use Let's Encrypt certificates
167. FreedomBox 19.0 (2019-02-09)
- mldonkey: Add some more clients to the module page
- mldonkey: Add to the description the three available front-ends
- monkeysphere: Fix handling of multiple domains and keys
- monkeysphere: Fix regression with reading new apache domain config
- apache: Switch to mod_ssl from mod_gnutls
- mldonkey: Enable app
- upgrades: Fix priority for buster-backports version
- upgrades: Fix premature adding of buster-backports sources
- Updated translations for Czech, German, and Spanish
- Switched to a new version number scheme: YY.N
- YY is the year of release.
- N is the release number within that year.
168. Version 0.49.1 (2019-02-07)
- ui: Fix regression with configure button in home page.
- backups: Rename 'Abort' buttons to 'Cancel'.
- backups: Use icon for add repository button.
- backups: Move subsubmenu below description.
- backups: Add title and description to other pages.
- backups: Add link to manual page.
- backups: Fix styling for upload size warning.
- backups: Increase timeout for SSH operations to 30 seconds.
- letsencrypt: UI: Fix checkbox disabling.
- datetime: Switch from chrony to systemd-timesyncd.
- Updated translations for Czech, Norwegian Bokmål, and Spanish.
169. Version 0.49.0 (2019-02-05)
- security: Update javascript for Content Security Policy.
- help: Use correct package to determine available version.
- repro: Disable app due to issues with Debian package.
- ui: Fix regression with card icon style in front page.
- js: Support full librejs compatibility.
- js: Remove javascript license link from footer.
- backups: Remove incorrectly set buffer size during download.
- backups: Fix incomplete download archives.
- backups: Improve performance of backup download.
- radicale: Handle migration from 1.x to 2.x.
- datetime: Switch from ntp to chrony.
- backports: Add buster-backports to apt sources list.
- Updated translations for Czech, Norwegian Bokmål, and Hungarian.
170. Version 0.48.0 (2019-01-28)
- Updated translations for Czech, Hungarian, German, and Norwegian Bokmål.
- UI improvements:
- Fix top margin for content containers.
- Fix setting width of card-list at various page sizes.
- Show help nav item text when navbar is collapsed.
- Hide restart/shutdown items when navbar is collapsed.
- Compact pages on extra small screen sizes.
- Backups improvements:
- Add backup/restore support for syncthing and openvpn.
- Upgrade apps before restoring them
- Fix showing not-installed apps in create backup page
- Automatically install required apps before restore.
- Add a loader to the restore button to indicate progress.
- Serve default favicon for apps that don't provide one.
- radicale: Fix issue with configuration changes not applying.
- storage: Fix false error message in log when visiting home page.
- infinoted: Handle timeout issue when stopping daemon during setup.
- matrix-synapse: Fix startup error caused by bind_address setting.
- radicale: Avoid changes to conffile for radicale 2.x.
- help: Fix showing status logs when an error occurs.
- fail2ban: Enable bans for apache auth failures.
- mldonkey: Initial work on new module for the eDonkey network.
- Not available yet, due to bug in package.
171. Version 0.47.0 (2019-01-14)
- Show Gujarati in the list of languages.
- Replace glyphicons with forkawesome icons.
- Snapshots:
- Change configuration to avoid filling up disk.
- Handle "Config in use" error.
- Update descriptions and configuration options.
- Firewall: Fix issue with transition from iptables.
- Security: Switch to Argon2 password hash.
- Cockpit: Add link to manual page and update description.
- Radicale: Add initial support for radicale 2.x.
- Setup:
- Handle showing setup page after app completes installation.
- Optimize installation in-progress checks and refresh time.
172. Version 0.46.0 (2018-12-31)
- Updated translations for Czech, German, Spanish, Ukrainian, and Norwegian Bokmål.
- Use systemd journal for logging.
- Rename plinth binary package to "freedombox", and merge freedombox-setup package into it.
173. Version 0.45.0 (2018-12-17)
- Storage: Merge list of removable media into existing table.
- Backups: Allow remote backups to SSH servers using sshfs.
- Backups: Removed asking for backup archive name.
- Automatically handle future versions of PHP.
- Updated translations for Hungarian, Czech, Spanish, Chinese (Simplified), Italian, Norwegian Bokmål, French, and German.
174. Version 0.44.0 (2018-12-03)
- UI: Add card style and gray noise background to apps pages.
- UI: Fix distortion of the client apps buttons.
- ejabberd: Handle BOSH port change from TCP 5280 to 5443.
- Minetest: Update mods list to available Debian packages.
- Firewall: Use nftables instead of iptables.
- Snapshots: Fix default snapshot listing.
- Snapshots: Show description above either tab.
- Snapshots: Allow snapshots to be selected for deletion.
- Translations: Updated Czech, Norwegian Bokmål, Spanish, German, and Portuguese.
175. Version 0.43.0 (2018-11-19)
- Backups improvements:
- Allow backups to be downloaded directly, without export step.
- Restore directly from uploaded backup.
- Avoid error for apps with no data to backup.
- Show free disk space on upload and restore page.
- Do not limit maximum upload size.
- openvpn: Migrate to easy-rsa 3 and fix setup issues.
- Make single sign-on tickets valid for 12 hours.
- Use consistent terminology for updates.
- Updated translations for Czech and Portuguese.
176. Version 0.42.0 (2018-11-05)
- Fix wrong color in mobile menu
- snapshot: Fix broken snapshot management after snapper update
- Enable backup/restore for tor, upgrades, monkeysphere, letsencrypt, tahoe
- monkeysphere: Handle importing new OpenSSH format keys
- udiskie: unmount drive as superuser
- Updated translations for Telugu, Indonesian, and Italian
177. Version 0.41.0 (2018-10-22)
- Enable backup/restore for datetime, deluge, avahi, backups, bind, security, snapshot, ssh, firewall, diagnostics, names, power, and storage.
- snapshot: Fix issue with setting configuration.
- backups: Fix backup archives ownership issue.
- backups: Fix issue with showing exports from disks without labels.
- backups: Don't rely on disk labels during export/restore.
- backups: Fix downloading extracted archive files.
- Updated translations for Norwegian Bokmål, French, Russian, and Spanish.
178. Version 0.40.0 (2018-10-08)
- Backups
- Enable backup/restore for mumble, privoxy, roundcube, searx, jsxc, coquelicot, transmission, quassel, shadowsocks, sharing, pagekite, and cockpit.
- Allow backup archives to be downloaded/uploaded through browser.
- mediawiki: Backup/restore settings as well as data.
- User Interface
- Change card text style and position.
- Change maximum cards per row.
- Add tint effect on card icons under "Apps".
- mediawiki: Run update script for 1.31 upgrade.
- customization: Show custom shortcuts on frontpage.
- Updated translations for Norwegian Bokmål, Portuguese, Spanish, Czech, German, French, and Italian.
179. Version 0.39.0 (2018-09-24)
- Updated translations for Hungarian and Norwegian Bokmål.
- Merge Removable Media (udiskie) into Storage module.
- Add Backups module for backing up apps data.
180. Version 0.38.0 (2018-09-10)
mediawiki: Enable SVG support for MediaWiki
- upgrades: Clean up old kernel packages during automatic upgrades
- Make the progress bar at the top of the page more visible.
- Updated translations for Norwegian Bokmål, Czech, Russian, German, Hungarian, and Spanish.
181. Version 0.37.0 (2018-08-27)
- Updated translations for Czech, Norwegian Bokmål, Russian, Spanish, Hungarian, and Dutch.
- install: Use Post/Response/Get pattern for reloads.
182. Version 0.36.0 (2018-08-13)
- Updated translations for Hindi, Spanish, Russian, Telugu, German, Hungarian, Czech, and French
- ejabberd: Remove deprecated settings from already existing config files
- mediawiki: Fix issue with re-installation
- mediawiki: Enable Instant Commons
- mediawiki: Fix images throwing 403s
turbolinks: Reload page using JavaScript
- Add Lato woff2 fonts
- Disable launch button for web client when not installed
183. Version 0.35.0 (2018-07-30)
configuration: Add an option to set a default app for FreedomBox. The root URL path (https://domainname/) will redirect to the selected app.
ejabberd: Remove deprecated iqdisc setting. To apply this fix, disable and then re-enable the Message Archive Management setting.
- ejabberd: Replace logo with original version.
mediawiki: Enable short URLs, which look like https://domainname/mediawiki/ArticleName.
- radicale: Clarify description for shared calendar/addressbook.
- storage: Handle mount points with spaces.
- udiskie: Add button to eject drives.
- udiskie: Also show read-only filesystems.
- udiskie: Remove internal networks warning.
- udiskie: Show special message when no storage device available.
- Add turbolinks library for smoother navigation.
- Removed extra text from icons for mediawiki, radicale, and tahoe-lafs.
- Updated translations for Russian, Spanish, Dutch, Hungarian, Hindi, Italian, Telugu, German, and Norwegian Bokmål.
184. Version 0.34.0 (2018-07-16)
- Prompt for secret during firstboot welcome
(Does not apply to downloadable FreedomBox images, but only when installed using freedombox-setup package.)
- Updated translations for Italian, Dutch, Hindi, Hungarian
185. Version 0.33.1 (2018-07-04)
- Fix issue where editing a user would remove them from admin group
- Updated translations for Hungarian, Czech, Spanish, Russian, Hindi
186. Version 0.33.0 (2018-07-02)
- Updated translations for Hungarian, Norwegian Bokmål, Spanish, Russian, Czech, Hindi, Dutch, Italian
- firewall: Display information that a service is internal only
- users: Don't show Create User link to non-admin users
- users: Redirect to users list on successful user creation
- packages: Show button to refresh package lists when a package is not available for install
- Only show front page shortcuts that a user is allowed to access
- Restrict removal of last admin user
- Use logos instead of icons in the apps page
- udiskie: New module for automatic mounting of removable media
187. Version 0.32.0 (2018-06-18)
- Apply new card based design
- Fix client info table size and flickering
- first-setup: Automatically expand root partition
- mediawiki: Enable image uploads
- mediawiki: Make private mode and public registrations mutually exclusive
- mediawiki: Hide frontpage shortcut when private mode is enabled
- Updated translations for Norwegian Bokmål, Czech, Spanish, Russian, Hindi, Telugu, Italian, Dutch, German, and Hungarian
188. Version 0.31.0 (2018-06-04)
- Updated translations for Czech, Spanish, Russian, German, Italian, Hindi, Telugu, and Norwegian Bokmål
- mediawiki: Added private mode option
- users: Fix user permissions not being saved
- users: internationalize a string
- mediawiki: Run update script for 1.30 upgrade
- shortcuts: Fix urls for ikiwiki shortcuts
189. Version 0.30.0 (2018-05-21)
- Updated translations for Russian, Italian, Norwegian Bokmål, Hungarian, and Hindi
- setup: Remove unavailable as a state in setup_helper
190. Version 0.29.1 (2018-05-08)
- security: Fix issue with Plinth locked out from sudo
- Updated translations for Czech and Spanish
191. Version 0.29.0 (2018-05-07)
- security: Allow console login access to user plinth
- Add an option to enable/disable public registrations in mediawiki
- tt-rss: Skip the check for SELF_URL_PATH
- searx: Fix issue with uwsgi crashing
- Updated translations for Czech, Spanish, German, Norwegian Bokmål, and Italian
192. Version 0.28.0 (2018-04-23)
- setup: disable install button for currently unavailable apps
- Add locale for Lithuanian (lt)
- Translation updates for Italian, Czech, Russian, Spanish, German, Norwegian Bokmål, Telugu, and Dutch
193. Version 0.27.0 (2018-04-09)
- middleware: Skip 'installed' message for essential apps
- users: Fix admin group appearing twice in permissions
- apps: Fix app names and short descriptions not being translated
- snapshots: Move manual page link to the index page
- UI: Fix progress bar not appearing
- snapshots: Fix for permissions issue when updating configuration
- snapshots: Add option to enable/disable software installation snapshots
- Translation updates for Italian, Czech, Russian, Spanish, Dutch, German, Norwegian Bokmål, and Ukrainian
194. Version 0.26.0 (2018-03-26)
- snapshots: Update description
- searx: Rewrite url from /searx to /searx/
- manual: Link to manual from each service
- Workaround security issues in django-axes
- apache: Only regenerate snake oil cert when needed
- apache: Explicitly enable the latest version of PHP module
- apache: Increase module version number to fix php7.2
- Update translations for Chinese (Simplified), Russian, Czech, German, Norwegian Bokmål, Hungarian, Spanish, and Italian
195. Version 0.25.0 (2018-03-12)
- sharing: Add app for sharing disk folders.
- ttrss: Update list of client apps.
- infinoted: Allow setup to recover after timeout issue.
- snapshots: Add configuration tab with settings for time-based snapshots.
196. Plinth v0.24.0 (2018-02-26)
- Add file-sharing application Coquelicot.
- Add metasearch engine application Searx.
- Add locale for Hungarian (hu).
- mediawiki: Allow shortcut to be publicly visible on front page.
- clients: Add and correct Client Apps.
- locale: Preferred language can be set in each user's profile.
- locale: Anonymous users can select preferred language.
- config: Remove language selection from config page.
- matrixsynapse: Fix mail attribute for ldap login.
197. Plinth v0.23.0 (2018-02-12)
- snapshots: Modify configurations to reduce disk usage.
- snapshots: Skip currently active snapshot when deleting all snapshots.
- jsxc: Use consistent url format.
- sso: Increase timeout to 60 minutes.
- theme: Change font from Helvetica to Lato.
- Translation updates for Czech, German, Gujarati, and Telugu.
198. Plinth v0.22.0 (2018-01-30)
- matrix-synapse: Make sure configuration file does not get corrupted.
- tor: Show enabled status properly.
- first_setup: Fix not showing admin user creation step.
Migrate from GitHub to Salsa
Migrate from CirceCI to GitLab CI on Salsa.
- Translation updates for Czech, Dutch, Gujarati, Hindi, Russian and Telugu.
- Started new translation for Ukrainian.
199. Plinth v0.21.0 (2018-01-15)
- navigation bar: Change label from 'Configuration' to 'System'.
- storage: Removed beta warning for expanding partition.
- groups: Consistently show available user groups, even before applications are installed.
- syncthing: Restrict administration to users in "syncthing" group.
- help: Show menu on smaller screens also.
- diagnostics: Enable the "Run Diagnostics" button when applications are enabled but not running.
200. Plinth v0.20.0 (2018-01-01)
- bind: Don't use forwarders by default
- ejabberd: Remove redundant button Client Apps
- mediawiki: Add wiki application
- users: Make sure first run actually works
- bind: Add information about current utility
201. Plinth v0.19.0 (2017-12-18)
- ejabberd: Use dynamic reload instead of restart when changing configuration.
- manual: Make manual available as a PDF download.
- minetest: Show domain information for users to connect to minetest.
- snapshots: Add button to delete all snapshots.
- snapshots: Add option to enable/disable automatic timeline snapshots.
- users: Add groups for bit-torrent and feed-reader, available when these applications are installed.
202. Plinth v0.18.0 (2017-12-04)
- Add Shadowsocks client with socks5 proxy.
- Fix SSO regressions and conflict with captcha.
- transmission: Fix sso not being enabled on upgrade.
avahi: Add service for FreedomBox discovery.
- Add client information for modules.
203. Plinth v0.17.0 (2017-11-20)
- transmission: Enable Single Sign On.
- cockpit: Add short description to frontpage shortcut.
- fail2ban: Fix spelling and sentence structure.
204. Plinth v0.16.0 (2017-11-06)
204.1. Added
- Add mobile, web and desktop client info for modules.
Enable django SecurityMiddleware to improve security ratings.
- cockpit: New module for server administration and web terminal.
204.2. Fixed
- letsencrypt: Fix internal server error when obtaining a certificate.
- ejabberd: Fix LDAP server entry in config file during setup.
- jsxc: Fix outdated URLs for connecting to local ejabberd server.
205. Plinth v0.15.3 (2017-10-20)
205.1. Changed
- Rename Disks to Storage.
- Rename Snapshot to Storage Snapshots.
- tt-rss: Enable API access by default.
- Allow access to Plinth from outside the LAN.
- matrix-synapse: Disable public registration by default.
- power: Merge actions into the user dropdown.
205.2. Added
- Add locales for Kannada (kn) and for Bengali (bn).
- ejabberd: Use Let's Encrypt certificate, also across renewals.
- matrix-synapse: Add enable/disable public registrations.
- Add captcha validation on 3 failed attempts.
- matrix-synapse: Enable LDAP integration.
- letsencrypt: Automatically obtain and revoke SSL certificates.
205.3. Fixed
- Fix front page label names.
- Fix vertical alignment of shortcut icons.
- storage: Fix issue with locales that use other decimal separators.
- Make tt-rss api accessible using Apache basic auth.
- letsencrypt: Handle case where current domain is empty.
- Handle both admin and non-admin user names in update user template.
206. Plinth v0.15.2 (2017-09-24)
206.1. Added
- letsencrypt: Show more info on cert validity status.
- letsencrypt: Add option to delete certificates.
- letsencrypt: Add option to let Plinth manage certbot's renewal hooks.
- power: Warn if a package manager is running before shutdown/restart.
- security: Install and manage fail2ban.
- names: Include domain and services from dynamicdns.
- disks: Add low disk space warning to system and disks page.
- ssh: New application to manage SSH server.
- Add api module to get enabled services and access info.
- Add Django password validators.
- ejabberd, ikiwiki, ttrss: Add user login descriptions.
206.2. Removed
- diaspora: Disable for this release due to issues affecting package.
- Remove help from navbar before firstboot complete.
206.3. Fixed
- i18n: Don't use backslash-newline for wrapping long lines.
- radicale: Update link to documentation.
- sso: Upgrade crypto to 4096-bit RSA and SHA-512.
- Users: Allow non-admin users to log out.
206.4. Changed
- letsencrypt: Make Let's Encrypt an essential module.
- UI: Make apps and configure pages responsive on small screens.
- Make help accessible for logged-in non-admin users.
207. Plinth v0.15.0 (2017-07-01)
- Added Tahoe-LAFS module for distributed file storage.
- Added Diaspora* module for federated social networking.
- Currently only available in "contrib" repository.
- New Locales for Czech (cs) and Tamil (ta).
- Added SSO using auth_pubtkt for Syncthing, TT-RSS, and the Repro admin panel.
- If you are logged in to Plinth, you will be automatically logged in to these web apps.
- ejabberd: Added option to enable/disable Message Archive Management.
- help: Added Debian release name to about page.
- firstboot: De-bloat first welcome screen.
- Pinned footer to the bottom of the viewport.
- disks: Restrict precision of reported available space on root partition.
- diagnostics: Disable button if app/service is not running.
- help: Only show help pages if user is logged in.
- navbar: Moved logout to user drop-down and added a new power drop-down.
- disks: Show disabled partition resize option if no space is available.
- Added line break to titles to fix frontpage layout.
- syncthing: Fixed typos and clarity in description.
- firewall: Fix 500 error when firewalld is not running.
- setup: Disable install/upgrade when dpkg/apt is running.
- disks: Use information from lsblk for more accuracy.
- datetime: Show timezone properly when it not in expected list.
208. Plinth v0.14.0 (2017-04)
- tor: Added option to use upstream bridges.
- openvpn: Added shortcut to front page, shown only when logged-in.
- openvpn: Non-admin users can download their own profiles.
- Added new locales for Hindi (hi) and Gujarati (gu).
- Added Syncthing module for file synchronization.
- Added Matrix Synapse as chat server with groups, audio and video.
- Require admin access for all system configuration pages.
- Changed appearance of topbar and footer.
- openvpn: Regenerate user key or certificate if empty.
- disks: Workaround issue in parted during resize.
209. Plinth v0.13.1 (2017-01-22)
- Two new apps were added:
- Gobby Server (infinoted) for collaborative editing of text documents
- Domain Name Server (BIND), in system menu
Added JavaScript license web labels to provide partial support for LibreJS.
- Added basic configuration form for Minetest server.
Added indicator to Help->About page if new Plinth version is available.
- Show app logos on front page instead of generic icons.
- Prevent anonymous users from accessing setup pages.
- Split Chat Server (XMPP) app into Chat Server (ejabberd) and Chat Client (jsxc).
210. Plinth v0.12.0 (2016-12-08)
- Open up RTP ports in the firewall for repro (SIP server).
- Front page shortcuts for services show a Configure button in the details box for logged-in users.
- Add mods packages to be installed with Minetest server.
- Fix issue with reading Dynamic DNS status as non-root user.
- After the hostname is changed, ensure the domain name is still set correctly.
- Allow the domain name to be cleared, and properly set the configuration in this case.
- On the Certificates (Let's Encrypt) page, show a more informative message when no domains are configured.
- On the Chat Server (XMPP) page, show more clearly if domain is not set.
- Apps that require login will not be shown on the front page, unless the user is logged in.
- Show status block for News Feed Reader (Tiny Tiny RSS).
- Change appearance of front page with larger icons and repositioned text.
- Firewall page only lists services that have been setup. The port lists are collapsible under each service.
- Support configuring IPv6 networks.
- Make it less likely to accidentally delete the only Plinth user.
- Updated to work with JSXC 3.0.0 (XMPP web client).
211. Plinth v0.11.0 (2016-09-29)
- Added loading icon for additional busy operations.
- Added basic front page with shortcuts to web apps, and information about enabled services.
- networks: Add batctl as dependency, required for batman-adv mesh networking.
- users:
- Fixed checking restricted usernames.
- Display error message if unable to set SSH keys.
- Flush nscd cache after user operations to avoid some types of errors.
- monkeysphere:
- Adopted to using SHA256 fingerprints.
- Sort items for consistent display.
- Handle new uid format of gpg2.
- Fixed handling of unavailable imported domains.
- minetest: Fixed showing status block and diagnostics.
- Fixed stretched favicon.
- Switched base template from container-fluid to container. This will narrow the content area for larger displays.
- Plinth is now able to run as "plinth" user instead of root user.
- xmpp: Replaced jwchat with jsxc.
- ikiwiki: Allow only alphanumerics in wiki/blog name to avoid invalid paths.
212. Plinth v0.10.0 (2016-08-21)
- Updated Plinth to support Django 1.10.
- Added a page to display recent status log from Plinth. It is accessible from the 500 error page.
- Tor: Added options to toggle relay and bridge relay modes.
- Radicale: Added access rights control.
- Ikiwiki: Updated suggested packages.
- Users and Groups: Fixed editing users without SSH keys.
- Networks: Added basic support for configuring batman-adv mesh networking.
- Networks: Fixed incorrect access for retrieving DNS entries.
- New languages:
- Persian (50% translated)
- Indonesian (not started, contributions needed)
- New modules added to Plinth:
- Disks: Shows free space of mounted partitions, and allows expanding the root partition.
- Security: Controls login restrictions.
- Snapshots: Manages Btrfs snapshots.
213. Version 0.9.4 (2016-06-24)
- Added Polish translation.
- Fixed issue preventing access to Plinth on a non-standard port.
- Dealt with ownCloud removal from Debian. The ownCloud page in Plinth will be hidden if it has not been setup. Otherwise, a warning is shown.
- Fixed issue in Privoxy configuration. Two overlapping listen-addresses were configured, which prevented privoxy service from starting.
- Fixed issue that could allow someone to start a module setup process without being logged in to Plinth.
- Fixed issues with some diagnostic tests that would show false positive results.
- Added check to Diagnostics to skip tests for modules that have not been setup.
- Fixed some username checks that could cause errors when editing the user.
- Added sorting of menu items per locale.
- Moved Dynamic DNS and Pagekite from Applications to System Configuration.
- Allowed setting IP for shared network connections.
- Switched Dreamplug image from "non-free" to "free". This means that we no longer include the non-free firmware for the built-in wifi on Dreamplug.
- Added the "userdir" module for the Apache web server. This allows users in the "admin" group to create a folder called "public_html" under their home folder, and to publicly share files placed in this folder.
New wiki and manual content licence: Creative Commons Attribution-ShareAlike 4.0 International (from June 13rd 2016).
- Switched to using apt-get for module setup in Plinth. This fixes several issues that were seen during package installs.
214. Version 0.9 (2016-04-24)
- Fixed Wi-Fi AP setup.
- Prevent lockout of users in 'sudo' group after setup is complete.
Improved setup mechanism for Plinth modules. Allows users to see what a module is useful for, before doing the setup and package install. Also allows essential modules to be setup by default during FreedomBox install.
- Added HTTPS certificates to Monkeysphere page. Reorganized so that multiple domains can be added to a key.
- Added Radicale, a CalDAV and CardDAV server.
- Added Minetest Server, a multiplayer infinite-world block sandbox.
- Added Tiny Tiny RSS, a news feed reader.
215. Version 0.8 (2016-02-20)
- Added Quassel, an IRC client that stays connected to IRC networks and can synchronize multiple frontends.
- Improved first boot user interface.
- Fixed Transmission RPC whitelist issue.
- Added translations for Turkish, Chinese, and Russian. Fixed and updated translations in other languages.
- Added Monkeysphere, which uses PGP web of trust for SSH host key verification.
- Added Let's Encrypt, to obtain certificates for domains, so that browser certificate warnings can be avoided.
- Added repro, a SIP server for audio and video calls.
- Allow users to set their SSH public keys, so they can login over SSH without a password.
216. Version 0.7 (2015-12-13)
- Translations! Full translations of the interface in Danish, Dutch, French, German and Norwegian Bokmål, and partial Telugu.
- Support for OLinuXino A20 MICRO and LIME2
- New Plinth applications: OpenVPN, reStore
- Improved first-boot experience
- Many bugfixes and cleanups
217. Version 0.6 (2015-10-31)
- New supported hardware target: Raspberry Pi 2
- New modules in Plinth:
- Shaarli: Web application to manage and share bookmarks
Date & Time: Configure time zone and NTP service
- Service Discovery: Configure Avahi service
- Documentation revamp including new user manual and developer guide
- Improved diagnostic tests, available in Plinth
- Avoid unnecessary changes when installing on existing Debian system
- Network configuration supports PPPoE connections
- Debian packages can be download over Tor
218. Version 0.5 (2015-08-07)
New targets: CubieTruck, i386, amd64
- New apps in Plinth: Transmission, Dynamic DNS, Mumble, ikiwiki, Deluge, Roundcube, Privoxy
NetworkManager handles network configuration and can be manipulated through Plinth.
- Software Upgrades (unattended-upgrades) module can upgrade the system, and enable automatic upgrades.
- Plinth is now capable of installing ejabberd, jwchat, and privoxy, so they are not included in image but can be installed when needed.
- User authentication through LDAP for SSH, XMPP (ejabberd), and ikiwiki.
- Unit test suite is automatically run on Plinth upstream. This helps us catch at least some code errors before they are discovered by users!
- New, simpler look for Plinth.
- Performance improvements for Plinth.
219. Version 0.3 (2015-01-20)
- Tor Bridges: All boxes now act as non-exit Tor bridges, routing traffic for the Tor network.
Firewall: firewall is on by default and is automatically managed.
Add BeagleBone support. We now have images for BeagleBone, RaspberryPi, VirtualBox i386/amd64, and DreamPlug.
- Ability to enable and use Tor Hidden Services. Works with Ejabberd/JWChat and ownCloud services.
- Enable Tor obfsproxy with scramblesuit.
- Drop well-known root password (an account with sudo capabilities still exists for now but will be removed soon).
- Switch to unstable as suite of choice for easier development.
- Newer images are built with systemd by default (due to Debian change).
- Install and operate firewall automatically (uses firewalld).
- Major restructuring of Plinth UI using Python3, Django web development framework and Bootstrap3. Code quality is much better and UI is more polished.
- Introduced packaging framework in Plinth UI for on-demand application installation.
220. Version 0.2 (2014-03-16)
Support for Raspberry Pi and VirtualBox (x86) in addition to the DreamPlug.
- New Services:
- Configuration Management UI.
- Instant Messaging.
OwnCloud.
- dnsmasq.
- Low-Level Configuration Management.
- Service Announcement.
- LDAP Server.
- LXC Support.
- Source Packages.
- The privoxy setup is now the default from Debian.
221. Version 0.1 (2013-02-26)
First FreedomBox software release (0.1 image, developer release).
- Full hardware support in Debian
Support for DreamPlug.
- Basic software tools selected as common working environment:
- User interface system "plinth"
- Cryptography tools: gpg or "monkeysphere"
Box-to-box communication design: Freedom-buddy (uses TOR network)
- Web cleaning: "privoxy-freedombox".
Personalizar
Pese a que la filosofía de FreedomBox es minimizar las decisiones del usuario, se han habilitado unas pocas para facilitar algunos casos de uso avanzados.
0.1. Cambio de la App por omisión
Disponible desde: versión 0.36.0
Dificultad: Básica
Caso de Uso: Una FreedomBox que expone al público una única aplicación cuya app está configurada como página principal al acceder desde internet.
Por ej: Una universidad que use MediaWiki sobre FreedomBox como wiki de un curso y quiera que al teclear sus estudiantes el nombre de dominio en sus navegadores accedan directamente al wiki sin pasar por la página principal de la FreedomBox.
Configuración:
Cambiar la App por omisión en la página de Configuración a la app que quieras servir por omisión.
0.2. Accesos directos personalizados
Disponible desde: versión 0.40.0
Dificultad: Avanzada
Caso de Uso: El administrador de una FreedomBox comunitaria instala manualmente algunas aplicaciones no soportadas en la FreedomBox y quiere que sus usuarios puedan acceder del modo habitual.
Nota: Esta funcionalidad es para uso con aplicaciones de interacción con el usuario final (que tengan cliente web o móvil).
Configuración:
Crea un fichero llamado custom-shortcuts.json en el directorio de configuración de Plinth /etc/plinth y añade accesos directos en formato JSON siguiendo el esquema publicado en https://<mi-freedombox>/plinth/api/1/shortcuts.
Un ejemplo de fichero añadiendo un acceso directo a NextCloud.
1 {
2 "shortcuts": [{
3 "name": "NextCloud",
4 "description": ["Nextcloud es un conjunto de software cliente-servidor para crear y usar servicios de alojamiento de archivos."],
5 "icon_url": "/plinth/custom/static/icons/nextcloud.png",
6 "clients": [{
7 "name": "nextcloud",
8 "platforms": [{
9 "type": "web",
10 "url": "/nextcloud"
11 }]
12 }],
13 "tags" : ["Groupware", "File sync"]
14 }]
15 }
Los iconos correspondientes a los accesos directos listados en el fichero anterior deben estar en el directorio /var/www/plinth/custom/static/icons/ con los nombres declarados en /etc/plinth/custom-shortcuts.json.
Tras añadir a NextCloud en custom-shortcuts.json y su icono, reinicia el interfaz web de FreedomBox. Puedes hacerlo desde el propio interfaz o con la orden systemctl restart plinth .
Tras el reinicio, la página principal de FreedomBox ofrecerá el acceso directo nuevo a NextCloud como se muestra aquí:
El mismo acceso directo se mostrará también en cualquier app cliente de FreedomBox para Android conectada a esta FreedomBox.
0.3. Estilos
Disponible desde: versión 24.25
Dificultad: Avanzada
Caso de Uso: El administrador de una FreedomBox quiere personalizar el estilo visual que muestra la FreedomBox.
Configuración: Crea un fichero en /var/www/plinth/custom/static/css/user.css y escribe las reglas de estilo en CSS. Este fichero tendrá máxima prioridad en las reglas en cascada. Usa la consola para desarrollo del navegador web para comprender qué reglas sobreescribir así como cuanta especificidad se necesita.
Contribuir
Participa
Desde la codificación, el diseño y la traducción hasta la divulgación y las donaciones he aquí varias formas de contribuir a FreedomBox.
1. Enlaces Rápidos
Nuestra visión explica lo que queremos lograr.
2. Bienvenida a los recién llegados
Como nuevo contribuyente, eres más que bienvenido a presentarte a otros en el foro de debate, la lista de correo o el canal de IRC de FreedomBox. Además de hacer contactos útiles, puedes empezar a informar fallos y traducir (ver abajo) el wiki y el interfaz de FreedomBox.
Se necesitan contribuciones
Ordenadas por dificultad ascencente.
1. Donar
Obviamente donar es la manera más fácil de contribuir.
Puedes ayudar a su financiación donando mediante PayPal, Bitcoin o enviando un cheque. Mira por favor la página de donación para más detalles acerca de cómo donar.
El proyecto FreedomBox lo llevan voluntarios. La FreedomBox Foundation es una corporación federal 501(c)(3) reconocida por el IRS.
2. Correr la voz
Correr la voz acerca de FreedomBox solo requiere saber acerca de los objetivos básicos del proyecto y una descripción general del producto.
Cuenta a tu familia, amistades, comunidad local o en conferencias globales la importancia de FreedomBox. Para ser un proyecto exitoso necesitamos muchos más participantes, ya sean usuarios o contribuyentes. Comenta tus esfuerzos de divulgación en la página de charlas y en el wiki.
Si sabes algo de márketing, puedes ponerte en contacto con el equipo de marketing mediante la sección de ''Marketing'' de nuestro foro.
3. Darnos tus impresiones (Comentar)
Tras cierto tiempo perdemos la visión fresca de quienes acaban de llegar. Solo con hacernos llegar tus impresiones ya nos ayudas un montón.
Navega por nuestros sitios web y por la documentación, y juega con FreedomBox y comenta tus impresiones en la sección de ''Feedback'' de nuestro foro.
4. Pedir aplicaciones
Mira nuestra lista de aplicaciones deseadas y ayúdanos a extenderla buscando en la web otras aplicaciones de software libre para incluír en FreedomBox.
5. Traducir
Todo texto visible por los usuarios de FreedomBox necesita ser localizado a varios idiomas. Si entiendes inglés y escribes otro idioma puedes contribuír traduciendo. Traducir es una forma estupenda de familiarizarse con el proyecto mientras contribuyes.
Este trabajo de traducción incluye:
El Interfaz web de FreedomBox.
La documentación de FreedomBox, incluyendo el wiki.
Los sitios web de FreedomBox y la Freedombox Foundation.
El framework Django que emplea FreedomBox.
Cada aplicación que FreedomBox expone a sus usuarios.
La localización del interfaz web de FreedomBox ocurre principalmente en la herramienta web Weblate.
Si quieres ver a FreedomBox disponible en alguno de tus idiomas, por favor abre un debate en la sección de desarrollo del foro de FreedomBox para trabajar con otros traduciendo para ese idioma.
Para más información, por favor visita la página de traductores.
6. Documentar: Manual de Usuario, Sitio Web y Wiki, Vieos demostrativos
FreedomBox necesita mejor documentación para usuarios y contribuyentes. A veces re-redactar o presentar la información de otra manera ya ayuda. Otras se necesita cierto conocimiento.
El manual de FreedomBox se prepara agregando diferentes páginas del wiki y exportando a various formatos. El manual se usa en el Servicio FreedomBox y en otros sitios.
Si quieres contribuir al wiki (y por extensión al manual) de FreedomBox, puedes crear una cuenta en el wiki y empezar a editar.
Para contribuir al sitio web por favor inicia un debate en la sección de desarrollo del foro de FreedomBox.
Otra manera de documentar FreedomBox es grabar y publicar videos de cómo y/o por qué usarlo. Comno estos o estos.
7. Asegurar la calidad (probar y comprobar)
FreedomBox ya funciona sobre muchas plataformas y a los desarrolladores les resulta imposible probar en todas. Si tienes algún hardware soportado puedes ayudar probando FreedomBox en tu platforma.
Cuando se integra una nueva aplicación en FreedomBox, el desarrollador que hace el trabajo no prueba toda la functionalidad en el mundo real. Desplegar la aplicación y probarla ayudará a tener aplicaciones de alta calidad en FreedomBox.
Mira en la página de aseguramiento de la calidad la lista de casos de prueba que hay que verificar y la información acerca de cómo informar defectos.
8. Codificar
Si eres desarrollador puedes contribuir código a algún sub-proyecto de FreedomBox. Éste es el procedimiento paso a paso para contribuir código.
Servicio FreedomBox: un interfaz web para administrar las funciones de FreedomBox.
Freedom Maker: un script para construir imágenes de disco de FreedomBox para usarlas en dispositivos de hardware variados o en máquinas virtuales.
Puedes tomar una tarea de la Página de trabajos pendientes. Las páginas de cada proyecto contienen información acerca de acceso al código, cómo construir y listas de trabajos pendientes.
8.1. Arreglar defectos
Las listas de defectos, peticiones de funcionalidad y mejoras se controlan en el gestor de tiquets de FreedomBox. Mira también la lista de defectos para ayudar al paquete Debian del que dependemos y el cuadro de mando del equipo de paquetizado de FreedomBox para ver el estado los paquetes que usamos.
8.2. Añadir una aplicación
Si eres desarrollador y quieres ver disponible en FreedomBox alguna aplicación, puedes contribuir añadiéndola a FreedomBox. Mira el Manual del Desarrollador de FreedomBox.
8.3. Prioridades de desarrollo
Las prioridades se discuten regularmente. Encontrarás el avance del Servicio FreedomBox con sus prioridades aquí: panel de tareas e hitos.
Por favor, asiste a las próximas reuniones de avance para mantenerte al día y tratar con los miembros del equipo de publicación (release). La Página de trabajos pendientes recopila la lista completa de los elementos en los que trabajar para FreedomBox.
9. Diseño
9.1. Diseño de Experiencia de Usuario (UX)
Si eres diseñador de UX, puedes ayudar a FreedomBox con esto:
Experiencia de interacción para el interfaz web del Servicio FreedomBox.
Diseño web para los sitios freedombox.org, freedomboxfoundation.org y el wiki.
Logo y marca (actualmente tenemos un manual de identidad y logos).
Propuestas de diseño para casos de uso de FreedomBox sobre SBCs personalizados.
9.2. Diseño Técnico
FreedomBox necesita tu conocimiento técnico para elaborar planes de implementación de nuevas funcionalidades. Puedes contribuir a los debates acerca de varios aspectos de diseño técnico e implementación de FreedomBox. Mira la sección de Desarrollo de los foros de debate.
10. Empaquetar aplicaciones
FreedomBox es una variante pura de Debian. Para añadir aplicaciones a FreedomBox necesitames primero que estén empaquetadas para Debian. Mira nuestra lista de aplicaciones deseadas.
Guía del Desarrollador
El Manual del Desarrollador de FreedomBox proporciona un tutorial paso a paso para escribir apps para FreedomBox y una referencia para la API. Está disponible en docs.freedombox.org.
Cacharreo
FreedomBox consiste de 2 sub-proyectos principales:
El Servicio FreedomBox (Plinth), el interfaz web
- Freedom Maker, un script para generar imágenes de disco para hardware variado
1. Servicio FreedomBox (Plinth)
El servicio FreedomBox (Plinth) es un interfaz web para administrar las funciones de FreedomBox.
El servicio FreedomBox es Software Libre bajo la versión 3 o posterior (a tu elección) de la Licencia Pública General GNU Affero.
1.1. Uso
El servicio FreedomBox viene instalado en todas las imágenes de FreedomBox. Puedes descargar imágenes de FreedomBox y ejecutarlas en cualquier hardware soportado. Para acceder al interfaz de FreedomBox consulta Guía rápida.
Si estás en una máquina Debian puedes instalar el servicio FreedomBox desde el archivo de paquetes de Debian. Actualmente solo se soportan Bullseye (estable), Bookworm (en pruebas) y Sid (inestable). Para instalar el servicio FreedomBox ejecuta:
$ sudo apt-get install freedombox
También puedes obtener el servicio FreedomBox en su repositorio Git o instalarlo desde el código fuente.
1.2. Capturas de pantalla
1.3. Soporte
Puedes solicitar soporte en
1.4. Contribuir
Buscamos ayuda para mejorar el servicio FreedomBox. Puedes contribuir al servicio FreedomBox no solo codificando sino también traduciendo, documentando, diseñando, empaquetando o dando soporte.
Hay disponibles instrucciones para contribuir código.
El repositorio Git principal se aloja en la página de FreedomBox en Salsa.
Hay disponibles instrucciones para instalar desde el código fuente y modificarlo.
Las listas de defectos, tareas pendientes y solicitudes de funcionalidad están en el gestor de incidencias.
Antes de contribuir al código fuente del servicio FreedomBox necesitas entender Python y Django porque se basa en ellos.
Puedes solicitar asistencia al desarrollo en el foro de debate, la lista de correo o el canal de IRC #freedombox.
1.4.1. Paquete Debian
El servicio FreedomBox está empaquetado para Debian como paquete nativo y el código fuente de empaquetado es parte del código fuente del paquete principal.
Las incidencias relacionadas con el empaquetado se listan en el BTS de Debian.
2. Freedom Maker
Freedom Maker es un script para generar imágenes de disco FreedomBox adaptadas a diferentes dispositivos hardware o máquinas virtuales.
Actualmente Freedom Maker puede generar imágenes de disco FreedomBox para el siguiente hardware:
Máquinas AMD64 (x86-64), máquinas X86 y otras máquinas virtuales (usando imágenes de disco en crudo (raw))
Si una platforma de hardware puede ejecutar Debian no debería llevar mucho esfuerzo adaptar Freedom Maker para que le genere imágenes FreedomBox.
Freedom Maker es Software Libre licenciado bajo la versión 3 o posterior (a tu elección) de la Licencia Pública General GNU.
2.1. Generar Imágenes FreedomBox
Puedes obtener Freedom Maker desde su repositorio Git y seguir las instrucciones del fichero README para generar una imágen FreedomBox.
2.2. Soporte
Puedes solicitar soporte en
2.3. Contribuir
Buscamos ayuda para mejorar Freedom Maker.
Hay instrucciones disponibles para contribuir código fuente.
Freedom Maker se aloja en el Proyecto Salsa de FreedomBox. El repositorio Git principal está alojado allí.
Puedes contribuir a FreedomBox añadiendo soporte para más platformas de hardware. Freedom Maker se puede adaptar fácilmente a más platformas si ya soportan ejecutar Debian.
- Puedes crear y probar imágenes con Freedom Maker regularmente para probar las funcionalidades nuevas y comprobar que no hay regresiones.
Las listas de defectos, tareas pendientes y solicitudes de funcionalidad están en el gestor de incidencias.
Puedes solicitar asistencia al desarrollo en el foro de debate, la lista de correo o el canal IRC #freedombox.
Cuéntaselo a tu gente
?FreedomBox en la Prensa (en)
?Conferencias (en)
?Cahrlas y presentaciones (en)
?Material Disponible. Presentaciones y otros materiales en bruto.
Introducción |
Información |
Soporte |
Contribuye |
Informes |
Promueve |
|
|
|
|||||
|
|
|
AYUDA y DEBATES: Foro de Debate - Matrix - Lista de Correo - #freedombox irc.debian.org | CONTACTO Fundación | PARTICIPA Proyecto
Next call: Sunday, April 27 at 17:00 UTC
Esta página está sujeta a copyright y sus autores la publican bajo la licencia pública Creative Commons Atribución-CompartirIgual 4.0 Internacional (CC BY-SA 4.0).
This video is much too old to be useful here.
5.2. Video de introducción
Plinth_Introduction.webm
(36 MB, 13 Min.)