388 15
388 15

Una de las primeras cosas que suele hacer un usuario de internet con conocimientos medios es instalar un bloqueador de anuncios en su navegador.

Los usuarios de Mac contamos en la galería de extensiones de Safari con uBlock Origin (la mejor opción) y un par de clásicos más o menos útiles, aunque por diferentes razones ya no tanto, como Adblock y Adblock Plus.

Si en tu estación de trabajo además de Safari dispones de Firefox o Chrome, o usas por divertimento o necesidad algún otro que no dispone de este tipo de extras, como el navegador de texto Lynx, o el navegador ligero Roccat, una solución muy práctica es modificar el archivo host de nuestro sistema, incluyendo en él todos los dominios de internet a los que deseamos prohibir el acceso. De esta manera, al efectuar el bloqueo desde el archivo host, vetamos a cualquier programa, no sólo a Safari o Firefox, la posibilidad de que se conecte a la red con el fin de mostrar publicidad o recopilar datos en beneficio de las empresas más chapuceras. Confeccionar nuestra propia lista, completa y funcional, puede ser una tarea muy ardua, de modo que, como ayuda, Dan Pollock mantiene una web con archivos host destinados a S.O. actuales (por ejemplo macOS Sierra) y a los clásicos OS 9 y anteriores, a los que de paso sienta muy bien no sobrecargar con más aplicaciones de terceros.

En la web de Pollock una opción es descargar el text file (con cuidado para que Safari no le añada una extensión de archivo), comprobar que efectivamente se denomina “host”, no “host.html” o “host.txt”, y luego seguir estas instrucciones de Tekreview que explican cómo sustituir el archivo por defecto. Pero para estar seguros de que bajamos el archivo correcto disfrutamos de la opción de usar curl y un par de comandos del terminal:

  • ⌘ + space term (abrimos Spotlight e introducimos los primeros caracteres de la app Terminal que viene por defecto en nuestras naves cuánticas  )
  • $ curl -O http://someonewhocares.org/hosts/hosts (Escribimos en el Terminal una petición directa de este archivo a la web de Pollock que se descargará en el directorio de nuestro usuario).
  • $ ls (lista los archivos y vemos que ha cruzado todos los nodos del ciberespacio y efectivamente está ahí sin terminaciones de archivo adicionales)
  • $ sudo cp ./hosts /private/etc/ (copiamos el archivo con el comando cp, seguido del nombre del archivo, y de la ruta de la carpeta de destino).
  • Ahora cerramos el navegador con ⌘ + q y limpiamos las tablas de asignación:
    $ sudo killall -HUP mDNSResponder
    (Atención, los usuarios de Mavericks tienen esta instrucción un poco diferente:
    $ dscacheutil -flushcache; sudo killall -HUP mDNSResponder )
  • Y ya, asegurándonos de que todo ha funcionado perfectamente como en una película de hackers, hacemos ping desde la terminal a una página fraudulenta del tipo alert.mac-notification.com:
    $ ping alert.mac-notification.com
    ping: cannot resolve alert.mac-notification.com: Unknown host

(Recuerda que el símbolo de $ se usa con el objeto de definir la línea de comando. Lo que debes pegar en el terminal es lo que está escrito a continuación).

La mecánica de este archivo host es en este caso redirigir todas las peticiones a webs engañosas a la IP 0.0.0.0. Cuando visitamos una dirección de internet el sistema operativo realiza primero una solicitud a la caché local de asignación de nombres, consulta el archivo host y, si no hay ninguna orden específica, hace una petición DNS, que suele ser la del servidor de nuestro proveedor de fibra o adsl. Así, al modificar el archivo, y desviar el tráfico no deseado a una IP nula como 0.0.0.0 ó 127.0.0.1, esa página no se solicita al DNS y no se muestra, apareciendo en la ventana un mensaje del tipo ‘Safari no puede conectarse al servidor”.

Instalar una archivo host con bloqueador de anuncios en un Mac es también una buena idea cuando ponemos a punto la máquina de un familiar o de un amigo. Con esta solución se olvidará completamente de plugins, que hay que actualizar y mantener compatibles con las correspondientes versiones del navegador (y esperar que no haya jugarretas en la línea de las de Ben Williams de Adblock Plus) No es una solución tan efectiva como Ublock Origin -con la configuración personalizada- y sí habrá alguna publicidad que se cuele, pero con este método en la mayoría de casos el usuario remediará ese aspecto en sus rutinas y además mejorará su seguridad ante la parte más agresiva del software que basa su negocio en mostrar anuncios en apps de escritorio o en recopilar datos de manera invisible. Por supuesto todo esto es compatible con cualquier otra extensión o app que instalemos así que, en definitiva, un archivo host vitaminado nos fabrica una primera línea de defensa por defecto en nuestros Macs, a la que siempre podemos añadir, si lo necesitamos, addons en los respectivos navegadores, o directamente puede constituir un arreglo muy notable ante el problema de los mercaderes de información más cutres, sin necesidad de recurrir a intermediarios que asimismo tienen sus propios, y secretos, intereses comerciales.

Categorías para este artículo

Join the Conversation

15 comentarioss

  1. Carlos Burges Ruiz de Gopegui

    Ya podéis felicitar y jalear a LETRA a ver si se anima a escribir más cosas. 😀

  2. Toni_DG

    Hola,

    No me funciona! He comprobado que el hosts está en su carpeta /private/etc/ y es la versión descargada. Alguien más ha probado?

    1. LETRA

      Hola. ¿Estás usando Sierra? Repasa los últimos pasos, como cerrar el navegador y purgar la caché. También puedes probar a reiniciar el Mac . Y, en última instancia, espero que hayas usado los comandos de terminal porque con estos archivos de sistema se pueden cometer fallos como abrirlo y guardarlo con text edit (y que te cambie los retornos de carro, las codificaciones UTF, etc).

      Como seguro que funciona es siguiendo las instrucciones del terminal. Yo mismo lo comprobé y sobrescribí el archivo host que estaba utilizando.

      Saludos.

      1. Alquimista

        Una de las alternativas para evitar eso es utilizador procesadores de texto especiales como TextWrangler o BBEdit, con el que se puede realizar modificaciones puntuales, por ejemplo.

        1. LETRA

          Sí, gracias por la puntualización porque es muy necesaria. Cualquier archivo de sistema no se debe tocar con Textedit, por lo que comentaba de codificaciones, retornos de carro y terminaciones de archivo. TextWrangler es muy buena recomendación y creo que está gratis.

          1. Alquimista

            Perdón, ERA gratis… y digo ERA porque BareBones ha dejado de trabajar en él para centrarse sólo en [el magnífico] BBEdit.

            Dejo aquí un enlace con una comparativa entre los diversos editores de texto para mac:

            https://www.slant.co/versus/69/42/~spacemacs_vs_vim

        2. LETRA

          Hola. Gracias, pero el enlace es Spacemacs vs Vim y en el desplegable no me salen ni BBedit ni TextWrangler.

          1. Alquimista

            A ver si ahora pongo el enlace bien:
            https://www.slant.co/versus/11340/48/~bbedit_vs_atom

            eso sí, TextWrangler no aparece.

        3. LETRA

          Atom arrasa. Supongo que por el precio de BBedit.

  3. Toni_DG

    Hola y gracias.

    Si, si, purgué, comandos de terminal y etc. Me ha despistado el párrafo del artículo:

    “$ ping alert.mac-notification.com
    ping: cannot resolve alert.mac-notification.com: Unknown host”

    Al tener respuesta del ping he creído que no funcionaba.

    La respuesta del ping a “alert.mac.notification” es la siguiente:

    64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.075 ms

    1. LETRA

      Hola. Está correcto. Para asegurarte introduce la url directamente en la barra de direcciones de Safari. Debería mostrarse el mensaje “Safari no puede acceder a este servidor”.

      Saludos.

  4. DocuMac

    Hola, muy interesante el artículo.

    Tengo una duda, todavía sigo usando Yosemite (OSX 10.10.5) y me he dado cuenta que el archivo Hosts tiene el formato “127.0.0.1 localhost”. Es decir, los números delante y el texto al final. Y en el archivo que comentas para añadir, tiene el texto al principio y los números al final (justo al revés). ¿Me servirá igual? Gracias

    1. LETRA

      Hola, gracias por el comentario. ¿Te refieres al archivo que viene por defecto en Yosemite? Sí, te servirá igual. Ese archivo por defecto sólo suele incluir unas pocas definiciones y ya figuran en la primera sección del archivo enlazado, donde pone:

      #
      127.0.0.1 localhost
      127.0.0.1 localhost.localdomain
      255.255.255.255 broadcasthost
      ::1 localhost
      127.0.0.1 local
      #fe80::1%lo0 localhost
      #

      La segunda sección del archivo host enlazado es #<shock-sites y ahí sí figuran las direcciones fraudulentas que queremos bloquear. Es la parte vitaminada. La otra parte no cambia o quizás es un poco más detallada.

      Lo que significa ese “127.0.0.1 localhost” de tu archivo por defecto es que si por ejemplo programas como CUPS o Apache hacen una petición a “localhost” el archivo host lo va a traducir por 127.0.0.1 o la que utilice el sistema, porque a veces se puede cambiar ese 127.0.0.1 por otra IP y enlazando a localhost, que sería una especie de sinónimo polivalente, te aseguras de que siempre el programa hará la petición a tu sistema, no a otro dispositivo de la red local.

      Y en el caso de la diferencia entre 127.0.0.1 y 0.0.0.0 (hay dos versiones de estos archivos en http://someonewhocares.org) uno redirecciona, como bien dices, a localhost, y otro a null (0.0.0.0). Puedes ver la diferencia entre utilizar una IP u otra en https://alanchavez.com/la-diferencia-entre-0-0-0-0-y-127-0-0-1/ La que he enlazado es a 127.0.0.1 y creo que no hay diferencia en este caso.

      Saludos.

      1. DocuMac

        Impresionante! boquea la publicidad y te centras verdaderamente en lo que te interesa, leer tranquilamente cualquier sitio web.

        Mil gracias.

  5. Wynztech

    Yo es que ya no uso Mac Carlos. Me paso de vez en cuando por aqui por que a veces pones cosas interesantes pero Apple mientras siga en esta linea no es para mi. Bueno a lo que iba. Yo este sistema lo tengo implementado en la red de mi casa pero a nivel de red. Es el propio router el que ya me filtra esos dominios maliciosos con lo que todo lo que esta detras de el ya se beneficia. Si quieres que haga un Tutorial (pfSense, OPNsense o OpenWRT, no he tocado nada mas). Pues me lo dices y cuando tenga algo de tiempo y ganas te lo preparo.