GNU/Linux >> Belajar Linux >  >> Linux

Cara Aman Menginstal Paket Menggunakan Npm Atau Benang Di Linux

Bayangkan skenario ini. Anda ingin menginstal aplikasi di kotak Linux Anda. Paket ini dalam tahap pengembangan awal dan hanya tersedia di repositori NPM. Anda sedikit paranoid dan skeptis tentang keaslian paket. Apa yang akan kamu lakukan? Jika Anda seorang programmer, Anda dapat memeriksa kode paket dan melihat apakah ada masalah di dalamnya. Jika Anda tidak tahu tentang pengkodean, Anda tidak punya pilihan selain mempercayai paket secara membabi buta dan tetap menginstalnya. Untuk mengatasi masalah ini, ada program bernama "npq" yang dapat digunakan untuk menginstal paket dengan aman menggunakan Npm atau Benang manajer paket di Linux.

npq akan mengaudit paket yang ingin Anda instal sebelum menginstalnya. Jika ada kerentanan yang diketahui, peringatan akan ditampilkan, sehingga Anda dapat melewati penginstalan dengan aman.

Npq akan melakukan langkah-langkah berikut untuk memverifikasi apakah paket tersebut aman atau tidak.

  1. Ini akan memeriksa Snyk Vulnerability DB untuk memastikan apakah ada kerentanan untuk paket tersebut. Jika ada kerentanan yang diketahui, peringatan akan ditampilkan.
  2. Periksa usia paket. Jika usia paket kurang dari 22 hari, maka akan muncul pesan peringatan.
  3. Periksa jumlah unduhan paket. Jika jumlah unduhan paket kurang dari 20 dalam sebulan terakhir, maka akan muncul peringatan.
  4. Periksa apakah ada README untuk paket tersebut. Jika tidak ada README, maka akan muncul peringatan.
  5. Periksa apakah paket memiliki skrip pra atau pasca. Skrip ini mungkin berbahaya, sehingga akan menampilkan pesan peringatan.

Jika Anda tidak melihat peringatan apa pun, paket tersebut mungkin aman. Harap perhatikan bahwa saya mengatakan - paketnya MUNGKIN aman . Tapi tidak ada jaminan keamanan . Paket berbahaya atau rentan mungkin masih ada yang tidak memiliki pengungkapan yang dipublikasikan di database Sync dan lolos pemeriksaan npq.

Setelah semua tes dilakukan, npq akan menyerahkan proses instalasi paket yang sebenarnya ke manajer paket Npm atau Yarn. Npm adalah default.

Harap diperhatikan bahwa Npq tidak akan menghalangi Anda untuk menginstal paket-paket tersebut. Itu hanya akan mengaudit paket untuk kemungkinan masalah keamanan dan menampilkan peringatan jika ada kerentanan yang diketahui. Terserah Anda untuk memutuskan apakah akan mengabaikan penginstalan atau melanjutkan dengan risiko Anda sendiri.

Instal Npq

Pastikan Anda telah menginstal Nodejs di kotak Linux Anda. Jika tidak, lihat tautan berikut.

  • Cara Memasang NodeJS Di Linux

Setelah menginstal Nodejs, jalankan perintah berikut untuk menginstal Npq:

$ npm install -g npq

Perintah di atas akan menempatkan dua binari yaitu npq dan npq-pahlawan di jalan Anda.

Menginstal Paket dengan Aman Menggunakan Npm Atau Benang Di Linux

Untuk mengaudit dan menginstal paket, misalnya tldr , cukup jalankan:

$ npq install tldr

Contoh keluaran:

✔ 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)

Seperti yang Anda lihat pada output di atas, ada tiga peringatan:

  1. Npq tidak dapat mengidentifikasi pembuat paket tldr,
  2. Tidak ada alamat email di deskripsi paket,
  3. Saya belum menyiapkan dan mengautentikasi dengan database Snyk. Untuk menginstal Synk CLI dan mengautentikasi dengan database Snyk, lihat tautan ini .

Jika Anda tidak peduli dengan peringatan tersebut dan percaya bahwa itu aman, ketik saja Y untuk melanjutkan menginstal paket.

Buat alias

Npq hanyalah alat pra-langkah untuk memeriksa kerentanan yang diketahui dari paket npm sebelum benar-benar menginstalnya. Jika sering menggunakannya dalam pekerjaan Anda sehari-hari, cukup buat alias seperti di bawah ini.

$ alias npm='npq-hero'

Mulai sekarang, Anda cukup mengaudit paket npm dan menginstalnya menggunakan perintah:

$ npm install package_name

Ubah pengelola paket default

Seperti yang sudah saya sebutkan, Npq akan menyerahkan proses instalasi ke Npm manajer paket secara default setelah mengauditnya. Jika Anda ingin menetapkan Yarn sebagai pengelola paket default, tentukan variabel lingkungan:

NPQ_PKG_MGR=yarn

Untuk membuat alias dengan yarn sebagai pengelola paket, lakukan:

alias yarn="NPQ_PKG_MGR=yarn npq-hero"

Semoga membantu.


Linux
  1. Cara Menginstal Dan Menggunakan Manajer Paket Benang Di Linux

  2. Bagaimana Cara Menginstal Benang di Ubuntu 20.04?

  3. Bagaimana Cara Menginstal Paket Npm Di Nixos?

  1. Cara Mengelola Paket NodeJS Menggunakan Npm

  2. Cara Menginstal Yarn NPM Package Manager di Oracle Linux 8

  3. Cara menginstal npm di alpine linux

  1. Debian:Cara Menginstal atau Menghapus Paket DEB Menggunakan dpkg

  2. Cara menginstal paket menggunakan dnf di CentOS/RHEL 8

  3. Cara menginstal file .dsc di linux