Chomper: herramienta de línea de comandos para bloquear sitios web en Linux
Chomper es una herramienta de código abierto que se utiliza para crear una lista de sitios web que se incluirán en la lista negra o en la lista blanca durante la sesión de navegación de un usuario. Chomper es una herramienta basada en terminal escrita en Python. Esto significa que se opera completamente desde la terminal. El motivo detrás de su diseño es ayudar a las personas a evitar distracciones en Internet y concentrarse en visitar sitios web productivos durante las horas de trabajo y también ayuda a bloquear temporalmente sitios web en su escritorio Linux. Chomper también se puede utilizar como una herramienta de control parental, por ejemplo, para limitar los sitios visitados por los niños.
Cómo funciona Chomper
A diferencia de otros bloqueadores que usan el archivo de hosts de Linux para filtrar direcciones IP y nombres de dominio, Chomper filtra las solicitudes salientes a través de un proxy transparente. Esto hace que Chomper sea ideal para filtrar contenido web a nivel de URL. Lo que tiene que hacer es completar la lista de qué bloquear y qué incluir en la lista blanca, Chomper hará el resto por usted.
Instalación de Chomper en Linux
La única forma de instalar Chomper en este momento es compilándolo a partir del código fuente. Un requisito previo para esto es la instalación de git, make y cmake. Dado que esta configuración se realiza en Ubuntu 16.04, todos los departamentos instalados son específicos de Ubuntu.
$ sudo apt-get install git cmake build-essential curl python-pip
Una vez hecho esto, proceda a instalar pyenv. Para esto, evitaremos la instalación manual y usaremos un instalador en su lugar.
# curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 2099 100 2099 0 0 2011 0 0:00:01 0:00:01 --:--:-- 2012 Cloning into '/home/jmutai/.pyenv' .....
Cargue pyenv automáticamente modificando ~ / .bash_profile expediente:
$ vim ~/.bash_profile
Luego añade:
export PATH="/home/jmutai/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
Para cargar el env manualmente, obtenga el archivo en su sesión actual.
$ source ~/.bash_profile $ pyenv versions * system (set by /home/jmutai/.pyenv/version)
Clonar Chomper de git.
$ git clone https://github.com/aniketpanjwani/chomper.git $ cd chomper $ make init
los hacer init El comando descargará paquetes específicos de chomper y preparará el entorno. Si opta por instalar CPython 3.6, es posible que tarde unos minutos en finalizar la configuración. Entonces deberías ver:
To activate this project's virtualenv, run the following: $ pipenv shell ....
Ahora inicie shell:
$ pipenv shell $ mitmdump # mitmdump Proxy server listening at http://*:8080
Una vez que el mitmdump comience por primera vez, salga de él usando una combinación de teclas: [ Ctrl+C Ctrl+C ]. Se generarán varios archivos de certificados.
# ls ~/.mitmproxy mitmproxy-ca-cert.cer mitmproxy-ca-cert.pem mitmproxy-ca.pem mitmproxy-ca-cert.p12 mitmproxy-ca.p12 mitmproxy-dhparam.pem
Necesitas importar mitmproxy-ca.pem certificado a su navegador.
Chrome: vaya a Configuración> Configuración avanzada> Administrar certificados> Autoridades. Haga clic en Importar, seleccione mitmproxy-ca.pem, marque las tres casillas y haga clic en Aceptar
Firefox: vaya a Preferencias> Privacidad y seguridad> Certificados> Ver certificados> Autoridades. Haga clic en Importar, seleccione mitmproxy-ca.pem, marque las tres casillas y haga clic en Aceptar.
Lo siguiente que debe hacer es habilitar el reenvío de IP.
# vim /etc/sysctl.d/99-sysctl.conf
Agregar:
net.ipv4.ip_forward=1 net.ipv6.conf.all_forwarding=1
Guarde y luego ejecute:
# sysctl -p
Usando Chomper
Chomper se configura utilizando archivos de sintaxis YAML con tres niveles.
- El primer nivel define los nombres de las reglas.
- El segundo nivel define si una regla es una lista negra o una lista blanca.
- El tercer nivel define las direcciones involucradas en una regla.
A continuación se muestra un archivo de configuración simple con algunas listas negras y listas blancas
$ cat data/rules.yaml work_allow: - block_type: - whitelist - addresses: - linoxide.com - stackoverflow.com work_block: - block_type: - blacklist - addresses: - facebook.com - twitter.com - youtube.com
Al ejecutar la aplicación chomper ubicada debajo compartimiento directorio, se requieren dos argumentos.
- los nombre de la regla
- los tiempo de bloque en minutos
Por ejemplo, para ejecutar la regla work_block durante 20 minutos. Yo ejecutaré
# cd bin # ./chomper work_block 20 New block in effect until 2018-02-20 23:34:08.
Esta regla bloquea sitios web específicos. Intente acceder a cualquiera de los sitios enumerados. Debería recibir un mensaje de banner que diga «¡El sitio web ha sido bloqueado por Chomper! «.
Conclusión
Hemos cubierto todas las cosas clave que necesita para comenzar a usar Chomper. Esta herramienta parece interesante. Todavía está fresco pero en desarrollo activo. La versión actual solo funciona para sistemas Linux, pero el desarrollador tiene como objetivo entregar una versión para MacOS y una GUI para ella. Disfruta usando Chomper.