Rumah hujung hadapan web tutorial js Penjelasan terperinci tentang cara melaksanakan SSH menggunakan Node.js

Penjelasan terperinci tentang cara melaksanakan SSH menggunakan Node.js

Apr 05, 2023 am 09:10 AM

SSH ialah protokol rangkaian yang disulitkan yang membenarkan komunikasi data selamat antara komputer, terutamanya untuk capaian dan kawalan jauh.

Node.js ialah persekitaran masa jalan JavaScript berdasarkan enjin Chrome V8, yang boleh membantu kami membina aplikasi web yang cekap dan berskala. Dalam artikel ini, kita akan belajar cara melaksanakan SSH menggunakan Node.js.

  1. Pasang Node.js

Sebelum menggunakan Node.js, kita perlu memasangnya terlebih dahulu. Anda boleh memuat turun pakej pemasangan dari laman web rasmi dan ikut arahan untuk memasangnya.

  1. Pasang modul SSH2

Dalam Node.js, kita boleh menggunakan modul SSH2 untuk melaksanakan SSH. SSH2 ialah pelaksanaan JavaScript tulen bagi klien SSH2 dan perpustakaan sisi pelayan yang dijalankan dalam Node.js.

Kami boleh menggunakan pengurus pakej npm untuk memasang modul SSH2:

npm install ssh2
Salin selepas log masuk

Selepas pemasangan selesai, anda boleh mula menggunakan modul SSH2.

  1. Sambung ke pelayan SSH

Sebelum menggunakan modul SSH2, kita perlu mewujudkan sambungan SSH terlebih dahulu.

const Client = require('ssh2').Client;

const conn = new Client();
conn.on('ready', () => {
  console.log('已连接');
  conn.end();
}).connect({
  host: 'x.x.x.x',
  port: 22,
  username: 'username',
  password: 'password',
});
Salin selepas log masuk

Dalam contoh ini, kami mula-mula mengimport kelas Klien modul SSH2, dan kemudian mencipta sambungan objek sambungan klien SSH.

Pada objek sambungan, kita boleh mendengar acara sedia, yang dicetuskan selepas sambungan berjaya diwujudkan dan mengeluarkan maklumat "bersambung". Akhir sekali, kami memanggil kaedah conn.end() untuk menutup sambungan.

Dalam pilihan sambungan, kami perlu memberikan maklumat alamat, port, nama pengguna dan kata laluan pelayan SSH sasaran.

  1. Laksanakan arahan SSH

Selepas sambungan berjaya diwujudkan, kita boleh menggunakan modul SSH2 untuk melaksanakan arahan jauh.

conn.on('ready', () => {
  console.log('已连接');
  conn.exec('ls', (err, stream) => {
    if (err) throw err;
    stream.on('close', (code, signal) => {
      console.log(`命令执行结束,退出码为:${code}`);
      conn.end();
    }).on('data', data => {
      console.log(`输出信息:${data}`);
    }).stderr.on('data', data => {
      console.log(`错误信息:${data}`);
    });
  });
}).connect({
  host: 'x.x.x.x',
  port: 22,
  username: 'username',
  password: 'password',
});
Salin selepas log masuk

Dalam contoh ini, kami memanggil kaedah conn.exec() untuk melaksanakan perintah ls dan menghantar dalam fungsi panggil balik.

Jika ralat berlaku semasa melaksanakan arahan, fungsi panggil balik akan membuang pengecualian. Jika arahan itu berjaya dilaksanakan, kami akan mendapat aliran objek aliran yang boleh dibaca.

Kita boleh mendengar acara tutup objek strim, yang dicetuskan pada penghujung pelaksanaan arahan dan mengeluarkan kod keluar. Pada masa yang sama, kami juga mendengar peristiwa data dan peristiwa stderr objek aliran, dan masing-masing mengeluarkan output standard dan maklumat output ralat.

Akhir sekali, kami memanggil kaedah conn.end() dalam fungsi pengendali acara untuk menutup sambungan.

  1. Pemindahan Fail

Selain pelaksanaan arahan jauh, modul SSH2 juga menyokong fungsi pemindahan fail.

conn.sftp((err, sftp) => {
  if (err) throw err;
  const localFile = '/path/to/local/file.txt';
  const remoteFile = '/path/to/remote/file.txt';
  sftp.fastPut(localFile, remoteFile, err => {
    if (err) throw err;
    console.log('文件传输完成');
    conn.end();
  });
});
Salin selepas log masuk

Dalam contoh ini, kami memanggil kaedah conn.sftp() untuk mendapatkan objek SFTP, yang menyediakan fungsi pemindahan fail.

Kami menggunakan kaedah sftp.fastPut() untuk memindahkan fail setempat ke pelayan jauh dengan cepat. Selepas pemindahan selesai, kami mengeluarkan mesej "Pemindahan fail selesai" dan menutup sambungan.

  1. Ringkasan

Dalam artikel ini, kami mempelajari cara melaksanakan SSH secara pemprograman menggunakan modul SSH2. Kami mula-mula menyambung ke pelayan SSH dan kemudian melaksanakan arahan dan pemindahan fail. Dengan Node.js dan modul SSH2, kami boleh melaksanakan fungsi SSH dengan mudah untuk membina aplikasi rangkaian yang cekap dan berskala.

Atas ialah kandungan terperinci Penjelasan terperinci tentang cara melaksanakan SSH menggunakan Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ganti aksara rentetan dalam javascript Ganti aksara rentetan dalam javascript Mar 11, 2025 am 12:07 AM

Penjelasan terperinci mengenai kaedah penggantian rentetan javascript dan Soalan Lazim Artikel ini akan meneroka dua cara untuk menggantikan watak rentetan dalam JavaScript: Kod JavaScript dalaman dan HTML dalaman untuk laman web. Ganti rentetan di dalam kod JavaScript Cara yang paling langsung ialah menggunakan kaedah pengganti (): str = str.replace ("cari", "ganti"); Kaedah ini hanya menggantikan perlawanan pertama. Untuk menggantikan semua perlawanan, gunakan ungkapan biasa dan tambahkan bendera global g: str = str.replace (/fi

Tutorial Persediaan API Carian Google Custom Tutorial Persediaan API Carian Google Custom Mar 04, 2025 am 01:06 AM

Tutorial ini menunjukkan kepada anda bagaimana untuk mengintegrasikan API carian Google tersuai ke dalam blog atau laman web anda, menawarkan pengalaman carian yang lebih halus daripada fungsi carian tema WordPress standard. Ia menghairankan mudah! Anda akan dapat menyekat carian ke y

Contoh warna json fail Contoh warna json fail Mar 03, 2025 am 12:35 AM

Siri artikel ini ditulis semula pada pertengahan 2017 dengan maklumat terkini dan contoh segar. Dalam contoh JSON ini, kita akan melihat bagaimana kita dapat menyimpan nilai mudah dalam fail menggunakan format JSON. Menggunakan notasi pasangan nilai utama, kami boleh menyimpan apa-apa jenis

10 JQuery Syntax Highlighters 10 JQuery Syntax Highlighters Mar 02, 2025 am 12:32 AM

Tingkatkan Penyampaian Kod Anda: 10 Penyeret Sintaks untuk Pemaju Coretan kod perkongsian di laman web atau blog anda adalah amalan biasa bagi pemaju. Memilih penyapu sintaks yang betul dapat meningkatkan daya tarikan dan daya tarikan visual dengan ketara. T

Bina Aplikasi Web Ajax anda sendiri Bina Aplikasi Web Ajax anda sendiri Mar 09, 2025 am 12:11 AM

Jadi di sini anda, bersedia untuk mempelajari semua perkara ini yang dipanggil Ajax. Tetapi, apa sebenarnya? Istilah Ajax merujuk kepada kumpulan teknologi longgar yang digunakan untuk membuat kandungan web yang dinamik dan interaktif. Istilah Ajax, yang asalnya dicipta oleh Jesse J

8 plugin susun atur halaman jquery yang menakjubkan 8 plugin susun atur halaman jquery yang menakjubkan Mar 06, 2025 am 12:48 AM

Leverage JQuery untuk Layouts Laman Web yang mudah: 8 Plugin Essential JQuery memudahkan susun atur laman web dengan ketara. Artikel ini menyoroti lapan plugin jQuery yang kuat yang menyelaraskan proses, terutamanya berguna untuk penciptaan laman web manual

10 JavaScript & JQuery MVC Tutorial 10 JavaScript & JQuery MVC Tutorial Mar 02, 2025 am 01:16 AM

Artikel ini membentangkan pemilihan lebih daripada 10 tutorial mengenai rangka kerja javascript dan jquery model-view-controller (MVC), sesuai untuk meningkatkan kemahiran pembangunan web anda pada tahun baru. Tutorial ini merangkumi pelbagai topik, dari Foundatio

Apa itu ' ini ' Dalam JavaScript? Apa itu ' ini ' Dalam JavaScript? Mar 04, 2025 am 01:15 AM

Mata teras Ini dalam JavaScript biasanya merujuk kepada objek yang "memiliki" kaedah, tetapi ia bergantung kepada bagaimana fungsi dipanggil. Apabila tidak ada objek semasa, ini merujuk kepada objek global. Dalam penyemak imbas web, ia diwakili oleh tetingkap. Apabila memanggil fungsi, ini mengekalkan objek global; tetapi apabila memanggil pembina objek atau mana -mana kaedahnya, ini merujuk kepada contoh objek. Anda boleh mengubah konteks ini menggunakan kaedah seperti panggilan (), memohon (), dan mengikat (). Kaedah ini memanggil fungsi menggunakan nilai dan parameter yang diberikan. JavaScript adalah bahasa pengaturcaraan yang sangat baik. Beberapa tahun yang lalu, ayat ini

See all articles