赞
踩
[15:29:00.146] Terminal shell path: C:\WINDOWS\System32\cmd.exe
[15:29:01.703] > root@59.110.21.45: Permission denied (publickey,password).
解决:
cd ~/
mkdir .ssh
# 注意.ssh文件夹的权限
chmod 700 .ssh
cd .ssh
ssh-keygen -t rsa
# 遇到如下输出,可直接回车继续
# Generating public/private rsa key pair.
# Enter file in which to save the key (/home/user/.ssh/id_rsa):
# Enter passphrase (empty for no passphrase):
# Enter same passphrase again:
chmod 600 id_rsa
chmod 644 id_rsa.pub
scp -r .ssh/id_rsa server:.ssh/
ssh user@server
cd .ssh
cat id_rsa.pub >>authorized_keys
ssh user@server_address
# 如果你的本地用户名和server用户名相同
ssh server_address
如果还需要密码, 那可能是文件权限不对
chmod 700 .ssh/
chmod 600 .ssh/id_rsa
chmod 644 .ssh/authorized_keys
chmod 644 .ssh/id_rsa.pub
但是还是有报错:
Bad permissions. Try removing permissions for user: NT AUTHORITY\Authenticated Users (S-1-5-11) on file D:/.ssh/id_rsa.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for ‘D:\.ssh\id_rsa’ are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key “D:\.ssh\id_rsa”: bad permissions
root@59.110.21.45: Permission denied (publickey,password).
结果登录不上,登录报错截图
主要原因就是当前文件给的权限太大了,不够安全,所以终止了连接
Permissions for ‘xxx’ are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key “xxx”: bad permissions
文档里,有一个步骤是 赋予私钥文件仅本人可读权限
教程里使用的是 chmod 命令,该命令在 windows 下实际上是不可用的,会出现如下提示
我自己用的一直是 cmder ,虽然拓展了该命令工具,但是实际上是不会生效的,而且也没有反馈
实际上在 win10 环境下,应该是使用 icacls 命令设置访问权限,但是对于这一块实在是不熟,网上资料也比较少,有感兴趣的可以看 微软官方文档
密钥文件右键 -》属性 -》 安全 -》 高级 -》 禁用权限 -》从此对象中删除所有已继承的权限 -》 应用
设置完之后,当前文件的权限已经全部清除了
这个时候我们需要添加一个用户,给予访问权限,要与使用 ssh 连接登录的用户一致
右键 -》属性 -》 安全 -》 高级 -》 添加 -》 选择主体 -》 高级 -》 立即查找 -》 选择用户后确认,一路保存即可
这个时候我们再使用 ssh 连接,就会提示连接成功啦
参考:https://www.cnblogs.com/chkhk/p/13414823.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。