如果出现Permission denied (publickey)问题,需要添加key
1. 添加public key
ssh-keygen -t dsa -b 1024
提示 Enter file in which to save the key: 输入任意一文件名(例如id_dsa)
提示 Enter file in which to save the key, 连续输入两次回车
ls /home 或者 /.ssh 。 能够发现俩文件。 id_dsa 和 id_dsa.pub. 前者是密钥,后者是公钥.
添加public key到gerrit
打开id_dsa.pub,复制内容,进入gerrit->setting->SSH Publick key->add key,
粘贴公钥内容,点击add。
修改id_dsa id_dsa.pub .ssh的权限
chmod 700
* 若是遇到Permission denied (publickey). 那多是你没有添加密钥到ssh-agent. 尝试ssh-add id_dsa. 在add的时候若是遇到Could not open a connection to your authentication agent. 尝试ssh-agent bash. 而后再 ssh-add.
2. 配置ssh版本
>>> ssh -V
debug1: Skipping ssh-dss key /home/fanshengshuai/.ssh/id_dsa - not in PubkeyAcceptedKeyTypes
openSSH 7.0 以上已经默认关闭了 ssh-dss 了,我们看一下我们的 ssh 版本:
>>> ssh -V
OpenSSH_7.9p1, OpenSSL 1.1.1 11 Sep 2018
已经是 7.9 了,我们用下面的方法把 ssh-dss 打开:
>>> sudo vim /etc/ssh/ssh_config
注意是 ssh_config,本地的配置文件,不是服务器上的 sshd_config。
找到 # Host * 把注释去掉,然后下面添加一句:PubkeyAcceptedKeyTypes=+ssh-dss,完成后这个样子:
Host *
PubkeyAcceptedKeyTypes=+ssh-dss
3. 修改root权限
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/root/.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 "/root/.ssh/id_rsa": bad permissions
Permission denied (publickey).
解决办法:
id_rsa文件默认权限属性是700,当初为了打开root文件夹临时更成了777,所以只要把root文件夹权限改回700即可
操作步骤:
输入chmod -R 700 /root即可。
4.报错
ModuleNotFoundError: No module named 'gdbm'
解决:
apt update
apt purge python3-gdbm
5. 通过如下命令可以测试目前连接情况和连接具体问题
ssh -v -p 29418 ***@gerrit.***
如果出现如下情况,代表连接成功
**** Welcome to Gerrit Code Review ****
Hi **, you have successfully connected over SSH.
参考链接:
SSH 密钥登录:not in PubkeyAcceptedKeyTypes_懒是一种态度的博客-CSDN博客
解决Permissions 0777 for '/root/.ssh/id_rsa' are too open问题_love421的博客-CSDN博客
git debug gerrit无法review代码_xiaojueguan的博客-CSDN博客
Ubuntu安装openssh - cicarius - 博客园
python3没有名为'gdbm'的模块_上官-王野的博客-程序员宅基地_python3-gdbm - 程序员宅基地
gerrit ssh 运维命令遇到Permission denied (publickey) 状况 - JavaShuo