EN ESTA PÁGINA
TFTP ALG
El ALG del Protocolo de transferencia de archivos triviales (TFTP) procesa paquetes TFTP que inician la solicitud al puerto de destino UDP 69 y abren una puerta para permitir que los paquetes de retorno desde la dirección inversa al puerto que envía la solicitud. La compatibilidad con firewall de estado y servicios TDR requiere que configure el ALG TFTP para el puerto de destino UDP 69.
Descripción del ALG TFTP
- Visión general
- Paquetes TFTP
- Sesión TFTP
- Descripción de la conversación de TFTP ALG
- Descripción de la compatibilidad con IPv6 para el ALG TFTP
Visión general
El protocolo de transferencia de archivos triviales (TFTP) es un protocolo simple que se utiliza para la transferencia de archivos (RFC 1350). El TFTP se implementa sobre UDP, con el puerto de destino 69 como puerto conocido. La puerta de enlace de capa de aplicación TFTP (ALG) procesa paquetes TFTP que inician la solicitud y crean agujeros para permitir paquetes de retorno desde la dirección inversa.
En el procesamiento de flujo hay dos sesiones para una conversación TFTP, una es la sesión de control TFTP creada por un paquete de solicitud de lectura (RRQ) o solicitud de escritura (WRQ); la otra es la sesión de datos TFTP creada por un paquete DE DATOS (para RRQ) o un paquete de confirmación (ACK) (para WRQ).
En un firewall de Junos OS, se permite la sesión de control TFTP mediante la política de aplicación junos-tftp. La sesión de datos se permite a través del pinhole abierto ALG TFTP desde cualquier puerto del servidor al TID (puerto) del cliente cuando se recibe el paquete de sesión de control. No es necesaria ninguna traducción TDR, ya que la traducción de TDR ya se ha realizado y la información está disponible en la estructura de datos de la sesión.
En los dispositivos SRX210, SRX240, SRX320, SRX340 o SRX380, no se admite la difusión TFTP cuando el flujo está habilitado en el dispositivo. (La compatibilidad con la plataforma depende de la versión de Junos OS en su instalación.)
Paquetes TFTP
Cualquier transferencia comienza con una solicitud de lectura o escritura de un archivo. Un paquete de datos de menos de 512 bytes indica la terminación de una transferencia.
TFTP admite cinco tipos de paquetes:
Solicitud de lectura (RRQ)
Solicitud de escritura (WRQ)
Datos (DATOS)
Acuse de recibo (ACK)
Error (ERROR)
Sesión TFTP
El TFTP ALG se basa en UDP, que es un protocolo de transporte sin estado. En un firewall, el ALG TFTP actúa como una sesión UDP con tiempo de espera. Si no hay sesión de actualización de paquetes, la sesión se termina después del tiempo de espera. Aunque el cliente y el servidor TFTP determinan la terminación de una conversación TFTP, a veces no son conscientes de la sesión en Fireware. Por lo tanto, el cliente y el servidor podrían solicitar una nueva conversación TFTP en este escenario.
La sesión DE ALG TFTP puede continuar de alguna de las siguientes maneras:
Cuando la sesión de control TFTP alcanza el tiempo de espera, la sesión no se termina si la sesión de datos sigue viva.
Una sesión TFTP puede terminar o dañarse con los comandos de cli
clear security flow session all
clear specific session
o, independientemente de si la sesión de datos está en curso o no.Si llega una nueva solicitud de sesión TFTP y llega a la sesión existente, el TFTP ALG abrirá el agujero de nuevo para la nueva solicitud.
Si el agujero de pin ya existe, el ALG TFTP no abrirá de nuevo la perforación y no habrá caída de paquetes.
El TFTP ALG no caerá ningún paquete.
Descripción de la conversación de TFTP ALG
De forma predeterminada, los servidores TFTP escuchan las solicitudes entrantes de los clientes TFTP en el puerto 69. Un cliente TFTP elige su puerto de identificador de túnel de origen (TID) y envía su solicitud inicial al servidor. En respuesta, el servidor usa el TID elegido como puerto de origen y envía una respuesta al TID del cliente como puerto de destino. Los dos puertos TID se utilizan para el resto de la transferencia de datos.
Read file conversation steps:
El host A (cliente) envía un paquete RRQ al host B (servidor) con el TID de A como origen y el puerto 69 como destino.
El host B (servidor) envía un paquete DE DATOS para alojar A (cliente) con el TID de B como origen y el TID de A como destino.
El host A (cliente) envía un paquete ACK al host B (servidor) con el TID de A como origen y el TID de B como destino.
La conversación de los paquetes DATA y ACK continúa hasta que se completa la transferencia de datos de archivos.
Write file conversation steps:
El host A (cliente) envía un paquete WRQ al host B (servidor) con el TID de A como origen y el puerto 69 como destino.
El host B (servidor) envía un paquete ACK para alojar A (cliente) con el TID de B como origen y el TID de A como destino.
El host A (cliente) envía un paquete DE DATOS al host B (servidor) con el TID de A como origen y el TID de B como destino.
El host B (servidor) envía un paquete ACK para alojar A (cliente) con el TID de B como origen y el TID de A como destino.
Descripción de la compatibilidad con IPv6 para el ALG TFTP
La puerta de enlace de capa de aplicación (ALG) del Protocolo trivial de transferencia de archivos (TFTP) se ha mejorado para admitir la conversación TFTP IPv6 e IPv4, que tiene direcciones IPv6 e IPv4 para la dirección IP de origen y la dirección IP de destino.
EL ALG TFTP procesa paquetes que inician la solicitud de enrutamiento y crean agujeros de pin para permitir paquetes de retorno desde la dirección inversa al puerto que envió la solicitud.
El primer paquete del cliente al servidor configura la sesión de datos. EL ALG TFTP monitorea el primer paquete y abre una perforación desde cualquier puerto del servidor al cliente. Este proceso ayuda a que los paquetes de retorno del servidor y los paquetes de datos subsiguientes pasen.
Ejemplo: Configurar el ALG TFTP
El ALG TFTP procesa paquetes TFTP que inician la solicitud y abren una puerta de enlace para permitir paquetes de retorno desde la dirección inversa al puerto que envía la solicitud.
En este ejemplo, se muestra cómo configurar el ALG TFTP para pasar a través del tráfico TFTP con un conjunto TDR de origen en los dispositivos de Juniper Networks.
Requisitos
Configure ARP de proxy para todas las direcciones IP del grupo TDR de origen.
Comprenda los conceptos básicos de TFTP ALG. Consulte Descripción del ALG TFTP.
Visión general
En este ejemplo, el ALG TFTP se configura para monitorear y permitir el tráfico TFTP, transfiriendo archivos entre el cliente y el servidor situados en lados opuestos de un dispositivo de Juniper Networks.
Configuración
Configuración de un grupo de origen TDR, un conjunto de reglas y una política
Configuración rápida de CLI
Para configurar rápidamente esta sección del ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red, copie y pegue los comandos en la CLI en el nivel de jerarquía y, luego, ingrese commit
desde el [edit]
modo de configuración.
set security nat source pool pool1 address 10.10.10.1/32 to 10.10.10.10/32 set security zones security-zone green address-book address sa1 1.1.1.0/24 set security zones security-zone red address-book address da1 2.2.2.0/24 set security nat source rule-set rs1 from zone green set security nat source rule-set rs1 to zone red set security nat source rule-set rs1 rule r1 match source-address 1.1.1.0/24 set security nat source rule-set rs1 rule r1 match destination-address 2.2.2.0/24 set security nat source rule-set rs1 rule r1 then source-nat pool pool1
set security policy from-zone green to-zone red policy pol1 match destination-address da1 set security policy from-zone green to-zone red policy pol1 match source-address sa1 set security policy from-zone green to-zone red policy pol1 match application junos-tftp set security policy from-zone green to-zone red policy pol1 then permit
Si no está seguro de la dirección IP del cliente TFTP y del servidor, puede reemplazar "da1" y "sa1" por "cualquiera".
Procedimiento paso a paso
En el ejemplo siguiente, debe navegar por varios niveles en la jerarquía de configuración. Para obtener instrucciones sobre cómo hacerlo, consulte Uso del editor de CLI en el modo de configuración en la Guía del usuario de cli.
Para configurar un grupo TDR de origen:
Cree un grupo de origen TDR.
[edit security] user@host# set nat source pool pool1 address 10.10.10.1/32 to 10.10.10.10/32
Configure las entradas de la libreta de direcciones de la zona de seguridad.
[edit security zones security-zone] user@host# set green address-book address sa1 1.1.1.0/24 user@host# set red address-book address da1 2.2.2.0/24
Cree un conjunto de reglas de origen TDR.
[edit security nat source rule-set rs1] user@host# set from zone green user@host# set to zone red user@host# set rule r1 match source-address 1.1.1.0/24 user@host# set rule r1 match destination-address 2.2.2.0/24 user@host# set rule r1 then source-nat pool pool1
Configurar una política
[edit security policies from-zone green to-zone red policy pol1] user@host# set match source-address sa1 user@host# set match destination-address da1 user@host# set match application junos-tftp user@host# set then permit
Resultados
Desde el modo de configuración, escriba los comandos y show security policies
para confirmar la show security nat
configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones de configuración en este ejemplo para corregirla.
[edit] user@host# show security nat source { pool pool1 { address { 10.10.10.1/32 to 10.10.10.10/32; } } rule-set rs1 { from zone green; to zone red; rule r1 { match { source-address 1.1.1.0/24; destination-address 2.2.2.0/24; } then { source-nat { pool { pool1; } } } } }
[edit] user@host# show security policies from-zone green to-zone red {policy pol1 { policy pol1 { match { source-address sa1; destination-address da1; application [junos-tftp]; } then { permit; } } } default-policy { permit-all; }
Si ha terminado de configurar el dispositivo, ingrese commit
desde el modo de configuración.
Verificación
Confirme que la configuración funciona correctamente.
Verificar el conjunto de fuentes y el conjunto de reglas de TDR
Propósito
Verifique que el conjunto de fuentes tDR y el conjunto de reglas utilizados para admitir el ALG TFTP funcionen correctamente.
Acción
Desde el modo operativo, ingrese el show security nat static rule r1
comando.
Verificación de ALG TFTP
Propósito
Verifique que el ALG TFTP esté habilitado.
Acción
Desde el modo operativo, ingrese el show security alg status
comando.
user@host> show security alg status DNS : Enabled FTP : Enabled H323 : Enabled TFTP : Enabled
Significado
El resultado muestra el estado DE ALG TFTP del siguiente modo:
Habilitado: muestra que el ALG TFTP está habilitado.
Deshabilitado: muestra que el ALG TFTP está deshabilitado.