GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer en toute sécurité des packages à l'aide de Npm ou de Yarn sous Linux

Imaginez ce scénario. Vous souhaitez installer une application sur votre box Linux. Le package est en phase de développement précoce et il est disponible uniquement sur le référentiel NPM. Vous êtes un peu paranoïaque et sceptique quant à l'authenticité du colis. Que feriez-vous? Si vous êtes programmeur, vous pouvez vérifier le code du package et voir s'il contient des problèmes. Si vous ne connaissez pas le codage, vous n'avez pas d'autre choix que de faire aveuglément confiance au paquet et de l'installer quand même. Pour remédier à ce problème, il existe un programme nommé "npq" qui peut être utilisé pour installer en toute sécurité des packages à l'aide de Npm ou fil gestionnaires de packages sous Linux.

Le npq auditera les packages que vous souhaitez installer avant de les installer. S'il y a des vulnérabilités connues, il affichera l'avertissement, afin que vous puissiez ignorer l'installation en toute sécurité.

Npq effectuera les étapes suivantes pour vérifier si le paquet est sûr ou non.

  1. Il vérifiera la base de données de vulnérabilité Snyk pour vous assurer qu'il existe des vulnérabilités pour le package. S'il y a des vulnérabilités connues, il affichera l'avertissement.
  2. Vérifiez l'âge du colis. Si l'âge du colis est inférieur à 22 jours, un message d'avertissement s'affichera.
  3. Vérifiez le nombre de téléchargements de packages. Si le nombre de téléchargements du package est inférieur à 20 au cours du dernier mois, un avertissement s'affichera.
  4. Vérifiez s'il existe un fichier README pour le package. S'il n'y a pas de fichier README, un avertissement s'affichera.
  5. Vérifiez si le package contient des pré-scripts ou des post-scripts. Ce script pourrait être malveillant, il affichera donc un message d'avertissement.

Si vous ne voyez aucun avertissement, le paquet est probablement sûr. Veuillez noter que j'ai dit - le paquet est PROBABLEMENT sûr . Mais il n'y a aucune sécurité garantie . Un paquet malveillant ou vulnérable pourrait toujours exister sans divulgation publiée dans la base de données Synk et passer les vérifications de npq.

Une fois tous les tests effectués, npq transmettra le processus d'installation du package réel au gestionnaire de packages Npm ou Yarn. Npm est la valeur par défaut.

N'oubliez pas que Npq ne vous empêchera pas d'installer les packages. Il auditera uniquement un package pour détecter d'éventuels problèmes de sécurité et affichera l'avertissement s'il existe des vulnérabilités connues. C'est à vous de décider d'ignorer l'installation ou de continuer à vos risques et périls.

Installer Npq

Assurez-vous d'avoir installé Nodejs sur votre machine Linux. Sinon, consultez le lien suivant.

  • Comment installer NodeJS sur Linux

Après avoir installé Nodejs, exécutez la commande suivante pour installer Npq :

$ npm install -g npq

La commande ci-dessus placera deux binaires à savoir npq et npq-hero sur votre chemin.

Installer des packages en toute sécurité à l'aide de Npm ou de Yarn sous Linux

Pour auditer et installer un package, par exemple tldr , lancez simplement :

$ npq install tldr

Exemple de résultat :

✔ Checking package maturity
✖ Identifying package author...
✔ Checking package download popularity
✔ Checking availability of a README
✔ Identifying package repository...
✔ Checking package for pre/post install scripts
✖ Checking for known vulnerabilities
Detected possible issues with the following packages:
[tldr]
- the package description has no e-mail associated with author(s). Proceed with care.
[*]
- Unable to query for known vulnerabilities. Install snyk and authenticate or provide a SNYK_TOKEN env variable (https://snyk.io)

? Would you like to continue installing package(s)? (y/N)

Comme vous le voyez dans la sortie ci-dessus, il y a trois avertissements :

  1. Npq n'a pas pu identifier l'auteur du package tldr,
  2. Il n'y a pas d'adresse e-mail dans la description du package,
  3. Je n'ai pas encore configuré et authentifié avec la base de données Snyk. Pour installer Synk CLI et s'authentifier avec la base de données Snyk, consultez ce lien .

Si vous ne vous souciez pas des avertissements et que vous pensez que c'est sûr, tapez simplement Y pour continuer l'installation du package.

Créer un alias

Npq n'est qu'un outil de pré-étape pour vérifier les vulnérabilités connues des packages npm avant de les installer. Si vous l'utilisez souvent dans votre travail quotidien, créez simplement un alias comme ci-dessous.

$ alias npm='npq-hero'

À partir de maintenant, vous pouvez simplement auditer un package npm et l'installer à l'aide de la commande :

$ npm install package_name

Modifier le gestionnaire de packages par défaut

Comme je l'ai déjà mentionné, Npq confiera le processus d'installation à Npm gestionnaire de paquets par défaut après les avoir audités. Si vous souhaitez définir Yarn comme gestionnaire de packages par défaut, spécifiez une variable d'environnement :

NPQ_PKG_MGR=yarn

Pour créer un alias avec yarn comme gestionnaire de packages, faites :

alias yarn="NPQ_PKG_MGR=yarn npq-hero"

J'espère que cela vous aidera.


Linux
  1. Comment gérer les packages NodeJS à l'aide de Npm

  2. Comment installer Yarn sur Ubuntu 20.04 ?

  3. Comment installer les packages NPM dans Nixos ?

  4. Comment installer un fichier .dsc sous Linux

  5. Comment installer npm sous linux alpin

Comment installer Yarn sur Debian 10

Comment installer le gestionnaire de paquets Yarn NPM sur Ubuntu 20.04

Comment installer Anaconda sur Linux

Comment installer Yarn sur Linux Mint 20

Comment installer Yarn sur Ubuntu 18.04

Comment répertorier les packages installés sous Linux à l'aide de la gestion des packages