En este tutorial, explicaré cómo agregar el campo X-Forwarded-For en los registros de IIS para recuperar la dirección IP real de un visitante cuando un proxy inverso está en sentido ascendente del servidor IIS.
En el servidor web IIS, abra la consola de administración de servicios de Internet.
Seleccione el servidor 1 y haga clic en Registro 2.
En la página de configuración de registro, haga clic en Seleccionar campos 1.
Se abre una nueva ventana con la lista de campos disponibles, el campo X-Forwarded-For no está presente de forma predeterminada, así que lo agregaremos, haga clic en el botón Agregar un campo 1.
Nombre de campo 1, ingrese X-Forwarded-For, Tipo de fuente 2, seleccione Encabezado de solicitud y en Fuente 3 ingrese X-Forwarded-For nuevamente. Agregue el campo haciendo clic en el botón Aceptar 4.
El campo 1 se agrega en Campos personalizados. Haga clic en Aceptar 2 para validar y cerrar la ventana.
Haga clic en Aplicar 1 para realizar las modificaciones a nivel de IIS.
De ahora en adelante, si el campo X-Forwarded-For se transmite al servidor IIS, la IP que contiene se registrará en los registros.
Para verificar esto, vaya a la ubicación de los registros, de forma predeterminada C:\inetpub\logs\LogFiles\W3SVCX y abra el archivo más reciente en el editor.
Como se puede ver en la captura, tengo un segundo archivo con fecha 29 (_x) que se creó porque se cambió la configuración de registro.
Como recordatorio, IIS escribe los registros a intervalos de 1 minuto, por lo que deberá esperar un poco para obtener el contenido.
En la captura a continuación, podemos ver que el campo X-Forwarded-For se agregó a la definición de los registros.
Si miramos al final de las líneas encontramos la dirección IP real de la visita además de la dirección IP del servidor Proxy (c-ip).
El proxy inverso aquí es ARR y podemos ver que también tenemos el puerto de origen en los registros.
Ahora sabe cómo configurar los registros de IIS para tener la IP real de un visitante cuando hay un proxy inverso al frente.