Windows10 Home

Windows10でchmodコマンドが使えない

Windows10でchmodコマンドが使えない!?

先日、Docker ToolboxからDocker Desktopに変えたのですが、そこでローカルのターミナルからAWS(EC2)にssh接続しようとしたらできなくなっていました。以前は特につまずく要素もなく、AWSから取得したpemファイルをc:/Users/yuu/.sshに移動してからchmodコマンドで権限変更してssh接続できていました。しかし、今回の場合は以前と同じ手順を実施したにもかかわらずssh接続ができなくなっていました(もしかしたら違う手順をしてたかも?)。

実行時には下記エラーが出ており、そのpemファイルはセキュリティがガバガバだから使えないよと言われ、接続できませんでした。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for 'portfolio.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: portfolio.pem
Permission denied (publickey).

調べてみると、「Windowsのファイルシステムではchmodコマンドでは権限を変更することができない」そうです(;´д`)
または、Windowsではパーミッションを変更する必要がないだとか。

なので、主な解決策としては

・Linuxのホームディレクトリ直下に.sshフォルダを作成し、そこにpemファイルを移動させてからchmodコマンドを実行

これが一番簡単だと思います。
筆者はローカルでUbuntuを使用していたので、UbuntuとWindowsとの共有されているディレクトリ(/mnt/c/Users/yuu)からホームディレクトリ(/home/yuu.ssh)にpemファイルを移動させて行いました。

以下のコマンドは参考程度に

~/.ssh$mv /mnt/c/Users/yuu/Downloads/portfolio.pem .
~$ls
→portfolio.pem #mvコマンドで移動できたか確認
~$chmod 600 portfolio.pem
~$ssh接続