septiembre 29, 2023

Cómo instalar IPBAN en Windows para proteger el puerto RDP

Space Cloud BLOG2

Uno de los problemas más frecuentes al tener un servidor Windows en la nube es el de recibir ataques al puerto RDP, que acaban impidiendo el acceso al servidor o si consiguen acceso al mismo pueden llegar a hacernos perder todos los datos. En este artículo, os vamos a enseñar a cómo instalar IPBAN el cuál mediante los logs del sistema detecta los intentos de inicio de sesión erróneos y bloquea las IP para que no puedan seguir intentando acceder al sistema.

 Requisitos para instalar IPBAN

  • .NET 5 SDK 
  • Windows 8.1 o superior (x86, x64), Windows Server 2012 o superior (x86, x64). También, es compatible con Ubuntu, Debian, CentOS, RedHat x64.
  • Powershell 5.1 o superior.
  • Firewall de Windows activado

Activar el Firewall de Windows

Abriremos el panel de control en «Inicio > Control Panel«.

Captura_de_pantalla_2021-03-02_a_las_15.20.42.png

Haremos clic en «Windows Defender Firewall«.

Captura_de_pantalla_2021-03-02_a_las_15.21.03.png

En el menú de la izquierda hacemos clic en «Turn Windows Defender Firewall on or off«.

Captura_de_pantalla_2021-03-02_a_las_15.21.26.png

Habilitamos «Private network settings» y «Public network setting» y haremos clic en «OK«.

Captura_de_pantalla_2021-03-02_a_las_15.21.37.png

El resultado debe quedar así.

Captura_de_pantalla_2021-03-02_a_las_15.21.50.png

Pasos para instalar IPBAN

Para instalar IPBAN abriremos una terminal de PowerShell con permisos de Administrador de la siguiente forma:

Captura_de_pantalla_2021-03-02_a_las_14.56.31.png

Una vez tenemos abierto PowerShell ejecutamos el siguiente comando para descargar IPBAN e instalarlo directamente:[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; iex ((New-Object System.Net.WebClient).DownloadString(‘https://raw.githubusercontent.com/DigitalRuby/IPBan/master/IPBanCore/Windows/Scripts/install_latest.ps1’))

Cuando se complete el proceso deberemos ver algo parecido a la siguiente imagen y se abrirá también el fichero de configuración.

Captura_de_pantalla_2021-03-02_a_las_14.58.32.png

 Descarga .NET

Si fallase la instalación por no tener .net instalado lo podéis descargar en este enlace.

Comprobar que IPBAN se ha instalado correctamente

Abriremos los servicios de Windows y comprobamos que se ha creado un servicio llamado IPBAN y esté en ejecución.

Captura_de_pantalla_2021-03-02_a_las_15.13.25.png
Captura_de_pantalla_2021-03-02_a_las_15.13.33.png

Ahora nos desplazamos por el explorador de archivos a la ruta «C:\Program Files\IPBan» y comprobamos que el fichero «logfile.txt» empieza a haber un registro de las acciones que va tomando IPBAN.2021-03-02 14:57:17.3686|WARN|DigitalRuby.IPBanCore.Logger|Initializing service
2021-03-02 14:57:17.4171|WARN|DigitalRuby.IPBanCore.Logger|Detecting os version…
2021-03-02 14:57:17.5149|WARN|DigitalRuby.IPBanCore.Logger|OS version detected: Name: Windows, Version: 10.0.17763, Friendly Name: Microsoft Windows Server 2019 Datacenter, Description: Microsoft Windows 10.0.17763
2021-03-02 14:57:17.5481|WARN|DigitalRuby.IPBanCore.Logger|Running as a Windows service
2021-03-02 14:57:17.6531|WARN|DigitalRuby.IPBanCore.Logger|Preparing to run service
2021-03-02 14:57:17.6955|WARN|DigitalRuby.IPBanCore.Logger|Starting service
2021-03-02 14:57:17.6955|WARN|DigitalRuby.IPBanCore.Logger|Running service
2021-03-02 14:57:18.1923|WARN|DigitalRuby.IPBanCore.Logger|IPBan is free software created and refined over many years.
2021-03-02 14:57:18.1923|WARN|DigitalRuby.IPBanCore.Logger|Please consider upgrading to the pro version for more advanced functions, shared ban lists and much more.
2021-03-02 14:57:18.1923|WARN|DigitalRuby.IPBanCore.Logger|Learn more at https://ipban.com
2021-03-02 14:57:18.1923|INFO|DigitalRuby.IPBanCore.Logger|Initializing IPBan database at Data Source=C:\Program Files\IPBan\ipban.sqlite
2021-03-02 14:57:18.6904|WARN|DigitalRuby.IPBanCore.Logger|IPBan service started and initialized
2021-03-02 14:57:18.6904|WARN|DigitalRuby.IPBanCore.Logger|Log levels: True,True,True,True,False,False
2021-03-02 14:57:20.2096|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files/Microsoft/Exchange Server/*/TransportRoles/Logs/FrontEnd/ProtocolLog/**.log
2021-03-02 14:57:20.2096|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files/Smarter Tools/Smarter Mail/**/*.log
2021-03-02 14:57:20.2096|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files (x86)/Smarter Tools/Smarter Mail/**/*.log
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/SmarterMail/logs/**/*.log
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Smarter Mail/logs/**/*.log
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files (x86)/Mail Enable/Logging/SMTP/SMTP-Activity-*.log
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files/Mail Enable/Logging/SMTP/SMTP-Activity-*.log
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/Program Files/Tomcat/logs/**/*access_log*.txt
2021-03-02 14:57:20.2167|INFO|DigitalRuby.IPBanCore.Logger|Adding log file to parse: C:/IPBanCustomLogs/**/*.log

Finalmente, comprobamos en el Firewall de Windows si empieza a crear reglas de bloqueo. Este paso puede tardar un tiempo hasta que bloquea la primera IP. Para ello iremos a Inicio > Control Panel > Windows Defender Firewall > Advanced Setting. Deberemos ver reglas de este estilo:

Captura_de_pantalla_2021-03-02_a_las_15.29.59.png

Si abrimos las propiedades de una de las reglas creadas podremos ver que ha sido IPBAN quién las ha creado:

Captura_de_pantalla_2021-03-02_a_las_15.31.55.png

Configuración inicial

Editaremos el fichero «C:\Program Files\IPBan\ipban.config con notepad» y editaremos las siguientes variables: <add key=»FailedLoginAttemptsBeforeBan» value=»3″/>
<add key=»BanTime» value=»02:00:00:00″/>
<add key=»Whitelist» value=»IPs_DE_Confianza»/>

Si tenemos por ejemplo una IP fija en nuestra conexión a Internet podemos sustituir «IPs_DE_Confianza» por la IP de nuestra conexión, si no disponemos de ella lo dejamos en blanco como viene por defecto.

Además, crearemos un fichero en «C:\Program Files\IPBan\» con nombre «unban.txt» para que en caso de que bloquee una IP que no lo debe estar podamos añadir esa IP al fichero y quitar el ban. El fichero debe contener una IP por linea.

Captura_de_pantalla_2021-03-02_a_las_15.57.23.png

 Configuraciones adicionales

Podéis encontrar más información de configuraciones o cómo añadir nuevas expresiones a filtrar en este enlace

Con estos pasos tenemos configurado IPBAN que nos dará un extra de seguridad en nuestro servidor.