Mostrando entradas con la etiqueta red. Mostrar todas las entradas
Mostrando entradas con la etiqueta red. Mostrar todas las entradas

martes, 26 de agosto de 2014

iceweasel, tor y dns leaks

Para los que no conozcáis iceweasel, he de decir que es un fork totalmente libre de firefox, y el navegador predeterminado de Debian. De cualquier forma, es mi navegador habitual.

Todo empezó el pasado domingo, cuando me decidía a bajarme el último capítulo de una de esas series extranjeras que sigo y que aquí ni se estrenaron, ni se estrenan, ni se las espera. La página no estaba disponible. Como no tenía la IP de la página, comprobé su estado a través del servicio: downforeveryoneorjustme.com.

Era solo yo. Entonces me di cuenta de que mi ISP había decidido volver a bloquear ciertas páginas de descargas. Páginas de esas que tan poco les gusta a unos y que tan útiles nos resultan a otros.

Esto me enfadó bastante. Por una parte, por qué están bloqueadas otra vez? Hay una sentencia judicial reciente que les obliga a levantar el bloqueo. Por otra parte, qué anduve haciendo con mis DNS y por qué me dejé puestas las que usa el ISP y no las OpenDNS? (Seguro que ya no eran horas...) En ese momento pensé que tal y como están las cosas (gracias a un buen puñado de ministros inútiles) sería mejor bajar el torrent a través de TOR (siempre cifrando el tráfico del cliente de descargas, claro). Pero... Tampoco resolvía!

WTF? AYFKM??? DNS LEAKS?!?!?!

Cambio las DNS y me dispongo a comprobar si hay fugas con wireshark. Efectivamente, unas fugas de DNS tan grandes que no sabía si tendría que pagarles el IBI. D'OH!!!.

Inmediatamente se me vino a la cabeza una mala configuración de firefox/bug que provocaba estas fugas (allá por el 2012...), y fui directo al about:config a comprobarlo, por si era heredada.

Después de cambiar la variable network.websocket.enabled y ponerla a false, me vuelvo a wireshark, a ver que tal están las cosas ahora y... Sigo con fugas! D'OH!!! (2).

Pero ya que estamos aquí, y por aquello de no dar dos viajes, vamos a rebuscar un poco en las opciones relacionadas con las DNS...

network.proxy.socks_remote_dns = false? Vamos a ponerla a true... A ver qué dice ahora wireshark...

Efectivamente, era eso. Y yo dejando mi rastro de miguitas de DNS por TOR :'(

Gran lección aprendida: Antes de salir de casa hay que hacer siempre los deberes.

Así que ya sabéis, cuidado con esas fugas!

*Nota: Algunas extensiones pueden revelar nuestra IP aún mientras estamos utilizando TOR o i2p. Haced los deberes!

*Nota 2: Los enlaces están apuntando a meneame.net y wikipedia intencionadamente. No pienso enlazar a ningún medio de AEDE.

Enjoy! ;)

martes, 22 de julio de 2014

configurar tp-link TL-WN725N v2 con wpa2 y dhcp en una raspberry pi con raspbian


Raspberry Pi es un ordenador de tamaño reducido (aproximadamente del tamaño de una tarjeta de crédito). Su consumo de 2.5W (modelo A) o 3.5W (modelo B) y sus características hacen de él un aparato muy versátil.


Cuando compré la raspberry, también compré el adaptador nano usb wifi TP-LINK TL-WN725N, con el objetivo de poder conectar la raspberry a una red inalámbrica cuando fuese necesario.

Actualmente, hay dos versiones de este adaptador: La v1 y la v2. Mientras que la v1 funciona directamente, para conseguir que funcione la v2 hay que instalar el driver. Para conectarnos con la raspberry pi a una red con DHCP protegida con WPA2-PSK utizando el adaptador nano usb wifi TP-LINK TL-WN725N bajo raspbian hay que realizar los siguientes pasos:

  1. Descargar e instalar el driver
    1. Averiguar la versión del kernel de raspbian

      Para concer la versión del kernel que está utilizando raspbian ejecutamos el comando:

      $ uname -r

    2. Descargar el driver

      La lista más completa de drivers la he encontrado en el blog de mendrugox, en la entrada: TP-LINK TL-WN725N v2 working on Raspberry Pi (Raspbian), donde se encuentran una lista con el driver para cada kernel y las instrucciones de instalación.

    3. Descomprimir el archivo

      Las últimas versiones del driver continen un fichero de módulo de kernel linux (.ko) y un fichero de firmware (.bin).

    4. Instalar el fichero de módulo de kernel linux

      # mv fichero.ko /lib/modules/version_del_kernel/kernel/drivers/net/wireless

    5. Instalar el fichero de firmware

      # mv fichero.bin /lib/firmware/rtlwifi/

    6. Añadir el módulo al kernel

      # depmod -a # modprobe 8188eu

      *Si al instalar el driver aparece el mensaje "Exec format error" es que la versión del driver no es la correcta para el kernel.

    7. Configurar la carga automática del módulo

      Editar el fichero /etc/modules (como root) y añadir la línea: 8188eu

    8. Reiniciar la raspberry

      # sudo reboot

  2. Configurar la red wifi
    1. Añadir la configuración al fichero /etc/network/interfaces

      Editar el fichero /etc/network/interfaces (como root) y añadir las siguientes líneas:

      allow-hotplug wlan0
      iface wlan0 inet manual
      wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
      iface default inet dhcp

      Consultar la información sobre la red

      # iwlist scan

      Este punto es muy importante. Con este comando se podemos consultar toda la información sobre una red wifi al alcance, por si tenemos alguna duda. Los puntos más importantes son los que nos ofrecen información sobre el tipo de cifrado utilizado:

      Group Cipher
      Pairwise Ciphers
      Authentication Suites

    2. Generar la clave WPA-PSK

      Vamos a generar una clave cifrada, para no dejar la clave de la red en plano en el fichero de configuración.

      # wpa_passphrase essid passphrase

      Anotamos la línea: psk=...

    3. Configurar wpa_supplicant

      Editar el fichero de configuración /etc/wpa_supplicant/wpa_supplicant.conf (O el que hayamos indicado en /etc/networking/interfaces) y añadir las siguientes líneas:

      network={
      ssid= nuestro_essid
      scan_ssid=1
      psk=clave_wpa_psk_generada_antes
      proto=RSN
      key_mgmt=WPA-PSK
      pairwise=CCMP TKIP
      group=CCMP TKIP
      }

      *En este apartado es dónde cobran importancia los datos sobre el cifrado de la red que hemos apuntado antes. Las configuraciones varían dependiendo del tipo de cifrado utilizado. Se puede encontrar más información en el man de wpa_supplicant

    4. Levantar la interfaz de red

      # ifup interfaz_de_red

Notas:

El driver USB utiliza memoria del kernel, y cuando el tráfico es muy alto, esta memoria se agota y causa cuelgues. Para solucionarlo hay dos alternativas:

  1. Adelantar la solicitud de memoria de página

    Para esto hay que editar el fichero /etc/sysctl.conf y modificar el valor de la línea

    vm.min_free_kbytes = 8192

    para dejarla:

    vm.min_free_kbytes = 16384

  2. Limitar el ancho de banda

    Esta opción es la menos apetecible. Pero cuando no hay otra alternativa... Podemos limitar cómodamente el ancho de banda de una tarjeta de red podemos utilizar wondershaper.

    # wondershaper wlan0 kbps_bajada kbps_subida

Enjoy!

Fuentes

domingo, 15 de septiembre de 2013

ssh sin contraseña, utilizando claves rsa

Supongamos que tenemos dos equipos entre los que nos conectamos habitualmente utilizando ssh.El equipo1 (10.0.0.1) y el equipo2 (10.0.0.2).

Al conectarnos con mucha frecuencia, introducir la contraseña cada vez que nos conectamos se convierte en una labor repetitiva, cansina y en una pérdida de tiempo. Para poder conectarnos entre ellos de forma cómoda y segura, podemos hacerlo utilizando claves rsa, en vez de contraseña.


Esquema de los equipos y sentido de la conexión ssh
Esquema de los equipos y sentido de la conexión ssh

Para poder conectarnos mediante ssh utilizando las claves rsa, en lugar de tener que introducir la contraseña:

En el equipo1 creamos las claves rsa pública y privada:

rubenhortas@equipo1:~/.ssh$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rubenhortas/.ssh/id_rsa): [ENTER]
Enter passphrase (empty for no passphrase): [ENTER*]
Enter same passphrase again: [ENTER*]
Your identification has been saved in /home/rubenhortas/.ssh/id_rsa.
Your public key has been saved in /home/rubenhortas/.ssh/id_rsa.pub.
The key fingerprint is:
**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**
The key's randomart image is:


< Que te lo voy a decir ;)>
 ------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
*Dejad la passphrase en blanco, porque si no la va a pedir cada vez que nos conectemos al equipo2 por ssh

Copiamos la clave pública al equipo2:

rubenhortas@equipo1$ ssh-copy-id -i ~/.ssh/id_rsa.pub 10.0.0.2
The authenticity of host '10.0.0.2 (10.0.0.2)' can't be established.
RSA key fingerprint is **:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**.
Are you sure you want to continue connecting (yes/no)? yes
/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
rubenhortas@10.0.0.2's password: [CONTRASEÑA EQUIPO2]

Por último nos conectamos al equipo2 por ssh, y comprobamos que no nos pide la contraseña.

Enjoy!

jueves, 30 de diciembre de 2010

esta tu isp limitando tu velocidad de bajada?

Para saber si nuestro ISP está (o no) manipulando nuestra velocidad de bajada para sitios específicos, podemos ejecutar el Glasnost test.

El test usa un applet java para compara la velocidad normal de bajada con la velocidad al utilizar p2p (bitorrent, emule, gnutella), aplicaciones estándar (email, http, ssh, nntp) y vídeos flash (por ejemplo youtube).

Si tenemos sospechas de que nuestro ISP está limitando nuestra velocidad, podemos ejecutar el test a diferentes horas del día, por si sólo la limita durante horas puntas.

Antes de ejecutar el test, es aconsejable:
  • Desenchufar el router y dejarlo un par de minutos apagado.
  • Desconectar todos los equipos de la red (menos el que vamos a usar para hacer el test >;))
  • Conectar nuestro ordenador mediante cable de red (no por wifi) al router
  • Desactivar todos los programas que se conecten a internet de nuestro ordenador -yo no recomiendo cerrar antivirus ni firewalls-
  • Comprobar qué procesos en nuestra máquina están utilizando intenernet -por ejemplo con netstat-
  • Mirar la velocidad a la que está sincronizando el router en el propio router
  • Ejecutar algún test de velocidad (speedtest.net, adsl4ever.com,...) para corroborar la velocidad a la que sincroniza el router


Vía: lifeahcker

domingo, 8 de agosto de 2010

mtr, combina ping y traceroute

MTR es una alternativa, para os x, a ping y a traceroute. Esta herramienta para diagnóstico de red muestra los detalles de la conexión entre nuestra máquina y un host destino, mostando los saltos (como traceroute) y enviando ICMP ECHOs (como ping) para calcular la calidad del enlace.

Se puede instalar desde los darwin ports o compilando el código fuente.

Vía: osxdaily

Código de MTR desde la página de los desarrolladores

Instalar MTR desde los darwin ports