公司IT心血来潮对GitLab服务器进行安全升级,升级后无法启动。。。只得启用备用服务器,具体的备份机制不祥,只知道原数据都在,但文件系统是否完全一样不清楚。切换为备用服务器后使用SSH下载代码死活不成功,反复提示需要输入git@[hostname]的密码。最后问题解决了,十分狗血。。以下是我的解决思路:文章来源:https://www.toymoban.com/news/detail-804790.html
- 怀疑是否是本地的公钥是否正常:尝试生成SSH公钥并上传,故障现象未发生改变;
- 怀疑服务端ssh通信异常:采用GitLab官方的SSH调试命令(`ssh -Tvvv git@[hostname]`)访问,回显日志中未有任何异常报错信息;
- 怀疑公钥未上传成功:在默认安装路径(`/var/opt/gitlab`)下的`.ssh/authorized_keys`文件中找到了自己的公钥,说明系统拥有该文件的正常读写权限(`600`),且可正常将WEB端输入写入该文件,故排除;
- 怀疑sshd配置文件中存在加密算法种类限制:有同事反馈使用`ed25519`取代`rsa`作为加密算法可正常连接,因此怀疑配置文件出了问题,首先通过命令`service ssh status`查看ssh运行状态,并同时在客户端进行代码克隆操作,果然有了收获。回显日志信息中关键行为
... gitserver-sdmp-139 sshd[1368775]: userauth_pubkey: key type ssh-rsa not in PubkeyAcceotedAlgorithms [preauth]
解决方法也很简单,根据上文的提示在`/etc/ssh/sshd_config`中添加如下配置字段,并重启sshd服务即恢复正常。文章来源地址https://www.toymoban.com/news/detail-804790.html
PubkeyAcceotedAlgorithms ssh-rsa
到了这里,关于记GitLab服务器迁移后SSH访问无法生效的问题解决过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!