我在mac上生成一个ssh密钥对,并将公钥添加到我的ubuntu服务器(实际上,它是mac上的一个虚拟机),但当我尝试登录ubuntu服务器时,它会说:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/tudouya/.ssh/vm/vm_id_rsa.pub' 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: /Users/tudouya/.ssh/vm/vm_id_rsa.pub
Permission denied (publickey,password).
我已经尝试了很多方法来解决这个问题,改变密钥文件模式,改变文件夹模式,就像stackoverflow上的一些答案一样,但是它不起作用。
密钥文件权限:
vm dir:
drwxr-xr-x 4 tudouya staff 136 4 29 10:37 vm
key file:
-rw------- 1 tudouya staff 1679 4 29 10:30 vm_id_rsa
-rw-r--r-- 1 tudouya staff 391 4 29 10:30 vm_id_rsa.pub
请给我一些想法=========================================
我将主机信息写入ssh\u config:
Host ubuntuvm
Hostname 10.211.55.17
PreferredAuthentications publickey
IdentityFile /Users/tudouya/.ssh/vm/vm_id_rsa.pub
我运行命令"ssh-v ubuntuvm",它显示:
ssh -v ubuntuvm
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 103: Applying options for *
debug1: /etc/ssh_config line 175: Applying options for ubuntuvm
debug1: Connecting to 10.211.55.17 [10.211.55.17] port 22.
debug1: Connection established.
debug1: identity file /Users/tudouya/.ssh/vm/vm_id_rsa.pub type 1
debug1: identity file /Users/tudouya/.ssh/vm/vm_id_rsa.pub-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-8
debug1: match: OpenSSH_6.6.1p1 Ubuntu-8 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none
debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 55:6d:4f:0f:23:51:ac:8e:70:01:ec:0e:62:9e:1c:10
debug1: Host '10.211.55.17' is known and matches the RSA host key.
debug1: Found key in /Users/tudouya/.ssh/known_hosts:54
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/tudouya/.ssh/vm/vm_id_rsa.pub
debug1: Server accepts key: pkalg ssh-rsa blen 279
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/tudouya/.ssh/vm/vm_id_rsa.pub' 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: /Users/tudouya/.ssh/vm/vm_id_rsa.pub
debug1: No more authentication methods to try.
Permission denied (publickey,password).
登录用户应能读取密钥。
试试这个:
chmod 400 ~/.ssh/Key file
chmod 400 ~/.ssh/vm_id_rsa.pub
debug1: identity file /Users/tudouya/.ssh/vm/vm_id_rsa.pub type 1
您似乎试图使用错误的密钥文件。扩展名为“. pub”的文件包含密钥的公共部分。没有“. pub”扩展名的相应文件包含密钥的私有部分。当运行ssh客户端连接到远程服务器时,必须向ssh客户端提供私钥文件。
您的中可能有一行。ssh/config
文件(或/etc/ssh\u config
)如下所示:
IdentityFile .../.ssh/vm/vm_id_rsa.pub
您需要从文件名中删除“.pub”扩展名:
IdentityFile .../.ssh/vm/vm_id_rsa
我建议你做:
chmod 400 ~/.ssh/id_rsa
它对我很有用。
本文向大家介绍关于linux权限s权限和t权限详解,包括了关于linux权限s权限和t权限详解的使用技巧和注意事项,需要的朋友参考一下 常用权限 linux系统内有档案有三种身份 u:拥有者 g:群组 o:其他人 这些身份对于文档常用的有下面权限: r:读权限,用户可以读取文档的内容,如用cat,more查看 w:写权限,用户可以编辑文档 x:该目录具有可以被系统执行的权限 其他权限 除了读
问题内容: 如果我尝试使用 getLine1Number() 获取电话号码时设备运行的是Android 6.0或更高版本: java.lang.SecurityException:要求READ_PHONE_STATE:用户10184和当前进程都没有android.permission.READ_PHONE_STATE。 这出来了。 我宣布允许为: 问题答案: 在Android 6.0中,您需要明确
今天回北京了,想把在外地做的集群移植回来,需要修改ip地址和一些配置参数,结果在配置的过程中,总是会有一些提示,说是我的机器之间的认证权限有问题。所以对照以前写的安装手册,把ssh重新配置了一遍。但是发现在启动的时候还是有提示,说是我的ssh有错误,还是需要输入yes和密码来登录。总结了一下,内容如下: 1、hadoop的ssh配置namenode无密码访问datanode需要配置各个机器,详细步
美好的一天, 我有一个通过服务将我的android设备连接到arduino设备的应用程序。我已经成功地建立了连接,但每当我插入配件时,它总是要求我允许使用它。有没有办法绕过这个权限?如果我通过一个活动来做,它与意图过滤器完美地工作,我已经尝试在服务中应用相同的意图,但它似乎不工作:/。 这是我的清单中的代码。爱内里菜
http://${host}:${port}/auth/realms/${realm_name}/authz/protection/resource_set 但是我没有看到一个API来CRUD授权策略和权限。 我试图通过protection/resource_setendpoint创建策略,但失败了: