Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

RPC ALG

L’ALG RPC (Remote Procedure Call) utilise des ports connus TCP 111 et UDP 111 pour le mappage de ports, qui affecte et ouvre dynamiquement des ports pour les services RPC. Le plan de port RPC ALG surveille les demandes de port et ouvre le pare-feu de manière dynamique pour ces ports demandés. L’ALG RPC peut restreindre davantage le protocole RPC en spécifiant les numéros de programme autorisés.

Comprendre les ALG RPC

Junos OS prend en charge les services de base De procédure à distance Appel de passerelle de couche applicative (RPC ALG). RPC est un protocole qui permet à une application exécutée dans un espace d’adressage d’accéder aux ressources des applications exécutées dans un autre espace d’adressage comme si les ressources étaient locales dans le premier espace d’adressage. L’ALG RPC est responsable du traitement des paquets RPC.

L’ALG RPC dans Junos OS prend en charge les services et fonctionnalités suivants :

  • Sun Microsystems RPC Open Network Computing (ONC)

  • Environnement de calcul distribué (DCE) RPC Microsoft

  • Négociation dynamique des ports

  • Possibilité d’autoriser et de refuser des services RPC spécifiques

  • Traduction statique des adresses réseau (NAT) et NAT source (sans traduction de port)

  • Applications RPC dans les stratégies de sécurité

Utilisez l’ALG RPC si vous devez exécuter des applications basées sur RPC, telles que NFS ou Microsoft Outlook. La fonctionnalité ALG RPC est activée par défaut.

Comprendre les ALG RPC Sun

Sun Microsystems Remote Procedure Call (Sun RPC), également connu sous le nom d’Open Network Computing Remote Procedure Call (ONC RPC), permet à un programme exécuté sur un hôte d’appeler des procédures d’un programme exécuté sur un autre hôte. En raison du grand nombre de services RPC et du besoin de diffusion, l'adresse de transport d'un service RPC est négociée dynamiquement en fonction du numéro de programme et de la version du service. Plusieurs protocoles de liaison sont définis pour mapper le numéro du programme RPC et le numéro de version à une adresse de transport.

Junos OS prend en charge Sun RPC en tant que service prédéfini et autorise et refuse le trafic en fonction d’une stratégie de sécurité que vous configurez. La passerelle de couche applicative (ALG) permet aux équipements Juniper Networks de gérer le mécanisme de négociation d’adresses de transport dynamique du système Sun RPC et d’assurer l’application des stratégies de sécurité en fonction du numéro du programme. Vous pouvez définir une stratégie de sécurité pour autoriser ou refuser toutes les demandes RPC, ou pour autoriser ou refuser par numéro de programme spécifique. L’ALG prend également en charge le mode de routage et le mode NAT (Network Address Translation) pour les requêtes entrantes et sortantes.

Lorsqu’une application ou un client d’ordinateur appelle un service distant, il doit trouver l’adresse de transport du service. Dans le cas de TCP/UDP, l’adresse est un numéro de port. Une procédure typique dans ce cas est la suivante :

  1. Le client envoie le message GETPORT au service RPCBIND sur la machine distante. Le message GETPORT contient le numéro de programme, la version et le numéro de procédure du service distant qu’il tente d’appeler.

  2. Le service RPCBIND répond à l’aide d’un numéro de port.

  3. Le client appelle le service distant à l’aide du numéro de port renvoyé.

  4. Le service à distance répond au client.

Un client peut également utiliser le message CALLIT pour appeler directement le service distant, sans déterminer le numéro de port du service. Dans ce cas, la procédure est la suivante :

  1. Le client envoie un message CALLIT au service RPCBIND sur l’ordinateur distant. Le message CALLIT contient le numéro de programme, la version et le numéro de procédure du service distant qu’il tente d’appeler.

  2. RPCBIND appelle le service pour le client.

  3. RCPBIND répond au client si l’appel a réussi. La réponse contient le résultat de l'appel et le numéro de port du service.

L’ALG Sun RPC alloue de façon dynamique les nouvelles entrées de mappage au lieu d’utiliser une taille par défaut (512 entrées). Il offre également une entrée de mappage RPC flexible basée sur l’heure qui supprime l’entrée de mappage (auto-clean) sans affecter les sessions RPC actives associées, y compris la session de contrôle de session et la session de données.

À partir de Junos OS 15.1X49-D10 et junos OS version 17.3R1, vous pouvez définir la valeur de l’âge d’entrée du mappage RPC sun. Utilisez la set security alg sunrpc map-entry-timeout value commande. La valeur limite d’âge varie entre 1 heure et 72 heures, et la valeur par défaut est 32 heures. Si le service ALG RPC Sun ne déclenche pas la négociation de contrôle même au bout de 72 heures, le maximum de RPC ALG mappe la valeur d’entrée et la nouvelle connexion de données au service échoue.

Activation des ALG RPC Sun

L’ALG RPC Sun est activé par défaut et ne nécessite aucune configuration.

Activation des ALG RPC Sun (procédure CLI)

Pour désactiver l’ALG RPC Sun, saisissez la commande suivante :

Pour réactiver l’ALG Sun RPC, saisissez la commande suivante :

Personnalisation des applications RPC Sun (procédure CLI)

Toutes les applications Sun RPC peuvent être personnalisées à l’aide d’un ensemble d’applications prédéfinis.

Par exemple, une application peut être personnalisée pour ouvrir uniquement la session de contrôle et ne permettre aucune session de données :

Dans l’exemple suivant, l’ensemble d’applications prédéfinies autorise uniquement les sessions de données. Il ne fonctionnera pas sans la session de contrôle :

Pour personnaliser toutes les applications Sun RPC à l’aide de jeux d’applications prédéfinis, utilisez les deux ensembles d’applications dans la stratégie :

Note:

Les applications MS RPC sont personnalisées de la même manière que les applications Sun RPC.

Comprendre les services RPC sun

Sun RPC, également connu sous le nom d’Open Network Computing Remote Procedure Call (ONC RPC), permet à un programme s’exécutant sur un hôte d’appeler les procédures d’un programme exécuté sur un autre hôte. Les services RPC Sun sont définis par un identifiant de programme. L’identifiant du programme est indépendant de toute adresse de transport et la plupart des sessions Sun RPC sont lancées via le port TCP ou UDP 111. Chaque hôte relie le service RPC requis à un port TCP ou UDP dynamique négocié sur le canal de contrôle du port 111, ce qui permet au client de se connecter au port TCP ou UDP 111.

Les services Sun RPC (Remote Procedure Call) prédéfinis de Sun Microsystems incluent :

  • junos-sun-rpc-tcp

  • junos-sun-rpc-udp

L’ALG RPC Sun peut être appliqué à l’aide des méthodes suivantes :

  • Application ALG par défaut : utilisez l’une des applications prédéfinies suivantes pour les connexions de données et de contrôle dans votre stratégie :

    • junos-sun-rpc-any-tcp

    • junos-sun-rpc-any-udp

    • junos-sun-rpc-mountd-tcp

    • junos-sun-rpc-mountd-udp

    • junos-sun-rpc-nfs-tcp

    • junos-sun-rpc-nfs-udp

    • junos-sun-rpc-nlockmgr-tcp

    • junos-sun-rpc-nlockmgr-udp

    • junos-sun-rpc-portmap-tcp

    • junos-sun-rpc-portmap-udp

    • junos-sun-rpc-rquotad-tcp

    • junos-sun-rpc-rquotad-udp

    • junos-sun-rpc-ruserd-tcp

    • junos-sun-rpc-ruserd-udp

    • junos-sun-rpc-sadmind-tcp

    • junos-sun-rpc-sadmind-udp

    • junos-sun-rpc-sprayd-tcp

    • junos-sun-rpc-sprayd-udp

    • junos-sun-rpc-status-tcp

    • junos-sun-rpc-status-udp

    • junos-sun-rpc-walld-tcp

    • junos-sun-rpc-walld-udp

    • junos-sun-rpc-ypbind-tcp

    • junos-sun-rpc-ypbind-udp

    • junos-sun-rpc-ypserv-tcp

    • junos-sun-rpc-ypserv-udp

  • Application de contrôle par défaut : utilisez le contrôle prédéfini via junos-sun-rpc:

    • Créer une application pour les données (USER_DEFINED_DATA). Vous pouvez créer un ensemble de vos propres données (par exemple) my_rpc_application_setet les utiliser dans la stratégie.

    • Jeu d’applications par défaut ALG : utilisez l’ensemble d’applications prédéfinies pour le contrôle et l’application de données personnalisée dans la stratégie :

      • junos-sun-rpc (pour les sessions de contrôle)

      • junos-sun-rpc-any

      • junos-sun-rpc-mountd

      • junos-sun-rpc-nfs

      • junos-sun-rpc-nfs-access

      • junos-sun-rpc-nlockmgr

      • junos-sun-rpc-portmap (pour les sessions de données)

      • junos-sun-rpc-rquotad

      • junos-sun-rpc-ruserd

      • junos-sun-rpc-sadmind

      • junos-sun-rpc-sprayd

      • junos-sun-rpc-status

      • junos-sun-rpc-walld

      • junos-sun-rpc-ypbind

      • junos-sun-rpc-ypserv

  • Application de données personnalisée et de contrôle personnalisé : utilisez une application personnalisée :

    • Créez une application pour le contrôle (USER_DEFINED_CONTROL) et les données (USER_DEFINED_DATA).

    • Dans la stratégie, utilisez l’ensemble d’applications définies par l’utilisateur pour une application de données de contrôle et personnalisée :

      • USER_DEFINED_CONTROL

      • USER_DEFINED_DATA

Le tableau 1 répertorie les services Sun RPC prédéfinis, un identifiant de programme associé à chaque service et une description de chaque service.

Tableau 1 : Services Sun RPC prédéfinis

Service

ID du programme

Description

PORTMAP

100000

Le protocole Sun RPC Portmapper est un service basé sur un port TCP ou UDP qui inclut le port TCP ou UDP 111.

Nfs

100003

Système de fichiers réseau Sun RPC.

MONTER

100005

Processus de montage SUN RPC.

YPBIND

100007

Service de liaison de page jaune Sun RPC.

STATUT

100024

État RPC Sun.

Comprendre les ALG RPC Microsoft

Microsoft Remote Procedure Call (MS-RPC) est l’implémentation Microsoft du RPC d’environnement de calcul distribué (DCE). À l’instar du RPC Sun, MS-RPC permet à un programme exécuté sur un hôte d’appeler les procédures d’un programme exécuté sur un autre hôte. En raison du grand nombre de services RPC et du besoin de diffusion, l'adresse de transport d'un service RPC est négociée dynamiquement en fonction de l'identifiant universel unique (UUID) du programme de service. L’UUID spécifique est mappé à une adresse de transport.

Les équipements Junos OS exécutant Junos OS prennent en charge MS-RPC en tant que service prédéfini et autorisent et refusent le trafic en fonction d’une stratégie que vous configurez. La passerelle de couche applicative (ALG) permet aux équipements Juniper Networks de gérer le mécanisme de négociation d’adresses de transport dynamique du MS-RPC et de garantir l’application des stratégies de sécurité UUID. Vous pouvez définir une stratégie de sécurité pour autoriser ou refuser toutes les demandes RPC, ou pour autoriser ou refuser par numéro d’UUID spécifique. L’ALG prend également en charge le mode de routage et le mode NAT (Network Address Translation) pour les requêtes entrantes et sortantes.

Lorsque le client MS-RPC et le serveur MS-RPC sont capables de 64 bits (comme MS Exchange 2008), ils négocient l’utilisation de la syntaxe de transfert NDR64 pendant la communication réseau. lorsque vous utilisez le NDR64, les paramètres de l’interface doivent être encodés en fonction de la syntaxe NDR64, car le format de paquet pour NDR64 est différent du format de paquet pour NDR20 (version 32 bits).

Dans MS-RPC, il existe une interface d’activation à distance du protocole distant DCOM appelée ISystemActivator (également connu sous le nom d’IRemoteSCMActivator). Il est utilisé par le WMIC (Windows Management Instrumentation Command-line), INTERNET Information Services (FAI) et de nombreuses autres applications très utilisées.

L’ALG MS-RPC alloue de façon dynamique les nouvelles entrées de mappage au lieu d’utiliser une taille par défaut (512 entrées). Il offre également une entrée de mappage RPC flexible basée sur l’heure qui supprime l’entrée de mappage (auto-clean) sans affecter les sessions RPC actives associées, y compris la session de contrôle de session et la session de données.

À partir de Junos OS Version 15.1X49-D10 et Junos OS Version 17.3R1, vous pouvez définir la valeur d’entrée et d’expiration de mappage MS-RPC. Utilisez la set security alg msrpc map-entry-timeout value commande. La valeur limite d’âge varie entre 1 heure et 72 heures, et la valeur par défaut est 32 heures. Si le service ALG MS-RPC ne déclenche pas la négociation de contrôle même au bout de 72 heures, le temps maximal de mappage ms-RPC ALG pour l’entrée et la nouvelle connexion des données au service échoue.

Activation des ALG RPC Microsoft

L’ALG MS-RPC est activé par défaut et ne nécessite aucune configuration.

Activation des ALG RPC Microsoft (procédure CLI)

Pour désactiver microsoft RPC ALG, saisissez la commande suivante :

Pour réactiver l’ALG MICROSOFT RPC, saisissez la commande suivante :

Configuration de Microsoft RPC ALG

Vous pouvez configurer microsoft RPC ALG à l’aide des trois méthodes suivantes :

Configuration de l’ALG MS-RPC avec une application Microsoft prédéfinie

Il existe plusieurs applications de MS prédéfinies. Pour afficher les applications Microsoft prédéfinies à partir de l’interface de ligne de commande, saisissez la show configuration groups junos-defaults commande.

Une fois la configuration valide, saisissez la show security alg msrpc object-id-map commande dans l’interface de ligne de commande pour afficher la sortie.

Le résultat montre que l’UUID a été appliqué à la stratégie.

Configuration de l’ALG MS-RPC avec un UUID Générique

Pour autoriser la configuration pour n’importe quelle application MS RPC, ajoutez l’instruction application junos-ms-rpc-any à la configuration Permit.

Une fois la configuration valide, saisissez la show security alg msrpc object-id-map commande dans l’interface de ligne de commande pour afficher la sortie.

Configuration de l’ALG MS-RPC avec un UUID spécifique

Pour les applications qui n’ont pas été prédéfinies, vous devez configurer manuellement un UUID spécifique. Par exemple, pour autoriser une application NETLOGON qui n’a pas été prédéfinie, vous ajoutez l’instruction application msrpc-netlogon à la configuration Permit.

Dans Junos OS version 15.1X49-D90 et antérieure, sur tous les équipements SRX Series, l’UUID (Universal Unique Identifier) d’application personnalisé d’appel de procédure distante Microsoft (MS-RPC) avec zéros principaux et l’UUID néant (00000000-0000-0000-0000000000) peut correspondre à tout le trafic TCP et aux stratégies référencées autorisant tout le trafic TCP au lieu de passer le contrôle ALG MS-RPC.

À partir de Junos OS Version 15.1X49-D100 et Junos OS Version 17.3R1, l’UUID d’application personnalisé avec zéros principaux ne correspond pas à l’ensemble du trafic TCP et aux stratégies référencées, qui entrent dans la vérification ALG MS-RPC. Cette nouvelle application ne permet pas l’UUID néant.

Une fois la configuration valider, dans l’interface de ligne de commande, saisissez la show security alg msrpc object-id-map commande de vérification de l’identifiant universel unique Microsoft vers la table de mappage UUID vers OID (Object ID-to-OID). Microsoft RPC ALG surveille les paquets sur le port TCP 135.

Note:

La show security alg msrpc object-id-map commande CLI dispose d’une option de nœud de cluster de châssis permettant de limiter la sortie à un nœud particulier ou d’interroger l’ensemble du cluster. Les show security alg msrpc object-id-map node options de commande CLI sont : <node-id | all | local | primary>.

Comprendre les services RPC Microsoft

MS-RPC est l’implémentation Microsoft du RPC d’environnement de calcul distribué (DCE). À l’instar du RPC Sun, le MS-RPC permet à un programme exécuté sur un hôte d’appeler les procédures d’un programme exécuté sur un autre hôte. Le MS-RPC est négocié de manière dynamique en fonction de l'identifiant universel unique (UUID) du programme de services. L’UUID spécifique est mappé à une adresse de transport.

Dans Junos OS version 15.1X49-D90 et antérieure, sur tous les équipements SRX Series, l’UUID (Universal Unique Identifier) d’application personnalisé d’appel de procédure distante Microsoft (MS-RPC) avec zéros principaux et l’UUID néant (00000000-0000-0000-0000000000) peut correspondre à tout le trafic TCP et aux stratégies référencées autorisant tout le trafic TCP au lieu de passer le contrôle ALG MS-RPC.

À partir de Junos OS Version 15.1X49-D100 et Junos OS Version 17.3R1, l’UUID d’application personnalisé avec zéros principaux ne correspond pas à l’ensemble du trafic TCP et aux stratégies référencées, qui entrent dans la vérification ALG MS-RPC. Cette nouvelle application ne permet pas l’UUID néant.

Les services MS-RPC (Procédure à distance prédéfinie) incluent les services suivants :

  • junos-ms-rpc-epm

  • junos-ms-rpc-tcp

  • junos-ms-rpc-udp

Par défaut, les applications MS-RPC sont les suivantes :

  • junos-ms-rpc-iis-com-1

  • junos-ms-rpc-iis-com-adminbase

  • junos-ms-rpc-msexchange-directory-nsp

  • junos-ms-rpc-msexchange-directory-rfr

  • junos-ms-rpc-msexchange-info-store

  • junos-ms-rpc-uuid-any-tcp

  • junos-ms-rpc-uuid-any-udp

  • junos-ms-rpc-wmic-admin

  • junos-ms-rpc-wmic-admin2

  • junos-ms-rpc-wmic-mgmt

  • junos-ms-rpc-wmic-webm-callresult

  • junos-ms-rpc-wmic-webm-classobject

  • junos-ms-rpc-wmic-webm-level1login

  • junos-ms-rpc-wmic-webm-login-clientid

  • junos-ms-rpc-wmic-webm-login-helper

  • junos-ms-rpc-wmic-webm-objectsink

  • junos-ms-rpc-wmic-webm-refreshing-services

  • junos-ms-rpc-wmic-webm-remote-refresher

  • junos-ms-rpc-wmic-webm-services

  • junos-ms-rpc-wmic-webm-shutdown

Les paramètres par défaut définis par MS-RPC sont les suivants :

  • junos-ms-rpc

  • junos-ms-rpc-any

  • junos-ms-rpc-iis-com

  • junos-ms-rpc-msexchange

  • junos-ms-rpc-wmic

Le tableau 2 répertorie les services MS-RPC prédéfinis, les valeurs UUID associées à chaque service et une description de chaque service.

Tableau 2 : Services MS-RPC prédéfinis

Service

UUID

Description

E.m.p

e1af8308-5d1f-11c9-91a4-08002b14a0fa

Le protocole MS-RPC Endpoint Mapper (EPM) est un service basé sur des ports TCP/UDP qui inclut le port TCP/UDP 135.

BASE DE DONNÉES EXCHANGE

1a190310-bb9c-11cd-90f8-00aa00466520

Service de base de données Microsoft Exchange.

EXCHANGE-DIRECTORY

f5cc5a18-4264-101a-8c59-08002b2f8426

f5cc5a7c-4264-101a-8c59-08002b2f8426

f5cc59b4-4264-101a-8c59-08002b2f8426

Service d’annuaire Microsoft Exchange.

WIN-DNS

50 abc2a4-574d-40b3-9d66-ee4fd5fba076

Serveur DNS Microsoft Windows.

GAGNE

5f52c28-7f9f-101a-b52b-08002b2epace

811109bf-a4e1-11d1-ab54-00a0c91e9b45

Service WINS de Microsoft.

WMIC-Webm-Level1Login

f309ad18-d86a-11d0-a075-00c04fb68820

Ce service permet aux utilisateurs de se connecter à l’interface des services de gestion dans un espace de noms particulier.

Personnalisation des applications RPC Microsoft (procédure CLI)

Les applications MS-RPC sont personnalisées de la même manière que les applications RPC SUN.

Les services MS-RPC dans les stratégies de sécurité sont les suivants :

  • 0e4a0156-dd5d-11d2-8c2f-00c04fb6bcde

  • 1453c42c-0fa6-11d2-a910-00c04f990f3b

  • 10f24e8e-0fa6-11d2-a910-00c04f990f3b

  • 1544f5e0-613c-11d1-93df-00c04fd7bd09

Les ports TCP/UDP correspondants sont dynamiques. Pour les autoriser, vous utilisez l’instruction suivante pour chaque numéro :

L’ALG mappe les numéros de programme en ports TCP/UDP négociés dynamiquement en fonction de ces quatre UUID et autorise ou refuse le service en fonction d’une stratégie que vous configurez.

Tableau Historique des versions
Libération
Description
15,1X49-D90
Dans Junos OS version 15.1X49-D90 et antérieure, sur tous les équipements SRX Series, l’UUID (Universal Unique Identifier) d’application personnalisé d’appel de procédure distante Microsoft (MS-RPC) avec zéros principaux et l’UUID néant (00000000-0000-0000-0000000000) peut correspondre à tout le trafic TCP et aux stratégies référencées autorisant tout le trafic TCP au lieu de passer le contrôle ALG MS-RPC.
15,1X49-D90
Dans Junos OS version 15.1X49-D90 et antérieure, sur tous les équipements SRX Series, l’UUID (Universal Unique Identifier) d’application personnalisé d’appel de procédure distante Microsoft (MS-RPC) avec zéros principaux et l’UUID néant (00000000-0000-0000-0000000000) peut correspondre à tout le trafic TCP et aux stratégies référencées autorisant tout le trafic TCP au lieu de passer le contrôle ALG MS-RPC.
15,1X49-D100
À partir de Junos OS Version 15.1X49-D100 et Junos OS Version 17.3R1, l’UUID d’application personnalisé avec zéros principaux ne correspond pas à l’ensemble du trafic TCP et aux stratégies référencées, qui entrent dans la vérification ALG MS-RPC. Cette nouvelle application ne permet pas l’UUID néant.
15,1X49-D100
À partir de Junos OS Version 15.1X49-D100 et Junos OS Version 17.3R1, l’UUID d’application personnalisé avec zéros principaux ne correspond pas à l’ensemble du trafic TCP et aux stratégies référencées, qui entrent dans la vérification ALG MS-RPC. Cette nouvelle application ne permet pas l’UUID néant.
15,1X49-D10
À partir de Junos OS 15.1X49-D10 et junos OS version 17.3R1, vous pouvez définir la valeur de l’âge d’entrée du mappage RPC sun.
15,1X49-D10
À partir de Junos OS Version 15.1X49-D10 et Junos OS Version 17.3R1, vous pouvez définir la valeur d’entrée et d’expiration de mappage MS-RPC.