When I'm trying to upload file using SFTP extension in Visual Studio Code, following error is shown:
1 |
Error while signing data with privateKey: error:06000066:public key routines:OPENSSL_internal:DECODE_ERROR |
Full stack trace is
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
[04-15 09:45:25] [error] Error: [120.55.113.108]: Error while signing data with privateKey: error:06000066:public key routines:OPENSSL_internal:DECODE_ERROR at Client.<anonymous> (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/dist/extension.js:70:107548) at Client.emit (events.js:327:22) at Client.EventEmitter.emit (domain.js:483:12) at /home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2/lib/client.js:578:16 at SSH2Stream.authPK (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/ssh.js:1640:3) at SSH2Stream.onUSERAUTH_PK_OK (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2/lib/client.js:572:14) at Object.onceWrapper (events.js:421:28) at SSH2Stream.emit (events.js:315:20) at SSH2Stream.EventEmitter.emit (domain.js:483:12) at parse_USERAUTH (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/ssh.js:4171:12) at parsePacket (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/ssh.js:3862:12) at SSH2Stream._transform (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/ssh.js:694:13) at SSH2Stream.Transform._read (_stream_transform.js:191:10) at SSH2Stream._read (/home/gbstack/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/ssh.js:253:15) at SSH2Stream.Transform._write (_stream_transform.js:179:12) at doWrite (_stream_writable.js:403:12) at writeOrBuffer (_stream_writable.js:387:5) at SSH2Stream.Writable.write (_stream_writable.js:318:11) at Socket.ondata (_stream_readable.js:716:22) at Socket.emit (events.js:315:20) at Socket.EventEmitter.emit (domain.js:483:12) at addChunk (_stream_readable.js:295:12) at readableAddChunk (_stream_readable.js:271:9) at Socket.Readable.push (_stream_readable.js:212:10) at TCP.onStreamRead (internal/stream_base_commons.js:186:23) |
The ssh connection is using public key authentication, and my sftp configuration (sftp.json) is like following:
1 2 3 4 5 6 7 8 9 |
{ "name": "My Server", "host": "test", "protocol": "sftp", "privateKeyPath": "/home/test/.ssh/id_rsa", "port": 22, "username": "root", "remotePath": "/var/www/html/test/" } |
Solution
To fix this error, we can convert the private key file from OpenSSH private key format to PEM format.
1 |
ssh-keygen -p -m PEM -f /home/test/.ssh/id_rsa |
Try again it will work now.