Firewall usando UFW en un servidor Ubuntu /  Debian

Aprende como configurar un firewall usando UFW ( Uncomplicated Firewall ) en un servidor Ubuntu / Debian.

Soy de las personas que siempre a usado IPTables para configurar el firewall de un servidor, pero la verdad es que no lo se de memoria y siempre debo recordarlo al momento de realizarlo. Esto es debido a que no lo hago muy seguido y no es muy amigable.

UFW es una herramienta o frontend que agrega estas reglas al firewall de iptables de una manera sencillo y casi humana de entender, por lo que para mi ha sido genial debido a que puedo tener la fortaleza de iptables pero de una manera que es muy práctica y difícil de olvidar.

Hace poco menos de un año que comencé a usar UFW para gestionar las reglas de IPTables, y se lo recomendé a muchas personas debido a su simplicidad.  Este jueves fui  a casa de un amigo y me encontré que estaba configurando un servidor debian usando UFW y empecé a ver el proceso y ayudarlo un poco ( ¡ Pero solo de curioso ! No creo que haya necesitado ayuda en verdad ).  Me di cuenta que recordaba todos los comandos de como usarlo y no mucha gente lo conoce, por lo que la recomendación ahora se extiende con un mini tutorial de como usarlo a todo aquel quién le sirva.

En este caso el tutorial lo haré con un ejemplo de un sitio wordpress que corre en un servidor Ubuntu 14.04 que debo configurar.

Ya teniendo el sitio andando, lo primero que quiero hacer es bloquear todas las conexiones por defecto excepto al puerto 80 ( http ) y al 22 ( ssh )

Si no tienes ufw simplemente lo instalamos :

sudo apt-get install ufw

Podemos ver el estado de las reglas actuales ejecutando

sudo ufw status

Si estás partiendo de cero igual que yo, lo más probable que el resultado sea  : «Status: inactive»

Para activarlo simplemente ejecutamos :

sudo ufw enable

Antes de hacer cualquier cosa, agreguemos la regla de ssh para las conexiones permitidas en caso de que bloquemos todo por error.

# sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)

A esta altura tenemos el servidor de firewall activo, y tenemos dos reglas para acceso ssh por IPV4 y IPV6.

Lo siguiente que me gusta hacer es que por defecto de bloqueen todas las conexiones entrantes, es aquí donde alguien puede diferir conmigo, pero para mi lógica es mejor bloquear todo y luego aceptar que aceptar y luego bloquear.  Esto lo hacemos de la siguiente manera :

sudo ufw default deny incoming

Si trabajas con webservices y no coneces los puertos por los que tu servidor se conectará a futuro a ellos, lo más sencillo es dejar que la política de conexiones salientes sea para permitirlas todas. Esto sería bueno cambiarlo a futuro cuando tengas certeza a que servidores te vas a conectar y sus puertos.

sudo ufw default allow outgoing

A esta altura tenemos el servicio andando, aceptando conexiones ssh, pero no podemos acceder a nuestra página web. Para hacerlo lo podemos hacer de dos maneras, especificando el servicio o el puerto. Adjunto las dos formas :

sudo ufw allow http
sudo ufw allow 80/tcp

Si bien, esto es todo lo que quiero incluir en este tutorial, hay otra cosa que se debería hacer que recomiendo. Me gusta cambiar el puerto del ssh a un puerto obviamente que vayas a recordar.

Imaginemos que este puerto es el 2228, lo que haremos es agregar esta regla al firewall y luego lo cambiaremos en la configuración del ssh.

sudo ufw allow 2228

Editamos el archivo de configuración del server ssh :

sudo vim /etc/ssh/sshd_config

Y editamos la línea que dice Port por el puerto que nosotros queramos ocupar y reiniciamos el servicio ssh.

sudo service ssh restart

En estos momento ya necesito el nuevo puerto para acceder, pero tenemos reglas que nos sobran. Ahora podemos eliminar nuestra regla de ssh que creamos en un comienzo debido a que ya no la vamos a utilizar.

sudo ufw delete allow ssh

Ya, ahora tenemos un server PSEUDOSEGURO, o al menos mucho mejor de lo que viene por defecto. Ojala les sirva !

Origen: How To Setup a Firewall with UFW on an Ubuntu and Debian Cloud Server | DigitalOcean

👉 ¿Te gustó este contenido? Hay más esperando por ti.

Cada semana, comparto aprendizajes y reflexiones que no encontrarás en ningún otro lugar. ¡Únete a la comunidad de más de 9,000 emprendedores que ya están avanzando!

El cómo el #eCommerce debe enfrentar fechas estacionarias | @StarterDaily

En la realidad actual de los eCommerce, y los problemas o crisis que podemos tener como país, solo nos queda prepararnos con anticipación para estas fechas…

En particular, como empresa manejamos varios eCommerce y tengo contacto con muchos más que funcionan con algunos de los plugin que he desarrollado, o incluso de emprendedores que han necesitado un empujoncito para partir.

Tomando esto en consideración en los últimos meses la cantidad de ventas que se han generado a través de internet ha decrecido bastante, lo que se puede deber a un nivel de incertidumbre que tenemos como clientes en el futuro. Sin importar la verdadera razón de esto, hay fechas emblemáticas como lo fue el domingo pasado el día de la madre para las cuales podemos prepararnos con antelación.

En estas fechas emblemáticas no importando la situación actual en que nos encontremos estamos casi obligados a comprar algo para nuestros seres queridos.

Según el artículo de StarterDaily las recomendaciones de la consultora de Marketing Digital Multiplica son los siguientes.

Leer más

Redireccionar HTTP a HTTPS con ModRewrite y .htaccess

En general cuando manejas wordpress y cambias la dirección del sitio por defecto a HTTPS, se manejan internamente las redirecciones para poder usar las nuevas direcciones.

El problema a veces es simplemente la página de inicio, que no se redirecciona por defecto. Hay plugins que te pueden hacer la vida más sencilla en esto, pero obviamente soy de las personas que no les gusta el camino fácil.

Si tu servidor tiene el mod_rewrite de apache2 activado, lo más sencillo es decirle que «reescriba» las direcciones dependiendo del contenido, y simplemente haga una redirección ( 301 ).

A continuación veremos como redireccionar las url para la que corresponda. Este es el mismo proceso que se usa para cuando cambias tu web de dirección.

Leer más

Webpay Plus Webservices y Woocommerce

El WebServices debe de ser contratado en el siguiente link https://www.transbank.cl/public/productos-y-servicios/webpay/webservices-con-autorizacion-y-captura-simultanea/ ya que los códigos son diferentes.

Hace un tiempo ya que quería dejar de usar el KCC con los CGI ( Webpay Plus normal ) de lado para poder vender a través de mis sitios de eCommerce, y hoy al final es el gran día.

La verdad no ha sido un proceso sencillo, he tenido muchos problemas para poder terminar este plugin, muchos de mis amigos y los chicos de Transbank lo saben, pero ya está listo :D. Gracias a los que me apoyaron y me escucharon patear la perra una y otra vez…. y otra vez más.

Mi primer sitio con esta tecnología funcionando es Kingsons.cl , en donde están todos cordialmente invitados a comprar una mochila para ver como funciona el plugin 🙂 . Les recomiendo la mochila para andar en bicicleta que es la que más estoy usando en este momento.

Antes que todo, por que prefiero usar un WebService y no el KCC ;

Leer más

Creando un Correo de Respaldo Con Google APPS.

Actualmente en nuestra empresa si trabajamos con Google Apps for Work, lo cual si nos ha ayudado en muchas situaciones para estandarizar procesos y externalizar el servicio de correos sin que sea un problema para nosotros.

Dentro de las soluciones que hemos implementado es la de tener un correo de respaldo de todos los correos entrantes y salientes de la empresa, de tal manera que nunca pierda información que puede llegar a ser valiosa en un futuro.

La verdad esto es muy sencillo de lograr. Lo primero que se debe de hacer es contar con este correo de respaldos.

Luego vamos a nuestro panel de administración de Google, vamos al menú de Apps y luego de Google Apps ( Lo tengo en inglés, si lo tienen en otro idioma puede ser un poco diferente. )

Menú de Google Apps
Menú de Google Apps

Hacemos click en Gmail y nos vamos a la configuración avanzada ( al final de la página debería de aparecer el link )

Ahora, en la pestaña de General Settings encontraremos al fnal las dos opciones que nos interesan; «Receiving Routing» y «Sending Routing».

Sending and Receiving Routing
Sending and Receiving Routing

El proceso para ambos es igual, por ejemplo. Si seleccionamos Sending Routing para respaldar todos los correos de salida;

  1. en el punto 1 haremos click en «Outbound e Internal» para respaldar incluso los correos dentro de la misma organización.
  2. en el punto 2 seleccionaremos Modify message y hacemos click en «Add more recipients» y simplemente agregamos el correo con el cual respaldaremos todos los mail.

 

  • De esta manera podemos respaldar todos los correos enviados y recibidos y sin importar que borremos un usuario, no perderemos sus correos.

Espero que les sirva !

 

 

👉 ¿Te gustó este contenido? Hay más esperando por ti.

Cada semana, comparto aprendizajes y reflexiones que no encontrarás en ningún otro lugar. ¡Únete a la comunidad de más de 9,000 emprendedores que ya están avanzando!