Cómo hacer una red wifi que sólo transmite imágenes del gato con una frambuesa pi

Es un escenario de caso de uso común: desea difundir una red WiFi pública para que cualquiera lo use, pero tienes requisitos estrictos que sólo se permitirá imágenes de gatos. Una gran noticia: el Raspberry Pi es una perfecta transmoggification máquina. Intrigado? Leyendo.

Vídeo: ✅ Como crear su propia App en Android para controlar Arduino (Bluetooth) Tutorial

Lo que necesitarás

  • Frambuesa Pi modelo B (Nuevo en Raspberry Pi? Aquí está todo lo que un principiante tendría que saber, en forma de vídeo)
  • 4 GB o tarjeta SD más grande
  • Cable de ethernet
  • adaptador WiFi compatible
  • MicroUSB cable de alimentación y el adaptador

La teoría

Este proyecto comienza idéntica a la onion Router construimos un par de semanas atrás. Haremos la Raspberry Pi en una red Wi-Fi estándar en primer lugar, a continuación, colocar un proxy en el medio. El proxy filtrará mensajes a través de un script en Perl, que sustituirá a las imágenes en cada petición HTTP con los GIF gato de TheCatAPI.com. Mira como usuarios confundidos son intensamente tanto frustrado, sin embargo extrañamente calmado. A continuación de la BBC, las modificaciones post-gato.Construir su propio: Safeplug (Recuadro proxy Tor)Construir su propio: Safeplug (Recuadro proxy Tor)¿Por qué pagar $ 50 para una caja de proxy Tor cuando usted puede hacer su propia con un dispositivo de seguridad Frambuesa Pi y USB WiFi?Lee mas

post-cat-BBC

Realización de una red Wi-Fi

Desde esta parte del tutorial es exactamente el mismo que el Onion Router bricolaje, por favor, siga las instrucciones allí hasta el punto de instalar Tor.Construir su propio: Safeplug (Recuadro proxy Tor)Construir su propio: Safeplug (Recuadro proxy Tor)¿Por qué pagar $ 50 para una caja de proxy Tor cuando usted puede hacer su propia con un dispositivo de seguridad Frambuesa Pi y USB WiFi?Lee mas

El único pequeño cambio que necesitamos hacer es difundir una red Wi-Fi abierta en lugar de uno asegurado con WPA. Una vez que haya seguido la configuración de ahí, el cambio /etc/hostapd/hostapd.conf, pegar en las siguientes configuraciones en su lugar. Reiniciar para aplicar los cambios.

interfaz=wlan0driver=nl80211ssid=Kittenshw_mode=gchannel=6auth_algs=1wmm_enabled=0

Ahora debe tener una red inalámbrica está emitiendo en su Pi frambuesa que es accesible al público. El resto de esta guía se centrará en conseguir las cosas interesantes sucediendo.

Si las cosas no están funcionando, escriba:

ifconfig -un

y buscar una dirección IP en wlan0. Si uno no se le ha asignado en el reinicio, intente lo siguiente:

sudo nano / Etc / default / ifplugd

Cambie las siguientes líneas de:

INTERFACES="auto"HOTPLUG_INTERFACES="todas"

a:

INTERFACES="eth0"HOTPLUG_INTERFACES="eth0"

Reiniciar, y verificar que es capaz de conectarse a la red Wi-Fi, y acceder a Internet.

Squid proxy y IPTables

Lo primero es instalar los requisitos previos, a continuación, crear una nueva tabla de enrutamiento. Serviremos imágenes de la Frambuesa Pi más tarde, por lo que también necesitaremos Apache servidor web.

sudo apt-get instalar squid3 puente-utils Apache Perlnano iptables.sh

Pegue el siguiente:

iptables -t nat -A POSTROUTING -j MASQUERADEiptables -t nat -A PREROUTING -i wlan0 -p tcp tcp -m --dport 80 -j DNAT --a-destino 192.168.42.1:3128iptables -t nat -A PREROUTING -i eth1 -p tcp tcp -m --dport 80 -j REDIRECT --to-puertos 3128

Guardar y salir.

chmod +x iptables.shsudo cp iptables.sh /etc/init.d/sudo update-rc.d iptables.sh empezar 99

iptable-SH-error

Ignorar las advertencias, sólo significa que no hemos cumplido con algunas normas de Debian (pero no se rompe nada). Por último, todavía tenemos la edad iptables normas en el arranque, por lo que eliminan la siguiente línea de / etc / network / interfaces

iptables-restore lt; /etc/iptables.ipv4.nat

(Eliminar o comentario que fuera)

A continuación, reinicie. A continuación vamos a borrar el valor por defecto de configuración de proxy Squid, y hacer una nueva.

sudo rm /etc/squid3/squid.confsudo nano /etc/squid3/squid.conf

Pegue el siguiente en el archivo en blanco:

cache_mgr picachemgr_passwd pi allredirect_program gerente /home/pi/cats.placl proto cache_objectacl localhost src 127.0.0.1/32 :: 1acl to_localhost DST 127.0.0.0/8 0.0.0.0/32 :: 1acl localnet src 192.168.42.0/24 # RFC1918 posible red internapuerto acl SSL_ports 443acl puerto Safe_ports 80 # httpacl puerto Safe_ports 21 # ftpacl puerto Safe_ports 443 # httpsacl puerto Safe_ports 70 # gopheracl puerto Safe_ports 210 # WAISacl puerto Safe_ports 1025-65535 # puertos no registradospuerto acl Safe_ports 280 # Http-MGMTacl puerto Safe_ports 488 # GSS-httpacl puerto Safe_ports 591 # FileMakeracl puerto Safe_ports 777 # Http MultiLingacl método CONNECT CONNECThttp_access permite gestor de localhosthttp_access negar negar managerhttp_access !Safe_portshttp_access negar CONNECT !SSL_portshttp_access permite localnethttp_access permite localhosthttp_access negar allhttp_port 3128 transparenteumask 022cache_mem 128 MBcache_dir UFS / var / spool / squid3 1500 16 256coredump_dir / var / spool / squid3refresh_pattern ^ ftp: 1440 20% 10080refresh_pattern ^ gopher: 1440 0% -i 1440refresh_pattern (/ Cgi-bin /|?) 0 0% 0refresh_pattern . 0 20% 4,320

Guardar y Salir. Inicializar los directorios de caché con el siguiente comando, a continuación, editar el script vamos a utilizar para catify todas las imágenes:

sudo squid3 -znano /home/pi/cats.pl

Pegar en:

#! / Usr / bin / perlps|=1-$ recuento = 0-$ pid = $$-abierto (DEPURAR, `Gt; gt; /tmp/cats.log`)-autoflush DEBUG 1-DEBUG de impresión "################################################## ######################norte"-mientras (lt;gt;) {Chomp ps-Si (m / nosquid /) {DEBUG de impresión "NOSQUID de entrada: $ urlnorte"-impresión "psnorte"-DEBUG de impresión "NOSQUID de salida: psnorte"-}elsif (ps =~ /(.* . Jpg)/yo) {$ url = $ 1-DEBUG de impresión "Entrada: $ urlnorte"-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.gif", "https://thecatapi.com/api/images/get?format=src&type = gif&nosquid")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.gif"-impresión "https://127.0.0.1/images/$ pid-$ recuento.gif n"-}elsif (ps =~ /(.* . Gif)/yo) {$ url = $ 1-DEBUG de impresión "Entrada: $ urlnorte"-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.gif", "https://thecatapi.com/api/images/get?format=src&type = gif&nosquid")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.gif"-impresión "https://127.0.0.1/images/$ pid-$ recuento.gif n"-}elsif (ps =~ /(.* . Png)/yo) {$ url = $ 1-DEBUG de impresión "Entrada: $ urlnorte"-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.gif", "https://thecatapi.com/api/images/get?format=src&type = gif&nosquid")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.gif"-impresión "https://127.0.0.1/images/$ pid-$ recuento.gif n"-}elsif (ps =~ /(.* . Jpeg)/yo) {$ url = $ 1-DEBUG de impresión "Entrada: $ urlnorte"-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.gif", "https://thecatapi.com/api/images/get?format=src&type = gif&nosquid")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.gif"-impresión "https://127.0.0.1/images/$ pid-$ recuento.gif n"-}más {impresión "psnorte"-}$ recuento++-}

Haga el script ejecutable, y también NED para hacer algunos directorios para que funcione con.

sudo chmod +x cats.plsudo mkdir / Var / www / imágenessudo chmod 777 / var / www / imágenessudo usermod -un proxy -G www-datasudo chown www-data: www-data / var / wwwsudo chown www-data: www-data / var / www / imágenestoque /tmp/cats.logchmod 777 /tmp/cats.log

Puede cola el registro en cualquier momento con:

cola -f /tmp/cats.log

del final del registro

Vídeo: Como me comosi con mi dueño ruben y Raspberry( =①ω①=)

Intenta iniciar sesión en Pinterest, y de repente todos esos estúpidos bricolaje proyectos de plantas en macetas y modas para hombre picos y será mucho más atractivo.

mejor pinterest

Si prefiere servir las imágenes cara abajo (Crédito por el guión original de Ex-loro, sólo modificado para hacer frente a algunos errores de permisos), crear upsidedown.pl y pegar en la siguiente.

#! / Usr / bin / perlps|=1-$ recuento = 0-$ pid = $$-mientras (lt;gt;) {Chomp ps-Si (ps =~ /(.* . Jpg)/yo) {$ url = $ 1-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.jpg", "$ url")-sistema("/ Usr / bin / mogrify", "-dar la vuelta","/ Var / www / images /$ pid-$ recuento.jpg")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.jpg"-impresión "https://127.0.0.1/images/$ pid-$ recuento.jpg n"-}elsif (ps =~ /(.* . Gif)/yo) {$ url = $ 1-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.gif", "$ url")-sistema("/ Usr / bin / mogrify", "-dar la vuelta","/ Var / www / images /$ pid-$ recuento.gif")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.gif"-impresión "https://127.0.0.1/images/$ pid-$ recuento.gif n"-}elsif (ps =~ /(.* . Png)/yo) {$ url = $ 1-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.png", "$ url")-sistema("/ Usr / bin / mogrify", "-dar la vuelta","/ Var / www / images /$ pid-$ recuento.png")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.png"-impresión "https://127.0.0.1/images/$ pid-$ recuento.png n"-}elsif (ps =~ /(.* . Jpeg)/yo) {$ url = $ 1-sistema("/ Usr / bin / wget", "-q", "-O","/ Var / www / images /$ pid-$ recuento.jpeg", "$ url")-sistema("/ Usr / bin / mogrify", "-dar la vuelta","/ Var / www / images /$ pid-$ recuento.jpeg")-chmod 0777,"/ Var / www / images /$ pid-$ recuento.jpeg"-impresión "https://127.0.0.1/images/$ pid-$ recuento.jpeg n"-}más {impresión "psnorte"--}$ recuento++-}

Siga los demás pasos anteriores, cambiando el nombre del archivo, para hacer el script ejecutable, y modificar la configuración de calamar para apuntar a upsidedown.pl en lugar de cats.pl. Por último, tendrá que reiniciar calamar con:

sudo Servicio reinicio squid3

Los resultados son bastante impresionantes en ambos casos. Si realiza modificaciones o mejorar en estas secuencias de comandos con características adicionales, por favor me deje en los comentarios y poner un enlace a su script Pastebin.

¿Necesita algo más complicado? Usted podría intentar combinar este proyecto con una Frambuesa Pi NAS o un siempre activa descargador torrente!Dé vuelta a su Raspberry Pi en una caja NASDé vuelta a su Raspberry Pi en una caja NAS¿Tiene un par de discos duros externos por ahí y una frambuesa Pi? Hacer un dispositivo de almacenamiento barato de baja potencia en red adjunta de ellos. Mientras que el resultado final no va a ser tan ...Lee mas

Artículos Relacionados