Mac ssh连接Permissions 0644 for '*.pem' are too open

在用到ssh的时候,突然出现了报错

guoke:.ssh guoke $ ssh guoke
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/guoke/.ssh/guoke.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/Users/guoke/.ssh/guoke.pem": bad permissions
root@47.97.175.51: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

从字面意思看,这是密钥文件权限问题。
进入密钥文件目录,用ls -l查看

guoke:.ssh guoke $ ls -l
total 32
-rw-r--r--@ 1 guoke  staff   222 Nov 15 16:22 config
-rw-r--r--@ 1 guoke  staff  1700 Nov 11 20:19 guoke.pem

可以看出密钥文件的权限是-rw-r–r–(0644)

  • 解决办法是修改密钥文件权限为0600就可以了
guoke:.ssh guoke$ chmod 600 guoke.pem 
guoke:.ssh guoke$ ls -l
total 32
-rw-r--r--@ 1 guoke  staff   222 Nov 15 16:22 config
-rw-------@ 1 guoke  staff  1700 Nov 11 20:19 guoke.pem
guoke:.ssh guoke $ ssh guoke
Last login: Sat Nov 16 11:24:53 2019 from 111.23.117.141

Welcome to Alibaba Cloud Elastic Compute Service !
0%