1 puntos por GN⁺ 2023-10-21 | 1 comentarios | Compartir por WhatsApp
  • Uso un Firefox principal estricto separado de un Firefox secundario para permitir JavaScript, y mantengo perfiles adicionales de Firefox aparte para sitios donde necesito conservar la sesión iniciada por mucho tiempo
  • El Firefox secundario no usa perfiles: se separa por completo cambiando la variable de entorno $HOME antes de ejecutarlo en Unix, y se usa para descartar cookies y sesiones al cerrarlo
  • Algunos sitios exigen autenticación multifactor, verificación por email o inicios de sesión largos de varios pasos cada vez, por lo que no conservar las cookies ralentiza mucho el flujo de uso
  • En los perfiles por sitio instalo uBlock Origin y Cookie AutoDelete para conservar solo las cookies necesarias y configurar que el resto se limpie automáticamente
  • Firefox Multi-Account Containers también podría ser una alternativa, pero los perfiles separados aíslan incluso la configuración de las extensiones, por lo que es más fácil confiar en su comportamiento

Cómo uso dos entornos de Firefox separados

  • La navegación principal la manejo en un Firefox personalizado
    • Uso configuraciones y extensiones estrictas
    • Casi nunca ejecuto JavaScript
    • Lo uso sin haber iniciado sesión en muchos sitios
  • Para los sitios que necesitan JavaScript, uso un entorno de Firefox separado de tipo “solo haz que funcione”
    • Ejecuta JavaScript
    • Acepta cookies y las vuelve a enviar
    • Al cerrar el navegador, descarta tanto las cookies como la sesión
  • Este entorno secundario no se implementa con perfiles de Firefox, sino cambiando la variable de entorno $HOME antes de ejecutarlo en Unix
    • Firefox respeta $HOME en Unix
    • Los dos entornos quedan completamente separados, lo que evita posibles problemas

Perfiles por sitio para mantener la sesión iniciada

  • Algunos sitios web necesitan tanto JavaScript como inicio de sesión, pero el proceso de login es demasiado engorroso
    • Exigen autenticación multifactor con un token físico cada vez
    • Envían un email en cada inicio de sesión
    • Requieren pasar por un proceso de login largo, lento y de varios pasos
  • En estos sitios hay que conservar las cookies de sesión para iniciar sesión la menor cantidad de veces posible
    • Algunos sitios tienen permisos importantes, así que resulta incómodo navegar casualmente por otros lugares mientras se está logueado
  • La solución es crear perfiles adicionales por sitio dentro de la configuración del Firefox con JavaScript
    • Mantengo un perfil para cada sitio web molesto
    • En cada perfil instalo el conjunto estándar de complementos de Firefox
    • Los complementos clave son uBlock Origin y Cookie AutoDelete
  • Configuro Cookie AutoDelete para conservar solo las cookies necesarias de ese sitio o de sitios relacionados, y limpiar el resto
    • Las cookies adicionales aparecen, por ejemplo, al visitar otros lugares siguiendo enlaces desde ese sitio
    • Al principio hace falta un poco de trabajo para identificar qué cookies de qué sitios se deben conservar
    • Una vez configurados, estos perfiles funcionan de forma estable
  • También podría limitar qué sitios pueden usar JavaScript en cada perfil, pero en la práctica es demasiado engorroso
  • Firefox Multi-Account Containers también podría servir, pero prefiero los perfiles separados
    • La configuración inicial puede requerir más trabajo
    • Los perfiles están completamente separados entre sí, incluida la configuración de las extensiones
    • En los contenedores, la interacción entre varios elementos puede variar según la situación
  • Entre los complementos que suelo agregar están Foxy Gestures, Cookie Quick Manager y Certainly Something
    • Foxy Gestures es una parte importante de mi experiencia de uso de Firefox
    • Uso Certainly Something para verificar certificados TLS
    • En algunos perfiles también se acumularon complementos adicionales para mitigar el rastreo
    • Últimamente también instalé botones bookmarklet para readable y fixed

1 comentarios

 
GN⁺ 2023-10-21
Opiniones en Hacker News
  • La verdadera joya de Firefox son los Containers. Ningún otro navegador tiene algo así, y es una ausencia clave en Chrome.
    No se trata simplemente de “abrir una ventana privada”, sino de poder crear 1 + una cantidad prácticamente infinita de perfiles/contenedores. Firefox tiene la extensión Temporary Containers, que crea un contenedor temporal para cada pestaña nueva y aísla todo por defecto. Lo configuré para que, al mantener Ctrl y hacer clic en un enlace, se abra en una pestaña nueva del mismo contenedor existente, y solo junto sesiones cuando quiero hacerlo. Con Proxy Containers también es posible usar distintas rutas de proxy por pestaña.
    Chrome y sus herramientas para desarrolladores tienen muchas ventajas, y aunque Mozilla haya causado varios problemas, respeto más la misión de Firefox. Pero, más allá de sus pros y contras, estoy atado a Firefox porque es el único navegador que permite hacer estas cosas.

    • Hace unos días di una presentación breve en la que tenía que iniciar sesión en varias cuentas de AWS, y la gente terminó más interesada en cómo abría y alternaba varias cuentas de AWS en distintas pestañas que en el contenido de la presentación.
      Uso un add-on que crea automáticamente un contenedor nuevo por cada cuenta de AWS abierta desde la pantalla de SSO. Si escribo gmail en el navegador, aparecen 3 cuentas y, según la que elija, se abre en el contenedor correcto, así que puedo tener las tres cuentas abiertas al mismo tiempo sin complicaciones.
    • Probé los contenedores durante un tiempo, pero me parecieron bastante limitados.
      Por ejemplo, no se puede editar la lista de sitios de un contenedor, y solo se puede agregar el FQDN cargado en ese momento. No se puede asignar *.google.com al contenedor de Google; hay que abrir realmente cada subdominio y agregarlo uno por uno.
      Peor aún, si el host que quieres agregar está en medio de una cadena de redirecciones, parece no haber forma de añadirlo. mail.google.com va a accounts.google.com y luego vuelve rápidamente a mail.google.com, pero no hay manera de poner accounts.google.com en la lista. Por eso la función de “limitar solo a los sitios designados” era, en la práctica, inutilizable. Parece que Mozilla consideró que poner un botón para agregar y un campo de texto en la lista de sitios era demasiado para el usuario.
      También me resultaba incómodo con frecuencia no poder borrar cookies y datos de sitio de un solo contenedor, ni borrar solo el contenedor predeterminado sin tocar los contenedores con nombre. Al final compré más RAM y volví a usar perfiles separados.
    • Creo que agregar Containers a Chrome no tendría mucho sentido en general. Al fin y al cabo, Google puede acceder a todo.
      Es parecido a instalar una VPN en Android y seguir usando Maps y cosas así mientras estás logueado con una cuenta de Google. Chrome no tiene privacidad por diseño.
      Esta distinción es importante cuando se habla de Firefox y Chrome al mismo tiempo. Compararlos desde el punto de vista de la privacidad es como comparar peras con manzanas.
    • La extensión Temporary Containers ya no recibe mantenimiento: https://github.com/stoically/temporary-containers/issues/618
    • Firefox Containers es conceptualmente excelente, pero su UI/UX se siente un poco floja. Ojalá pudiera organizarse de forma tan prolija como los Spaces de Arc.
  • Los perfiles de Firefox están muy subestimados y, en la práctica, parecen usarse poco.
    Creo un acceso directo para cada perfil y dejo el comando de ejecución como firefox --no-remote -P profilenamehere. Así casi nunca tengo que ver el cuadro de diálogo de administración de perfiles, y uso cada perfil como si fuera un navegador separado.
    Es cómodo para separar la navegación laboral de la personal, y también sirve para probar extensiones distintas. Por ejemplo, puedo poner Treestyletabs en un perfil y Sidebery en otro para evaluar ambos directamente. Tener abiertos dos perfiles de Firefox también usa mucha menos memoria que tener Firefox y un navegador basado en Chromium abiertos al mismo tiempo.

    • No me gustan mucho los perfiles. Me parecía difícil o imposible hacer que los enlaces divertidos que me mandaban mis amigos por Discord se abrieran en el perfil Personal, y que los enlaces de trabajo de Slack se abrieran en el perfil Professional.
      Al final hice un atajo de teclado que alternaba entre un archivo de configuración de perfil y dos enlaces simbólicos, e incluso le sumé una extensión de Gnome que mostraba en la barra superior el perfil seleccionado en ese momento. Durante el horario laboral usaba un perfil y por la noche otro, pero era lento, difícil de migrar a otra computadora y, en general, bastante desprolijo.
      Ahora uso contenedores de Firefox y estoy mayormente satisfecho. Aunque me gustaría que la barra de marcadores también cambiara según la pestaña seleccionada en ese momento.
    • Sinceramente, el hecho de tener que tocar argumentos de ejecución probablemente sea justamente la razón por la que se usan tan poco.
    • Es una lástima que la extensión para cambiar de perfil requiera instalar una app local.
      Firefox debería integrar bien esta función: https://addons.mozilla.org/en-GB/firefox/addon/profile-switc...
    • Es un consejo útil. Necesito acceder a varias cuentas de Microsoft Live/AD/Teams, y no funcionan bien dentro de la misma sesión del navegador.
      Por eso venía separándolas con perfiles de Chrome. Los perfiles de Firefox me parecían algo toscos, y curiosamente nunca se me había ocurrido crear accesos directos por perfil.
    • No hace falta poner Treestyletabs y Sidebery en navegadores o perfiles separados solo para evaluarlos. Puedes cambiar al instante qué extensión ocupa la barra lateral.
      Uso Grasshopper[1] junto con Tab Center Reborn o Sidebery, y voy alternando según la función que necesite en cada momento.
      [1]https://news.ycombinator.com/item?id=37306058
  • Soy usuario de Firefox desde la versión 0.9. Por las reacciones aquí, parece que hay mucho cariño por Firefox.
    Pero la UI de perfiles y la experiencia de administración son realmente pésimas en comparación con Chrome/Edge. Las pestañas contenedoras no son un sustituto. Los perfiles de trabajo y personal ni siquiera comparten marcadores. Sé que hay complementos de terceros que requieren instalar software adicional, pero eso más bien deja el problema aún más en evidencia.
    Este problema ya se reportó hace 13 años: https://bugzilla.mozilla.org/show_bug.cgi?id=662025
    Así que ahora uso Firefox solo para cosas personales, y para el resto uso perfiles de Chrome/Edge. La única razón por la que sigo en Firefox es la versión para Android. Si uBlock Origin funcionara en Edge/Chrome para Android, probablemente dejaría Firefox.

    • Safari hizo un trabajo realmente bueno con la implementación de perfiles en este aspecto. Se separan marcadores, historial y sesiones, e incluso los grupos de pestañas van aparte. Firefox tampoco está tan lejos; parecería que solo le falta pulir la experiencia.
    • Elegir pestañas contenedoras en vez de un sistema de perfiles renovado fue una mala decisión de Firefox. Por eso seguirá quedándose atrás.
    • Antes de Firefox Quantum, es decir, antes de abandonar los complementos basados en XUL, los complementos de terceros podían facilitar el cambio de perfiles.
      Ahora casi no uso perfiles de Firefox, y en Chrome uso 5 o 6 perfiles para distintos fines. Porque es mucho más fácil.
    • Me pregunto si realmente es tan malo escribir about:profiles en la barra de direcciones y elegir el perfil que quieras. O crear un acceso directo con la opción -p para elegirlo al iniciar Firefox.
      De verdad me da curiosidad qué es exactamente lo que ofrecen Chrome/Edge que marca una diferencia decisiva.
    • En Android a veces uso Kiwi Browser, que permite cargar uBlock Origin.
  • Creo que estaría satisfecho si Mozilla permitiera elegir qué extensiones activar por contenedor.
    [1] https://addons.mozilla.org/en-US/firefox/addon/multi-account...

    • Me gustaría que, al abrir cierto sitio web, preguntara cuál de los contenedores recordados usar. Por ejemplo, si de 15 contenedores un sitio específico solo lo uso en 2, quisiera que cada vez que abra una nueva instancia me deje elegir solo entre esos dos, no entre todos.
    • ¿Hay alguna razón por la que no se pueda usar about:profiles?
    • Me da curiosidad el caso de uso de esa función.
    • Se puede hacer con cuentas de usuario a nivel del sistema operativo.
  • Uso mucho los perfiles de Firefox, pero quiero principalmente dos funciones.
    Primero, debería poder darles diferencias visuales, como colores, para distinguir mejor los perfiles. Si tienes abiertos navegadores de varios perfiles al mismo tiempo, es fácil confundirse.
    Segundo, debería mejorar la UX cuando abres por error un perfil que ya está en ejecución. Ahora espera a que se agote el tiempo y luego muestra un mensaje de error. En su lugar, debería enfocar la ventana que ya está abierta.

    • La diferenciación visual se resuelve perfectamente usando temas distintos.
    • Uso https://color.firefox.com/ para distinguirlos. Es un sistema de temas bastante bueno que Mozilla creó hace unos años; lo promocionaron como una semana y luego nunca más lo mencionaron.
      Probablemente porque querían promocionar más esos temas tontos que desaparecen solos, los “Colorways drops”.
    • Resolví ambos problemas creando una entrada .desktop separada para cada perfil y asignándole a cada una un tema y un ícono personalizado.
      Así, en el gestor de ventanas puedo saber qué perfil está abierto, y por el tema sé qué perfil estoy viendo. Puedo iniciar un perfil específico desde su ícono, o presionar Super y escribir ffwork, o si ya está abierto, hacer clic derecho y abrir una ventana nueva.
      El problema principal es que, aunque ya hice esto varias veces en distintas máquinas, siempre se me olvida cómo hacerlo. Nunca recuerdo qué combinación de flags de Firefox y valores de .desktop se necesita. Creo que este enlace es el correcto: https://askubuntu.com/questions/1209434/how-to-display-two-d...
    • Algo que se puede hacer ahora mismo es usar escritorios virtuales separados y poner cada perfil en un escritorio distinto. Hace falta algo de disciplina para no equivocarse.
    • La razón por la que uso perfiles de Brave es justamente esa diferenciación visual. Probé Brave por primera vez porque permite poner colores distintos en el ícono de la barra de tareas y en el chrome del navegador, y ahora se volvió una función sin la que no puedo vivir.
  • En Chrome/macOS tengo varias instancias y una instancia separada para cada cliente/entidad y actividad específica.
    Cada navegador tiene extensiones y reglas de bloqueo de anuncios distintas. Por ejemplo, no puedo entrar a Hacker News salvo desde el navegador de redes sociales. Mi navegador principal de desarrollo tiene más extensiones para desarrollo.
    También facilita la gestión de pestañas. Simplemente cierro el “navegador de trabajo”. Todos tienen instancias, íconos y colores separados. Aunque por costumbre intente entrar a sitios para perder el tiempo, si no estoy en el navegador de medios me da error, lo que ayuda a concentrarme.
    No fue fácil hacer que funcionara perfectamente. Tuve que crear varias instancias de Chrome, y eso significa que también tuve que firmar las apps. Todos los perfiles y datos de la app están en carpetas separadas. Si no lo haces así, no puedes cambiar a otro navegador con cmd-tab.

    • Uso el mismo enfoque y extendí ese hábito al móvil.
      Para navegar por diversión uso Firefox normal de Android con extensiones como Ublock Origin; para navegar siempre en modo privado uso Firefox Beta con las mismas extensiones, y para el trabajo uso Chrome.
      También probé perfiles, pero eran demasiado tediosos de manejar. Especialmente por la forma en que macOS trata varias ventanas de la misma aplicación.
    • Brave maneja los perfiles a la perfección. También tiene cadenas de sincronización, así que no hace falta una cuenta en línea. Lamentablemente, el navegador móvil solo tiene un perfil, lo cual es molesto. No debería ser tan difícil de implementar.
  • No niego que los perfiles de Firefox sean excelentes. Y desactivar JavaScript también es muy importante; usé NoScript durante muchísimo tiempo
    Pero cambiar entre dos perfiles para alternar entre usar o no usar JavaScript me parece una molestia enorme. En NoScript, basta con presionar shift+t para levantar temporalmente las restricciones de esa pestaña
    Lo que NoScript bloquea principalmente son pestañas inesperadas y desconocidas que abre el malware. Pero en sitios grandes como The Register o Etsy, se puede desactivar mientras haces lo que necesitas
    Una función que realmente me gustaría que tuviera NoScript es la desactivación global por dominio. AWS usa subdominios aleatorios de CloudFront cuando incluye recursos. No quiero poner *.cloudfront en la lista de permitidos. Cualquiera podría alojar malware ahí

    • Conviene revisar uMatrix y uBlock Origin
  • Como dato curioso, si usas la bandera --class, puedes asignar una clase de ventana X distinta a cada instancia de Firefox. Así puedes configurar el gestor de ventanas para traer al frente las ventanas de esa clase
    Por ejemplo, en mi configuración de StumpWM tengo algo así:
    (defcommand javascript-firefox ()
    (run-or-raise "firefox -P Javascript --class Firefox-javascript" '(:class "Firefox-javascript")))
    (define-key *top-map* (kbd "H-F") "javascript-firefox")
    Entonces, con solo escribir hyper-shift-f, el Firefox para JavaScript se trae al frente si ya existe, o se inicia si no existe. Mientras tanto, hyper-f trae al frente el Firefox normal
    Lo recomiendo mucho. Ojalá pueda seguir usándolo en el futuro. ¿Wayland también soporta clases de ventana y la tecla Hyper?

  • Empecé a usar este método hace poco, y también cambié el tema de los perfiles de Firefox para recordar que tengo que cerrar todas las ventanas
    La sensación de tenerlos separados es satisfactoria, y también es bastante útil para ejecutar ciertas cosas como si fueran apps restringidas dentro del entorno de escritorio
    Hay mucho margen para hacerlo mejor. Por ejemplo, quizá se podrían crowdsourcing los permisos al estilo Android/iOS por sitio web

  • Quizá sea una opinión impopular, pero creo que ya pasó la época en la que JavaScript era un elemento opcional de la web. Ahora es un componente inherente de la web
    Hay que aceptar que no podemos volver a la época sin JavaScript. En vez de intentar convencer a los sitios de que creen versiones sin scripts, hay que buscar soluciones para hacer JavaScript seguro. No sé cuál sea la respuesta, pero vale la pena considerar sandboxing, dominios de seguridad y un modelo de permisos rico

    • Al menos si tu modelo de amenazas incluye evitar un panóptico global de vigilancia, JavaScript no puede ser seguro
      Permitir la ejecución de código arbitrario por defecto no puede ser seguro
      El 90% de los usos de JavaScript son completamente innecesarios y solo tienen sentido en la web basada en publicidad
    • Cuando leo sobre navegar la web con JavaScript desactivado, me da curiosidad saber cómo es esa experiencia
      No intento descartarlo, pero simplemente no puedo imaginar cómo serían mis hábitos de navegación sin JavaScript. Tal vez suena peor de lo que realmente es
    • No está mal decir que JavaScript es prácticamente obligatorio, pero sigue siendo solo un estándar de facto. Imponerlo oficialmente como requisito está mal
      Lamentablemente, la web ha retrocedido a un estado peor que JavaScript. Está yendo hacia soportar solo un navegador específico: Chrome. Un ejemplo reciente: en el sitio web de Air India no se pueden reservar boletos de avión con Firefox, pero sí con Chrome
    • Uso Qubes OS, así que puedo ejecutar varias instancias de Firefox en sandbox con bordes de ventana de colores
      Como cada Firefox se ejecuta dentro de su propia VM sin datos, ejecuto JavaScript sin miedo