Paso 1: Agregar un nombre de dominio a WAF
Este tema describe cómo agregar un nombre de dominio a WAF para que el tráfico del sitio web pueda pasar a través de WAF. Después de conectar un nombre de dominio de sitio web a su instancia WAF, WAF funciona como un proxy inverso entre el cliente y el servidor. La dirección IP real del servidor está oculta y solo la dirección IP de WAF es visible para los visitantes de la web.
Si ha habilitado proyectos de empresa, puede seleccionar su proyecto de empresa en la lista desplegable de Enterprise Project y agregar nombres de dominio de sitios web que se protegerán en el proyecto.
Prerrequisitos
- Usted ha comprado una instancia WAF.
- El nombre de dominio se ha registrado con la licencia ICP y no se ha agregado a WAF.
Restricciones
- Los nombres de dominio agregados por un usuario de IAM pueden ser vistos por la cuenta que crea el usuario de IAM, pero los nombres de dominio agregados por una cuenta no pueden ser vistos por los usuarios de IAM creados con la cuenta.
- No se puede agregar un nombre de dominio a WAF repetidamente.
Cada combinación de un nombre de dominio y un puerto se cuenta para la cuota de nombres de dominio de la edición WAF que está utilizando. Por ejemplo, www.example.com:8080 y www.example.com:8081 usan dos nombres de dominio de la cuota. Si desea proteger los servicios web a través de varios puertos con el mismo nombre de dominio, agregue el nombre de dominio y cada puerto a WAF.
- Puede introducir un nombre de dominio único de varios niveles , (por ejemplo, nombre de dominio de nivel superior ejemplo.com y nombre de dominio de nivel 2 www.example.com) o un nombre de dominio comodín (*.ejemplo.com).
- Los nombres de dominio comodín no pueden contener guiones bajos (_).
- Las siguientes son las reglas para agregar comodines a los nombres de dominio:
- Si la dirección IP del servidor de cada nombre de subdominio es la misma, introduzca un nombre de dominio comodín que se va a proteger. Por ejemplo, si los nombres de subdominio a.ejemplo.com, b.ejemplo.com y c.ejemplo.com tienen la misma dirección IP del servidor, puede agregar el nombre de dominio comodín *.ejemplo.com a WAF para proteger los tres.
- Si las direcciones IP del servidor de los nombres de subdominio son diferentes, agregue nombres de subdominio como nombres de dominio únicos uno por uno.
- WAF no admite encabezados HTTP definidos por el usuario para nombres de dominio protegidos.
- Solo los nombres de dominio que se han registrado con licencias ICP se pueden agregar a WAF.
- Se genera un registro CNAME basado en un nombre de dominio. Para el mismo nombre de dominio, los registros CNAME son los mismos.
- Solo se pueden utilizar certificados .pem en WAF.
- Actualmente, los certificados adquiridos en Huawei Cloud SCM solo se pueden enviar al default proyecto empresarial. Para otros proyectos empresariales, los certificados SSL enviados por SCM no se pueden utilizar.
- WAF admite el protocolo WebSocket que está habilitado de forma predeterminada.
- La inspección de solicitud de WebSocket está habilitada de forma predeterminada si Client Protocol está establecido en HTTP.
- La inspección de solicitud de WebSockets está habilitada de forma predeterminada si Client Protocol está establecido en HTTPS.
- Si utiliza la edición estándar de WAF (anteriormente edición profesional), sólo se puede seleccionar system-generated policy para Configure Policy.
- Las políticas de seguridad WAF entran en vigor para las direcciones IP reales del cliente donde se inician las solicitudes. Para asegurarse de que WAF obtiene direcciones IP de cliente reales, si su sitio web tiene servidores proxy de capa 7 como CDN y productos de aceleración de nube implementados delante de WAF, seleccione Yes para Proxy Configured.
Limitaciones de la especificación
Después de que su sitio web esté conectado a WAF, el archivo que los visitantes pueden subir cada vez no puede exceder los 512 MB.
Impacto en el sistema
Si se configura un puerto no estándar, los visitantes deben agregar el puerto no estándar al final de la dirección del sitio web cuando acceden al sitio web. De lo contrario, se producirá un error 404. Si se produce un error 404, consulte ¿Cómo soluciono los errores 404/502/504?
Procedimiento
- Inicie sesión en la consola de gestión
- Haga clic en la esquina superior izquierda de la consola de gestión y seleccione una región o proyecto.
- Haga clic en la esquina superior izquierda y elija Web Application Firewall en Security & Compliance.
- In the navigation pane, choose Website Settings.
- En la esquina superior izquierda de la lista de sitios web, haz clic en Add Website.
- . Introduzca el Domain Name en el cuadro de texto Nombre de dominio y haga clic en OK.
Figura 1 Nombre de dominio
Puede introducir un nombre de dominio único de varios niveles (por ejemplo, nombre de dominio de nivel superior ejemplo.com y nombre de dominio de nivel 2 www.example.com) o un nombre de dominio comodín (*.ejemplo.com).
- Los nombres de dominio de comodín no pueden contener guiones bajos (_).
- Las siguientes son las reglas para agregar comodines a los nombres de dominio:
- Si la dirección IP del servidor de cada nombre de subdominio es la misma, introduzca un nombre de dominio comodín que se va a proteger. Por ejemplo, si los nombres de subdominio a.ejemplo.com, b.ejemplo.com y c.ejemplo.com tienen la misma dirección IP del servidor, puede agregar el nombre de dominio comodín *.ejemplo.com a WAF para proteger los tres.
- Si las direcciones IP del servidor de los nombres de subdominio son diferentes, agregue nombres de subdominio como nombres de dominio únicos uno por uno.
Si su nombre de dominio está alojado en Huawei Cloud, puede hacer clic en Quick Add. En el cuadro de diálogo Select Domain Name que se muestra, seleccione el nombre de dominio que desea proteger y haga clic en OK. El nombre de dominio alojado se agrega automáticamente.
- Configura Domain Name y otros parámetros haciendo referencia a Tabla 1. Figura 2 shows an example.
Tabla 1 Descripción del parámetro Parámetro
Descripción
Valor de ejemplo
Website Name
Nombre del sitio web que desea proteger
N/A
Domain Name
El nombre de dominio de un sitio web a ser protegido. Puede ser un solo nombre de dominio o un nombre de dominio comodín.
- Nombre de dominio único: Ingrese un nombre de dominio único.
- Nombre de dominio comodín: Ingrese un nombre de dominio comodín del sitio web que se va a proteger. Los nombres de dominio comodín no pueden contener guiones bajos (_).
NOTA:- Si la dirección IP del servidor de cada nombre de subdominio es la misma, introduzca un nombre de dominio comodín. Por ejemplo, si los nombres de subdominio a.ejemplo.com, b.ejemplo.com y c.ejemplo.com tienen la misma dirección IP del servidor, puede agregar el nombre de dominio comodín *.ejemplo.com a WAF para proteger los tres.
- Si las direcciones IP del servidor de los nombres de subdominio son diferentes, agregue nombres de subdominio como nombres de dominio únicos uno por uno.
Nombre de dominio único www.example.com
Nombre de dominio de nivel superior: example.com
Nombre de dominio comodín: *.example.com
Website Remarks
(Opcional) Puede proporcionar comentarios sobre su sitio web si lo desea.
-
Non-standard Port
Establezca este parámetro sólo si se selecciona Non-standard Port. Para más detalles, consulte Ejemplo de configuración 1: Protección del tráfico al mismo puerto estándar con diferentes direcciones IP del servidor de origen asignadas.
- Si establece Client Protocol en HTTP, WAF protege los servicios en el puerto estándar 80 de forma predeterminada. Si establece Client Protocol en HTTPS, WAF protege los servicios en el puerto estándar 443 de forma predeterminada.
- Para configurar un puerto distinto de los puertos 80 y 443, seleccione Non-standard Port y seleccione un puerto no estándar de la lista desplegable de Port.
Para obtener más información sobre los puertos no estándar soportados por WAF, consulte ¿Qué puertos no estándar soporta WAF?
NOTA:Si se configura un puerto no estándar, los visitantes deben agregar el puerto no estándar al final de la dirección del sitio web cuando acceden al sitio web. De lo contrario, se producirá un error 404. Si se produce un error 404, consulte ¿Cómo soluciono los errores 404/502/504?
81
Use HTTP/2
Si su sitio web necesita admitir el acceso HTTP/2, seleccione este parámetro.
El protocolo HTTP/2 solo se puede usar para el acceso entre el cliente y WAF con la condición de que al menos un servidor de origen tenga HTTPS usado para Client Protocol.
-
Website Remarks
Una breve descripción del sitio web
-
Server Configuration
Configuraciones de direcciones del servidor web, incluidos Client Protocol, Server Protocol, Server Address, y Server Port.
- Client Protocol: protocolo utilizado por un cliente para acceder a un servidor. Las opciones son HTTP y HTTPS.
- Server Protocol: protocolo utilizado por WAF para reenviar las solicitudes del cliente. Las opciones son HTTP y HTTPS.
NOTA:
- Para obtener más información sobre cómo configurar Client Protocol y Server Protocol, consulte Reglas para configurar el protocolo de cliente y el protocolo de servidor.
- WAF puede comprobar la solicitud WebSocket y WebSockets que está habilitada por defecto.
- Server Address: dirección IP pública (generalmente correspondiente al registro A del nombre de dominio configurado en el DNS) o nombre de dominio (generalmente correspondiente al CNAME del nombre de dominio configurado en el DNS) del servidor web al que accede un cliente.
- Server Port: puerto de servicio del servidor al que la instancia WAF reenvía las solicitudes del cliente.
Client Protocol: HTTP
Server Protocol: HTTP
Server Address: XXX.XXX.1.1
Server Port: 80
Certificate Name
Si establece Client Protocol en HTTPS, se requiere un certificado SSL. Puede seleccionar un certificado creado o importar un certificado. Para obtener más información sobre cómo importar un certificado, consulte Importación de un nuevo certificado.
Los certificados importados aparecen en la página Certificates. Para más detalles, consulte Carga de un certificado.
Además, puede comprar un certificado en la consola SCM y enviarlo a WAF. Para obtener más información sobre cómo enviar un certificado SSL en SCM a WAF, consulte Envío de un certificado SSL a otros servicios en la nube.
AVISO:- Solo se pueden utilizar certificados .pem en WAF. Si el certificado no está en formato in.pem, conviértelo en.pem haciendo referencia a Tabla 3 antes de cargar el certificado.
- Actualmente, los certificados adquiridos en Huawei Cloud SCM solo se pueden enviar al default proyecto empresarial. Para otros proyectos empresariales, los certificados SSL enviados por SCM no se pueden utilizar.
- Si su certificado de sitio web está a punto de caducar, compre un nuevo certificado antes de la fecha de caducidad y actualice el certificado asociado con el sitio web en WAF.
- Cada nombre de dominio debe tener un certificado asociado. Un nombre de dominio de carácter comodín solo puede usar un certificado de dominio de carácter comodín. Si solo tiene certificados de un solo dominio, agregue nombres de dominio uno por uno en WAF.
None
IPv6 Protection
- Si selecciona IPv6 para Server Address, IPv6 Protection está habilitada de forma predeterminada.
- Si selecciona IPv4 para Server Address y habilita IPv6 Protection, WAF asignará una dirección IPv6 al nombre de dominio para que el sitio web sea accesible a través de la dirección IPv6. De esta manera, las solicitudes a la dirección IPv6 son enrutadas por WAF a la dirección IPv4 del servidor de origen.
Enable
Load Balancing Algorithm
Seleccione un algoritmo de equilibrio de carga.
- Origin server IP hash: Las solicitudes de la misma dirección IP se enrutan al mismo servidor backend.
- Weighted round robin: Las solicitudes se distribuyen entre los servidores backend a su vez en función del peso que asigne a cada servidor.
- Session hash: Las solicitudes con la misma etiqueta de sesión se enrutan al mismo servidor de origen. Para habilitar este algoritmo, configure identificadores de tráfico para fuentes de ataque conocidas, o el algoritmo hash de sesión no puede tener efecto.
Para más detalles, consulte Cambio del algoritmo de equilibrio de carga.
Weighted round robin
- Configure Proxy Configured.
Si su sitio web tiene servidores proxy de capa 7, como CDN y productos de aceleración en la nube implementados delante de WAF, seleccione Yes para Proxy Configured. Esto asegura que WAF obtiene direcciones IP de cliente reales, ya que la protección WAF solo tiene efecto para direcciones IP de cliente reales donde se inician las solicitudes. Además, puede haber múltiples direcciones IP en el campo de dirección IP de origen. Para asegurarse de que WAF obtiene la dirección IP real del visitante que inicia la solicitud, agregue un identificador de tráfico IP para el sitio web protegido. (por ejemplo, se puede agregar CDN-Src-IP para un proxy CDN) Para más detalles, consulte Configuración de un identificador de tráfico para un Known Attack Source
- Si se implementa un proxy antes de WAF en su sitio web, el modo de trabajo WAF no se puede cambiar a Bypassed. Para más detalles, consulte Cambio de modo de trabajo WAF.
- Si un sitio web no utiliza ningún proxy pero selecciona Yes para Proxy Configured, WAF confía en el campo X-Forwarded-For en el encabezado de solicitud HTTP al obtener la dirección IP de origen real. Por lo tanto, su negocio no se ve afectado.
- Especifique Configure Policy. De forma predeterminada, se selecciona system-generated policy. Puede seleccionar reglas personalizadas. Para más detalles, consulte Tabla 2.
Si utiliza la WAF o la edición estándar (anteriormente edición profesional), solo está disponible System-generated policy.
Puede seleccionar una política que haya configurado. También puede personalizar las reglas después de que el nombre de dominio esté conectado a WAF.
Tabla 2 Políticas generadas por el sistema Edición
Política
Descripción
Edición estándar (anteriormente edición profesional)
Protección web básica (modo Log only y comprobaciones comunes)
La protección web básica protege contra ataques como inyecciones SQL, XSS, vulnerabilidades de desbordamiento remoto, inclusiones de archivos, vulnerabilidades Bash, ejecución remota de comandos, recorrido de directorios, acceso sensible a archivos e inyecciones de comandos/código.
Edición profesional (anteriormente edición empresarial) y edición platino (anteriormente premium)
Protección web básica (modo Log only y comprobaciones comunes)
La protección web básica protege contra ataques como inyecciones SQL, XSS, vulnerabilidades de desbordamiento remoto, inclusiones de archivos, vulnerabilidades Bash, ejecución remota de comandos, recorrido de directorios, acceso sensible a archivos e inyecciones de comandos/código.
Anti-crawler (modo de Log only y función de Scanner)
WAF solo registra tareas de análisis web, como análisis de vulnerabilidades y análisis de virus, como el comportamiento de rastreo de OpenVAS y Nmap.
Log only: WAF solo registra los eventos de ataque detectados en lugar de bloquearlos.
- Haga clic en Next.
Se recomienda que omita este paso haciendo clic en Next y luego en Finish. Luego, conecte el nombre de dominio a WAF más tarde haciendo referencia a Paso 2: Prueba de WAF y Paso 3: Enrutación del tráfico del sitio web a WAF.
Se genera un registro CNAME basado en un nombre de dominio. Para el mismo nombre de dominio, los registros CNAME son los mismos.
- Haga clic en Next y, a continuación, Finish.
A continuación, puede ver el estado de acceso y el modo de trabajo para el nombre de dominio agregado en la página Website Settings.
Figura 3 Nombre de dominio agregado
- Para configurar una política de protección para el sitio Web, haga clic en Configure Policy.
- Para agregar más sitios web que proteger, haga clic en Add Another Domain Name.
- Para ver el sitio web agregado, cierre el cuadro de diálogo.
- Si su servidor utiliza otros firewalls de red, deshabilite estos firewalls de red o agregue el intervalo de direcciones IP WAF a la lista blanca de direcciones IP de estos firewalls de red. De lo contrario, estos firewalls pueden considerar la dirección IP WAF como una dirección IP maliciosa. Para obtener más información, consulte ¿Cómo poner en lista blanca el intervalo de direcciones IP de origen WAF?
- Si su servidor web utiliza software de seguridad personal, reemplácelo con software de seguridad empresarial y incluya en la lista blanca los intervalos de direcciones WAF IP.
Verificación
- De forma predeterminada, WAF detecta Access Status de cada nombre de dominio protegido cada hora.
- Generalmente, si ha realizado la conexión de dominio y Access Status es Accessible, el nombre de dominio está conectado a WAF.
Si un nombre de dominio se ha conectado a WAF pero Access Status es Inaccessible, haga clic para actualizar. Si Access Status sigue siendo Inaccessible, conecte el nombre de dominio a WAF de nuevo haciendo referencia a Paso 3: Enrutación del tráfico del sitio web a WAF.
Importación de un nuevo certificado
Si establece Client Protocol en HTTPS, se requiere un certificado SSL. Puede realizar los siguientes pasos para importar un nuevo certificado.
- Haga clic en Import New Certificate. En el cuadro de diálogo Import New Certificate que muestra, escriba el nombre del certificado y pegue el archivo de certificado y la clave privada en los cuadros de texto correspondientes. Figura 4 shows an example.
WAF encripta y guarda la clave privada para mantenerla segura.
Solo se pueden utilizar certificados .pem en WAF. Si el certificado no está en formato in.pem, conviértelo a.pem localmente haciendo referencia a Tabla 3 antes de cargarlo.Tabla 3 Comandos de conversión de certificados Formato
Método de conversión
CER/CRT
Cambie el nombre del archivo de certificado cert.crt a cert.pem.
PFX
- Obtener una clave privada. Por ejemplo, ejecute el siguiente comando para convertir cert.pfx en key.pem:
openssl pkcs12 -in cert.pfx -nocerts -out key.pem -nodes
- Obtener un certificado. Por ejemplo, ejecute el siguiente comando para convertir cert.pfx en cert.pem:
openssl pkcs12 -in cert.pfx -nokeys -out cert.pem
P7B
- Convertir un certificado. Por ejemplo, ejecute el siguiente comando para convertir cert.p7b en cert.cer:
openssl pkcs7 -print_certs -in cert.p7b -out cert.cer
- Cambie el nombre del archivo de certificado cert.cer a cert.pem.
DER
- Obtener una clave privada. Por ejemplo, ejecute el siguiente comando para convertir privatekey.der en privatekey.pem:
openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem
- Obtener un certificado. Por ejemplo, ejecute el siguiente comando para convertir cert.cer en cert.pem:
openssl x509 -inform der -in cert.cer -out cert.pem
- Antes de ejecutar un comando OpenSSL, asegúrese de que la herramienta OpenSSL se haya instalado en el host local.
- Si su PC local ejecuta un sistema operativo Windows, vaya a la interfaz de línea de comandos (CLI) y, a continuación, ejecute el comando de conversión de certificados.
- Obtener una clave privada. Por ejemplo, ejecute el siguiente comando para convertir cert.pfx en key.pem:
- Haga clic en OK.
Ejemplo de configuración 1: Protección del tráfico al mismo puerto estándar con diferentes direcciones IP del servidor de origen asignadas
- Anule la selección de Non-standard Port.
- Seleccione HTTP o HTTPS para Client Protocol. Figura 5 y Figura 6 mostrar configuraciones de puerto estándar cuando el protocolo cliente es HTTP o HTTPS.
Si Client Protocol está establecido en HTTPS, se requiere un certificado.
- Los visitantes de su sitio web pueden acceder al sitio web sin agregar un puerto al final del nombre de dominio. Por ejemplo, introduzca http://www.example.com en la casilla de dirección del navegador para acceder al sitio web.
Ejemplo de configuración 1: Protección del tráfico a un puerto no estándar con diferentes direcciones IP del servidor de origen asignadas
- Seleccione Non-standard Port y seleccione un puerto no estándar que se va a proteger en la lista desplegable de Port. Para obtener más información sobre los puertos no estándar soportados por WAF, consulte ¿Qué puertos no estándar soporta WAF?
- Seleccione HTTP o HTTPS para Client Protocol para todos los puertos de servidor. Figura 7 y Figura 8 mostrar la configuración del puerto HTTP o HTTPS no estándar, respectivamente.
Si Client Protocol está establecido en HTTPS, se requiere un certificado.
- Los visitantes deben agregar el puerto no estándar configurado al nombre de dominio cuando accedan a su sitio web. De lo contrario, se devuelve el error 404. Si el puerto no estándar es 8080, escriba http://www.example.com:8080 en el cuadro de dirección del navegador.
Ejemplo de configuración 3: Protección de diferentes puertos de servicio
Reglas para configurar el protocolo de cliente y el protocolo de servidor
WAF proporciona varios tipos de protocolo. Si su sitio web es de www.example.com, WAF proporciona los siguientes cuatro modos de acceso:
- Método HTTP (Figura 11)
Esta configuración permite que los visitantes de la web accedan a http://www.example.com a través de HTTP solamente. Si acceden a él a través de HTTPS, recibirán el código 302 encontrado y serán redirigidos a http://www.example.com.
- Método HTTPS. Esta configuración permite que los visitantes de la web accedan a su sitio web a través de HTTPS solamente. Si acceden a él a través de HTTP, son redirigidos a la HTTPS URL. Figura 12 shows an example.This configuration allows web visitors to access your website over HTTPS only. If they access it over HTTP, they are redirected to the HTTPS URL.
- Si los visitantes de la web acceden a su sitio web a través de HTTPS, el sitio web devuelve una respuesta correcta.
- Si los visitantes de la web acceden a http://www.example.com a través de HTTP, recibirán el código 302 encontrado y serán dirigidos a https://www.example.com.
- Método de reenvío HTTP/HTTPS. Figura 13 shows an example.
- Si los visitantes de la web acceden a su sitio web a través de HTTP, el sitio web devuelve una respuesta exitosa, pero no se cifra ninguna comunicación entre el navegador y el sitio web.
- Si los visitantes de la web acceden a su sitio web a través de HTTPS, el sitio web devuelve una respuesta exitosa y todas las comunicaciones entre el navegador y el sitio web están encriptadas.
- Descarga de HTTPS por WAF. Figura 14 shows an example.
Si los visitantes de la web acceden a su sitio web a través de HTTPS, WAF reenvía las solicitudes a su servidor de origen a través de HTTP.