(Plesk para Linux) El firewall de Plesk
resumen: El firewall de Plesk es una herramienta que puede usar para mejorar la seguridad de su servidor Plesk para Linux restringiendo las conexiones de red a y/o desde el servidor.
En este tema aprenderá a añadir y eliminar directivas y reglas de firewall, a bloquear conexiones entrantes procedentes de determinados países y a exportar e importar reglas de firewall para replicar fácilmente la configuración del firewall entre servidores.
Prudencia: Tanto el firewall de Plesk como firewalld son herramientas que permiten gestionar el firewall iptables. El uso de ambas herramientas de forma simultánea puede ocasionar conflictos y forzar el cierre de los puertos que Plesk necesita para funcionar. Le recomendamos usar solo una herramienta a la vez.
Requisitos mínimos
Antes de empezar, es necesario instalar la extensión «Firewall» en el servidor. Si no la tiene, instale la extensión disponible en el Catálogo de extensiones.
Gestión de directivas y reglas de firewall
Por omisión, la configuración del firewall de Plesk está compuesta de directivas y reglas. Las directivas afectan a un ámbito más amplio y a todas las conexiones hacia o desde el servidor, en función de cada una. Por ejemplo, puede usar la Directiva del sistema para el tráfico entrante (mostrada en Herramientas y configuración > Firewall) para bloquear todas las conexiones entrantes al servidor. Las reglas son de ámbito más específico y regulan las conexiones de entrada a los distintos servidores Plesk, como SMTP o MySQL.
Cabe señalar que las reglas tienen precedencia sobre las directivas. Por ejemplo, si una directiva global establece el bloqueo de todo el tráfico de entrada, pero hay una regla que permite el tráfico de entrada de una IP específica, dicha regla tendrá precedencia. Puede utilizar este mecanismo para aumentar o disminuir el grado de seguridad del servidor. Por ejemplo, si configura las directivas de modo que se prohíban todas las conexiones hacia y desde el servidor a excepción de unas pocas direcciones IP o determinados puertos, garantizará una mayor seguridad, pero es posible que algunas aplicaciones no funcionen debido a las restricciones de red. De igual forma, si permite todo tipo de conexiones por omisión y utiliza una serie de reglas para bloquear el acceso a servicios específicos o la conexión desde direcciones IP concretas, la seguridad de su servidor se verá resentida, pero evitará que se produzcan incidencias de conexión. Experimente con distintas opciones hasta hallar la que ofrezca un mayor equilibrio entre usabilidad y seguridad.
Puede administrar el firewall de dos modos:
- Cambiando la configuración de las directivas y reglas predeterminadas.
- Creando reglas personalizadas.
Para cambiar la configuración de las directivas y reglas predeterminadas, vaya a Herramientas y configuración > Firewall (en el grupo Seguridad) y haga clic en Permitir la administración de las reglas de firewall. Confirme la opción seleccionada, espere a que se apliquen los cambios y, a continuación, haga clic en Modificar las reglas de firewall de Plesk. Haga clic en la regla o directiva que desea modificar. Tanto las reglas como las directivas le permiten aceptar o denegar conexiones. Asimismo, también tiene la opción de permitir las conexiones desde determinadas direcciones y denegar aquellas procedentes de todas las demás. Una vez realizados los cambios que desee, haga clic en Aplicar los cambios para hacerlos efectivos, o en Descartar cambios si desea revertirlos.
Para añadir una regla personalizada, habilite la administración de las reglas de firewall tal como se explica más arriba y haga clic en Añadir regla personalizada. Las reglas personalizadas son más flexibles que las estándar y pueden configurarse para permitir o denegar conexiones entrantes, salientes o conexiones de reenvío hacia o desde puertos o direcciones IP concretos. Una vez que haya añadido una o más reglas personalizadas, haga clic en Aplicar los cambios para añadirlas al conjunto de reglas, o en Descartar cambios en caso de que no desee aplicarlas. Si posteriormente desea eliminar una o mas de estas reglas personalizadas, marque las casillas correspondientes, haga clic en Eliminar, confirme que desea eliminarlas y, a continuación, haga clic en Aplicar los cambios para eliminar definitivamente las reglas seleccionadas del conjunto de reglas.
Cuando cree reglas personalizadas, deberá tener la precaución de no bloquear por error las conexiones a los puertos utilizados por los servicios de Plesk.
Nota: Si está usando contenedores Docker, las reglas de firewall de Docker no se añadirán a las reglas de firewall de Plesk.
Bloqueo de países
Puede usar el firewall de Plesk para bloquear el acceso hacia o desde direcciones IP pertenecientes a un determinado país.
Bloqueo del acceso desde un determinado país
- Acceso a Plesk.
- Vaya a Herramientas y configuración > Firewall (debajo de «Seguridad»).
- Haga clic en el botón de alternancia «Protección con firewall» para que muestre “Activado”. Si la protección con firewall ya está activada, omita este paso.
- Haga clic en el botón
.
- (Opcional) Asigne un nombre a su regla.
- Establezca «Acción» a «Denegar».
- Debajo de «Orígenes», introduzca el código de país ISO 3166 de dos letras del país que desea bloquear. Por ejemplo, si desea bloquear todas las conexiones entrantes de Afganistán, indique AF.
- (Opcional) Haga clic en «Añadir más» y repita el paso anterior para bloquear otro país. Puede bloquear tantos países como desee.
- Haga clic en Guardar cuando haya añadido todos los países que desea bloquear.
- Haga clic en Aplicar cambios y a continuación haga clic en Aplicar.
Una vez aplicada la configuración del firewall, todas las conexiones entrantes a su servidor procedentes del país bloqueado serán denegadas.
Por defecto, Plesk usa la base de datos gratuita «IP to Country Lite» de DB-IP. También puede usar una base de datos gratuita o de pago de MaxMind. Tenga en cuenta que antes debería obtener una licencia gratuita o de pago de MaxMind y recibir su llave de licencia.
Cambio a la base de datos de pago de GeoIP2
-
Añada las siguientes líneas al archivo panel.ini:
[ext-firewall] geoipDataSource = maxmind-lite
para usar la base de datos gratuita de GeoLite2 o
[ext-firewall] geoipDataSource = maxmind
para usar la base de datos de pago GeoIP2.
-
Acceda al servidor mediante SSH y ejecute el siguiente comando:
LICENSE_KEY=<enter your license key here> plesk sbin modules/firewall/ipsets --configure --data-source maxmind-lite --force
o
LICENSE_KEY=<enter your license key here> plesk sbin modules/firewall/ipsets --configure --data-source maxmind --force
para usar la base de datos gratuita o de pago de MaxMind, respectivamente.
Nota: El comando puede acabar con una advertencia
Set cannot be destroyed
, que puede ignorarse con total seguridad. -
Vaya a Herramientas y configuración > Firewall (debajo de «Seguridad»).
-
Haga clic en Aplicar cambios y a continuación haga clic en Aplicar.
Nota: Si no se muestra el botón Aplicar cambios, cree una nueva regla de firewall para desencadenar la habilidad para la aplicación de los cambios. Más adelante puede eliminar esta regla.
Una vez aplicada la configuración del firewall, se usará la base de datos de GeoIP2 en vez de GeoLite2.
Para volver a la base de datos gratuita desde DB-IP, elimine la línea geoipDataSource = maxmind-lite
o geoipDataSource = maxmind
del archivo panel.ini
y vuelva a aplicar la configuración del firewall.
Importación y exportación de la configuración del firewall
Puede que desee duplicar la configuración del firewall de un servidor Plesk para Linux en otros servidores Plesk para Linux. La forma más fácil de efectuarlo es exportar la configuración del a un archivo y a continuación importarla en cada uno de los servidores Plesk para Linux. Puede importar y exportar la configuración del firewall tanto mediante la interfaz gráfica como desde la línea de comandos.
Exportación de la configuración del firewall mediante la GUI
- Acceda a Plesk en el servidor cuya configuración del firewall desea copiar.
- Vaya a Herramientas y configuración > Firewall (debajo de «Seguridad»).
- Haga clic en Exportar.
La configuración del firewall se guardará en un archivo .json
, que puede encontrar en el directorio de descargas de su navegador.
Importación de la configuración del firewall mediante la GUI
- Acceda a Plesk en el servidor al que desea copiar la configuración del firewall de otro servidor.
- Vaya a Herramientas y configuración > Firewall (debajo de «Seguridad»).
- Haga clic en el botón de alternancia «Protección con firewall» para que muestre “Activado” y a continuación haga clic en Aplicar. Si la protección con firewall ya está activada, omita este paso.
- Haga clic en Importar y localice el archivo
.json
exportado en el servidor cuya configuración de firewall desea copiar.
Se aplicará la configuración de firewall del archivo.
Exportación de la configuración del firewall mediante la CLI
-
Inicie sesión mediante SSH al servidor cuya configuración de firewall desea copiar.
-
Ejecute el siguiente comando para exportar la configuración del firewall:
plesk ext firewall --export > rules.json
Puede asignar el nombre que desee al archivo, puesto que «rules.json» es solo un ejemplo.
La configuración del firewall se guardará en el archivo indicado.
Importación de la configuración del firewall mediante la CLI
-
Acceda mediante SSH al servidor al que desea copiar la configuración del firewall de otro servidor. Para ello, es necesario abrir dos sesiones SSH distintas para así importar la configuración del firewall.
-
En la primera sesión SSH, ejecute el siguiente comando para activar la protección con firewall. Si esta ya se encuentra activada, omita este paso.
plesk ext firewall --enable
-
En la segunda sesión SSH, ejecute el siguiente comando para confirmar la protección con firewall. Si esta ya se encuentra activada, omita este paso.
plesk ext firewall --confirm
-
En la primera sesión SSH, ejecute el comando para importar y aplicar la configuración del firewall:
plesk ext firewall --import -config <the file's URL or local path> && plesk ext firewall --apply
Por ejemplo
plesk ext firewall --import -config https://example.com/rules.json && plesk ext firewall --apply
o
plesk ext firewall --import -config /tmp/rules.json && plesk ext firewall --apply
-
En la segunda sesión SSH, ejecute el comando para confirmar la configuración del firewall importada.
plesk ext firewall --confirm
Al servidor se le aplicará la configuración del firewall del archivo.