Activer un script Op et définir un alias de script
Les scripts d’opération (op) sont stockés sur le disque dur d’un équipement dans le répertoire /var/db/scripts/op ou sur le lecteur flash du répertoire /config/scripts/op . Seuls les utilisateurs de la classe de connexion Junos OS super-user
peuvent accéder aux fichiers de ces répertoires et les modifier. Pour plus d’informations sur la configuration de l’emplacement de stockage des scripts, voir Stocker et activer les scripts d’automatisation Junos et Stocker les scripts dans la mémoire Flash.
Pour empêcher l’exécution de code Python non autorisé sur les équipements exécutant Junos OS, les scripts Python non signés doivent répondre à certaines exigences avant de pouvoir exécuter les scripts sur un équipement. À partir de la version 16.1R3 de Junos OS, les scripts Python non signés doivent être la propriété de la classe de connexion Junos OS super-user
ou d’un utilisateur, et seul le propriétaire du fichier peut avoir l’autorisation d’écrire le fichier. Avant la version 16.1R3 de Junos OS, les scripts Python non signés ne doivent appartenir qu’à l’utilisateur racine. Pour obtenir des informations détaillées sur les exigences d’exécution de scripts d’automatisation Python sur des équipements exécutant Junos OS, consultez Conditions d’exécution de scripts d’automatisation Python sur des équipements Junos.
Si l’équipement dispose de deux moteurs de routage et que vous souhaitez activer l’exécution d’un script op sur les deux moteurs de routage, vous pouvez copier le script dans le répertoire /var/db/scripts/op ou /config/scripts/op sur les deux moteurs de routage, ou vous pouvez lancer la commit synchronize scripts
commande pour synchroniser la configuration et copier les scripts vers l’autre moteur de routage dans le cadre de l’opération de validation.
Vous devez activer un script op avant qu’il puisse être exécuté. Pour activer un script op, incluez l’instruction file filename
au niveau de la [edit system scripts op]
hiérarchie et spécifiez le nom du fichier contenant le script op. Seuls les utilisateurs appartenant à la classe de connexion Junos OS super-user
peuvent activer les scripts op.
[edit system scripts op] user@host# set file filename
Les scripts SLAX et Python doivent inclure l’extension de nom de fichier .slax ou .py , respectivement, à la fois dans le nom de script réel et le nom de fichier dans la configuration. Les scripts XSLT ne nécessitent pas d’extension de nom de fichier, mais nous vous recommandons fortement d’ajouter l’extension .xsl . Que vous choisissiez ou non d’inclure l’extension .xsl dans le fichier, le nom de fichier que vous ajoutez au [edit system scripts op file]
niveau hiérarchique doit correspondre exactement au nom du script dans le répertoire. Par exemple, si le nom du script XSLT est script1.xsl, vous devez inclure script1.xsl dans la hiérarchie de configuration pour activer le script ; de même, si le nom du script XSLT est script1, vous devez inclure le script1 dans la hiérarchie de configuration.
Vous pouvez également définir un alias pour un script op. Pour définir l’alias, incluez l’instruction command
au niveau de la [edit system scripts op file filename]
hiérarchie.
[edit system scripts op file filename] user@host# set command filename-alias
Par défaut, vous ne pouvez pas exécuter de scripts Python non signés sur les équipements exécutant Junos OS. Pour permettre l’exécution de scripts d’automatisation Python non signés qui répondent aux exigences énoncées dans Exigences d’exécution de scripts d’automatisation Python sur les équipements Junos, vous devez configurer l’instruction ou language python3
au language python
niveau de la [edit system scripts]
hiérarchie.
[edit system scripts] user@host# set language (python | python3)
Pour déterminer quels scripts op sont actuellement activés sur l’équipement, utilisez la show
commande pour afficher les fichiers configurés au niveau de la [edit system scripts op]
hiérarchie.
[edit system scripts op] user@host# show
Pour vous assurer que les fichiers activés sont sur l’équipement, listez le contenu du répertoire /var/run/scripts/op/ à l’aide de la commande du file list /var/run/scripts/op
mode opérationnel.
user@host> file list /var/run/scripts/op
Pour exécuter le script, vous pouvez spécifier le nom du script op ou l’alias.
user@host> op (filename | filename-alias)
super-user
ou d’un utilisateur, et seul le propriétaire du fichier peut avoir l’autorisation d’écrire le fichier.