javascriptでVPSのcentosにyum -y install Squidていうコマンドを送信する方法を教えてほしいです。
javascriptでログインキーを使ったログイン方法も教えていただきたいです。
よろしくお願いします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
javascriptでVPSのcentosにyum -y install Squidていうコマンドを送信する方法を教えてほしいです。
ssh でログインしてコマンドを実行するのでよろしいでしょうか。ssh でログインするためにはクライアント側で擬似端末を実装する必要があります。
'javascript ssh password pseudo tty' とかでぐぐると、 ssh の擬似端末を実装するライブラリが多数見つかりますが、ssh2はどうでしょうか。
検証はしてませんが、最初の「Execute uptime on a server」の例の'uptime'の部分を'yum -y install Squid'に変えればできるのではないでしょうか?
javascriptでログインキーを使ったログイン方法も教えていただきたいです。
このサンプルでは、ssh の秘密鍵を connect メソッドの privateKey パラメータで指定していますので、この方法でできると思います。
ただし、ブラウザの javascript からはできません。あくまで、node.js からになります。
念の為、元サイトの内容をコピペしておきますね。
動作環境
node.js -- v5.10.0以上
ただし、Ed25519 key を利用する場合には node.js v12.0.0 以上
インストール
shell
1npm install ssh2
実装例
javascript
1var Client = require('ssh2').Client; 2 3var conn = new Client(); 4conn.on('ready', function() { 5 console.log('Client :: ready'); 6 conn.exec('yum -y install Squid', function(err, stream) { 7 if (err) throw err; 8 stream.on('close', function(code, signal) { 9 console.log('Stream :: close :: code: ' + code + ', signal: ' + signal); 10 conn.end(); 11 }).on('data', function(data) { 12 console.log('STDOUT: ' + data); 13 }).stderr.on('data', function(data) { 14 console.log('STDERR: ' + data); 15 }); 16 }); 17}).connect({ 18 host: '192.168.100.100', 19 port: 22, 20 username: 'frylock', 21 privateKey: require('fs').readFileSync('秘密鍵のパス') 22});
投稿2020/03/20 22:36
編集2020/03/21 01:41総合スコア3401
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。