Google+

30 marzo 2015

WiFi Canarias News -- Unboxing AirFiber 5X

Aquí te presento mi primera incursión como video blogger. La he compartido aquí, porque creo que puede ser muy interesante, debido a los productos sobre los que se va a hablar, principalmente Wireless.

 

Ya me dejarán su feedback.

19 febrero 2015

Configuración del firewall en Linux con IPtables



Un firewall es un dispositivo, ya sea software o hardware, que filtra todo el tráfico de red. El sistema operativo Linux dispone de un firewall llamado IPtables.
Iptables es un firewall incluido en el kernel de Linux desde la versión 2.4 que está incluido en el sistema operativo. Es un firewall basado en reglas, su funcionamiento se basa en aplicar reglas que el mismo firewall ejecute. Estas IPtables también se encuentran en los firmwares basados en Linux y por supuesto, los dispositivos Android.
El uso de IPtables es bastante complejo, por lo que vamos a hacer un vistazo general sobre sus opciones:

Para Iniciar/Parar/Reiniciar Iptables debemos ejecutar estos comandos:

  • sudo service iptables start
  • sudo service iptables stop
  • sudo service iptables restart

Los principales comandos de IPtables son los siguientes (argumentos de una orden):

  • -A –append → agrega una regla a una cadena.
  • -D –delete → borra una regla de una cadena especificada.
  • -R –replace → reemplaza una regla.
  • -I –insert → inserta una regla en lugar de una cadena.
  • -L –list → muestra las reglas que le pasamos como argumento.
  • -F –flush → borra todas las reglas de una cadena.
  • -Z –zero → pone a cero todos los contadores de una cadena.
  • -N –new-chain → permite al usuario crear su propia cadena.
  • -X –delete-chain → borra la cadena especificada.
  • -P –policy → explica al kernel qué hacer con los paquetes que no coincidan con ninguna regla.
  • -E –rename-chain → cambia el orden de una cadena.

Condiciones principales para Iptables:

  • -p –protocol → la regla se aplica a un protocolo.
  • -s –src –source → la regla se aplica a una IP de origen.
  • -d –dst –destination → la regla se aplica a una Ip de destino.
  • -i –in-interface → la regla de aplica a una interfaz de origen, como eth0.
  • -o –out-interface → la regla se aplica a una interfaz de destino.

Condiciones TCP/UDP

  • -sport –source-port → selecciona o excluye puertos de un determinado puerto de origen.
  • -dport –destination-port → selecciona o excluye puertos de un determinado puerto de destino.
Existen muchas mas condiciones para una configuración avanzada del firewall, pero las elementales ya las tenemos listadas.

Configurar reglas por defecto

La configuración por defecto de un firewall debería ser, traducido al español, “bloquear todo excepto [reglas]“. Para configurar el firewall para que bloquee todas las conexiones debemos teclear:
  • iptables -P INPUT DROP
  • iptables -P FORWARD DROP
  • iptables -P OUTPUT DROP
Con esto nos quedaremos sin internet, por lo que a continuación debemos empezar a crear reglas permisivas.

Para aplicar una regla que filtre un determinado puerto, debemos ejecutar:

  • iptables -A INPUT -p tcp –sport 22 22 → crea una regla para el puerto de origen tcp 2222

Para bloquear el tráfico procedente de una determinada IP, debemos ejecutar:

  • iptables -A INPUT -p tcp -m iprange –src-range 192.168.1.13-192.168.2.19 (ejemplo de IP)

También podriamos bloquear por MAC con la condición –mac-source.

  • iptables -A INPUT -m mac –mac-source 00:00:00:00:00:01
Una vez ejecutadas las reglas que queramos aplicar, debemos guardarlas tecleando sudo service iptables save

Ver el estado del firewall

  • iptables -L -n -v
El parámetro L muestra las líneas abiertas. V permite recibir más información sobre las conexiones y N nos devuelve las direcciones IP y sus correspondientes puertos sin pasar por un servidor DNS.

Eliminar las reglas existentes

Para borrar toda la configuración del firewall para volver a configurarlo de nuevo debemos teclear:
  • iptables -F

Permitir conexiones entrantes

Teclearemos los siguientes parámetros:
  • iptables -A INPUT -i [interface] -p [protocolo] –dport [puerto] -m state –state NEW,ESTABLISHED -j ACCEPT
-i: debemos configurar la interfaz, por ejemplo, eth0. Esto es útil en caso de tener varias tarjetas de red, si tenemos sólo una, no tenemos por qué especificar este parámetro.
-p: protocolo. Debemos especificar si el protocolo será TCP o UDP.
–dport: el puerto que queremos permitir, por ejemplo, en caso de HTTP sería el 80.
Un ejemplo para permitir las conexiones entrantes desde páginas web:
  • iptables -A INPUT -i eth0 -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j ACCEPT

Permitir las conexiones salientes

  • iptables -A OUTPUT -o [interfaz] -p [protocolo] –sport [puerto] -m state –state ESTABLISHED -j ACCEPT
-o: debemos configurar la interfaz, por ejemplo, eth0, al igual que en el caso anterior.
-p: protocolo. Debemos especificar si el protocolo será TCP o UDP.
–sport: el puerto que queremos permitir, por ejemplo, en caso de HTTPS sería el 443.
Un ejemplo para permitir el tráfico saliente hacia páginas web:
  • iptables -A OUTPUT -o eth0 -p tcp –sport 80 -m state –state ESTABLISHED -j ACCEPT

Permitir los paquetes ICMP

Por defecto, el ping está deshabilitado. Debemos habilitarlo manualmente añadiendo las correspondientes entradas en iptables. Para ello teclearemos:
Para poder hacer ping a otros servidores:
  • iptables -A OUTPUT -p icmp –icmp-type echo-request -j ACCEPT
Para permitir recibir solicitudes de ping de otros equipos:
  • iptables -A INPUT -p icmp –icmp-type echo-reply -j ACCEPT

Permitir que el tráfico interno salga a internet

En el caso de tener 2 tarjetas de red (eth0 en local y eth1 conectada a internet) podemos configurar el firewall para que reenvíe el tráfico de la red local a través de internet. Para ello escribiremos:
  • iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

Bloquear y prevenir ataques DDoS

  • iptables -A INPUT -p tcp –dport 80 -m limit –limit 25/minute –limit-burst 100 -j ACCEPT

Consultar los paquetes rechazados por iptables

Para saber los paquetes que iptables ha rechazado debemos teclear:
  • iptables -N LOGGING

Ejemplos prácticos:

Cómo bloquear las conexiones entrantes por el puerto 1234:
  • iptables -A INPUT -p tcp –dport 1234 -j DROP
  • iptables -A INPUT -i eth1 -p tcp –dport 80 -j DROP → bloquea en la interfaz eth1
Bloquear una dirección IP:
  • iptables -A INPUT -s 192.168.0.0/24 -j DROP
Bloquear una dirección IP de salida:
  • iptables -A OUTPUT -d 75.126.153.206 -j DROP
También podemos bloquear una url, por ejemplo, facebook:
  • iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP
Bloquear el tráfico desde una direccion MAC:
  • iptables -A INPUT -m mac –mac-source 00:0F:EA:91:04:08 -j DROP
Bloquear peticiones ping:
  • iptables -A INPUT -p icmp –icmp-type echo-request -j DROP
UFW (Uncomplicated Firewall) es una herramienta de configuración de firewall para Ubuntu desde la consola, desarrollado para facilitar la configuración del firewall Iptables. Ufw proporciona una manera fácil de crear un firewall basado en host IPv4 o IPv6.
Lo primero que debemos hacer es instalar ufw desde apt-get con:
  • sudo apt-get install ufw
Ahora ejecutamos el firewall tecleando sudo ufw enable. Para parar el firewall, teclearemos sudo ufw disable, y para reiniciarlo, primero lo pararemos y a continuación lo volveremos a arrancar con los comandos especificados.
Una vez tengamos el firewall funcionando, ya podemos comenzar a establecer reglas en su funcionamiento. Para aplicar una regla que permita por defecto todo el tráfico, tecleamos:
  • sudo ufw default allow
Por el contrario, para bloquear todo el tráfico, teclearemos:
  • sudo ufw default deny
Para aplicar reglas a determinados puertos, lo haremos mediante el comando:
  • sudo ufw allow\deny [puerto]/[protocolo]
Ejemplo:
  • sudo ufw allow 1234/tcp (permite las conexiones del puerto 1234 en tcp)
  • sudo ufw deny 4321/udp (bloquea las conexiones del puerto 4321 en udp)
Existe un archivo que contiene más reglas predefinidas en la ruta /etc/ufw/before.rules donde, por ejemplo, podemos permitir o bloquear el ping externo. Para ello, pondremos una # delante de la linea -A ufw-before-input -p icmp –icmp-type echo-request -j ACCEPT
Podemos consultar las reglas del firewall desde un terminal tecleando sudo ufw status
Como podemos ver, con UFW es bastante sencillo gestionar a nivel ipv4 e ipv6 nuestro firewall iptables. Todo ello podemos gestionarlo desde un terminal sin necesidad de disponer de una interfaz gráfica, pero aún podemos facilitarlo más con otra aplicación, llamada gufw, que es una interfaz gráfica para ufw que simplifica aún más su uso.
Para instalar gufw debemos escribir en un terminal sudo apt-get install gufw
Una vez instalado, lo ejecutamos escribiendo gufw o buscándolo en el panel de aplicaciones.
La primera ventana que nos muestra el programa nos permite activar y desactivar el firewall, establecer reglas por defecto para el tráfico entrante y saliente (permitir, rechazar y denegar), y, en la parte inferior, crear reglas.
Si pulsamos en el botón + de la parte inferior, accedemos al menú de configuración de reglas. Aqui podemos añadir reglas personalizadas en cuanto a puertos, aplicaciones, ips de origen, etc.
Para añadir una regla por puerto igual que hemos especificado desde terminal, seleccionamos si queremos permitir (allow) o bloquear (deny), si queremos que se filtre el tráfico entrante o saliente, el protocolo, ya sea tcp o udp y el puerto a filtrar.
Las posibilidades de iptables son prácticamente infinitas, y la dificultad de configuración aumenta exponencialmente según sean de complejas las configuraciones que queremos realizar. Desde RedesZone esperamos que con este pequeño tutorial podáis configurar vuestro firewall iptables a nivel básico de forma sencilla.

17 febrero 2015

Cómo activar la verificación en dos pasos para acceder a tu PC con Linux



Activar la verificación en dos pasos en Linux es una de las mejores formas de mejorar la seguridad, incluso robando nuestra contraseña nadie tendrá la capacidad de entrar a nuestro PC si no posee nuestro smartphone.

Articulo de Ander Raso en Hipertextual


Cómo activar la verificación en dos pasos para acceder a tu PC con Linux

A estas alturas todos sabemos que usar la misma contraseña en multitud de sitios diferentes es un grave fallo de seguridad. Si dicha contraseña es robada, un atacante podría tener acceso a todo lo que hayamos protegido con esa clave. Sin embargo, llevar la cuenta de todas esas contraseñas distintas que hagamos puede ser realmente difícil, necesitando al final ayudas como programas que nos las organicen. Muchos de estos organizadores de claves a su vez, necesitan de una contraseña maestra, la cual, si es robada concede acceso a las demás claves.

Para proteger nuestras cuentas existen otros métodos que ofrecen un paso de seguridad extra, como por ejemplo la verificación en dos pasos. Este método es muy sencillo, pues solo se necesitan dos cosas diferentes. La primera es algo que sabemos, nuestra contraseña y lo segundo es algo que tenemos, nuestro smartphone. Con la verificación en dos pasos, para entrar a nuestra cuenta tendremos que usar un usuario y contraseña, pero después nos pedirá una clave de verificación aleatoria que conseguiremos de nuestro teléfono. Por lo tanto, para que alguien entre en una cuenta nuestra no le valdrá con saber la contraseña de la cuenta, porque también necesitará nuestro teléfono para ingresar una clave de verificación que además está constantemente en cambio.

En este artículo, vamos a usar el servicio de verificación en dos pasos que proporciona Google para fortalecer la seguridad de nuestro usuario en un sistema Linux. El resultado final será una cuenta a la que después de ingresar nuestro usuario y contraseña, nos pedirá una clave de verificación que se generará en nuestro smartphone y que cambiará cada treinta segundos.

Paso 1: Instalar las herramientas necesarias

Los pasos de está guía han sido realizados en la distribución Ubuntu 14.10, en un entorno Unity con el administrador de sesiones LightDM, pero los principios son aplicables para otras distribuciones.

En el PC: Google Authenticator PAM

Lo primero que debemos hacer es abrir una terminal y ejecutar el comando de instalación (para otras distros puede que tenga un nombre diferente):

$ sudo apt-get install libpam-google-authenticator

En el smartphone: Google Authenticator (u otra que haga una función similar)

Instalamos Google Authenticator desde Google Play si estamos en Android. También está disponible para iOS.


Paso 2: Configurar la verificación en dos pasos en Linux


En el ordenador:






Para conseguir mejorar la seguridad con la verificación en dos pasos en Linux, haremos una clave secreta, a partir de la cual nuestro smartphone creará las claves de verificación que nuestro PC pedirá al hacer login. Para ello, en una terminal ejecutaremos el siguiente comando:

$ google-authenticator

Nos pregunatará si queremos que las claves de verificación estén basadas en el tiempo, contestaremos que sí con y. Lo que veremos ahora será un código QR que nuestro smartphone podrá reconocer vía Google Authenticator. También podemos introducir la clave secreta directamente en la aplicación, es la que pone your new secret is: clave. En este punto, nos da una serie de códigos de emergencia por si no llevamos el móvil encima, que sería conveniente tenerlos a mano por si las moscas. También nos dará más opciones sobre las claves de identificación, a las que contestaremos con y o n dependiendo de nuestras preferencias personales.

Ahora debemos abrir el archivo de configuración del administrador de sesiones LightDM:

sudo gedit /etc/pam.d/lightdm

Al final del archivo añadiremos la siguiente línea:

auth required pam_google_authenticator.so nullok



Guardamos el archivo y la próxima vez que iniciemos sesión comprobaremos que nos pide una clave de verificación. El nullok es para que los usuarios que no hayan configurado la verificación puedan entrar normalmente a su sesión.

En el móvil:

Necesitamos el teléfono para que nos cree las claves de verificación. Una vez añadida a Google Authenticator la clave secreta creada en el paso anterior vía código QR o manualmente, le pondremos el nombre que queramos a esta nueva cuenta y seleccionaremos la opción "basada en el tiempo". Ahora en nuestro teléfono veremos como cada 30 segundos va cambiando la clave de verificación para nuestro PC.



Con esto la tenemos una verificación en dos pasos en Linux. Si un día queremos retirar esta verificación, solo tendremos que borrar la línea que añadimos al archivo /etc/pam.d/lightdm.

LinkWithin

Related Posts Plugin for WordPress, Blogger...