FTPの通信をセキュアにしたsftpコマンドの使い方についてのまとめです。
WindowsのPowerShellや、コマンドプロンプトからsftpを公開鍵方式で起動すると秘密鍵ファイルの読み込みでエラーがでる
Windowsのコマンドプロンプトからsftpを公開鍵方式で起動すると、秘密鍵の読み込みでエラーがでます。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for '秘密鍵ファイル名' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "秘密鍵ファイル名": bad permissions
「UNPROTECTED PRIVATE KEY FILE」と「bad permissions」とのことなので、なにやらアクセス権限が広く許可されすぎているっぽいです。
解決方法は、
アクセス権を設定する
か、
コマンドプロンプトを実行しているユーザーのユーザーフォルダで実行する
でした。
開発環境がNドライブだった
自分の開発環境は、Nドライブでした。
で、Nドライブ直下にTESTフォルダを作って、秘密鍵ファイルを設置。
コマンドプロンプトから、N:\TESTフォルダ内でsftpを起動したのです。
が、そのフォルダで実行するのが問題だったようです。
「C:\USER\ログインしているユーザー\ 」以下だと問題なく接続できました。