关于transwarp账号无秘钥登录失败问题排查思路

  其他常见问题
内容纲要

概要描述

transwarp账号的无密码登陆如果有问题,可能会导致升级失败、TDH巡检报告登陆各个节点出错。

本文描述transwarp账号无密码连接出现问题后的排查思路。

详细说明

1 检查用户和用户组是否存在

[root@mll01 TDH-Client]# getent group transwarp
transwarp:x:994:
[root@mll01 TDH-Client]# getent passwd transwarp
transwarp:x:996:994:Transwarp Data Hub:/home/transwarp:/bin/bash

如果不存在,则使用以下命令进行添加:

添加transwarp组

groupadd -r transwarp

添加transwarp账号

useradd -c ‘Default user to execute inspection’ -s /bin/bash -g transwarp -r -d /home/transwarp transwarp

2 检查用户是否具有 sudo 权限,且必须是 NOPASSWD sudoer

[root@mll01 TDH-Client]# cat /etc/sudoers | grep transwarp
transwarp      ALL=(ALL)       NOPASSWD: ALL

如果没有则需要添加

3 检查集群各个节点/home/transwarp/.ssh 各级目录和文件的权限和 owner 是否正确

ls -la /home/transwarp/.ssh

file

4 检查各个节点 /home/transwarp/.ssh/authorized_keys 的内容是否包含 manager 节点的 /etc/transwarp/transwarp-id_rsa.pub 的公钥

查看公钥信息

[root@mll01 TDH-Client]# cat /etc/transwarp/transwarp-id_rsa.pub

file

查看集群每个节点的authorized_keys信息

[root@mll01 TDH-Client]# cat /home/transwarp/.ssh/authorized_keys

file

file

file

5 检查manager节点的公私钥权限是否正确

 ls -al /etc/transwarp/

公私钥文件的权限不能设置的更大,owner 也必须都是 root:root
file

6 检查 manager 节点的公私钥格式是否正确,以及内容是否匹配

检查私钥格式是否正确,“echo $?”结果为 0 表示正确

[root@mll01 TDH-Client]# openssl rsa -in /etc/transwarp/transwarp-id_rsa -text -noout > /dev/null
[root@mll01 TDH-Client]# echo $?
0

检查公钥内容是否正确,“echo $?”结果为 0 表示正确

[root@mll01 TDH-Client]# ssh-keygen -y -f /etc/transwarp/transwarp-id_rsa > /tmp/transwarp-id_rsa.pub.tobecompared
[root@mll01 TDH-Client]# eval [ “$(cat /etc/transwarp/transwarp-id_rsa.pub | awk '{print $2}')” == “$(cat /tmp/transwarp-id_rsa.pub.tobecompared | awk '{print $2}')” ]
[root@mll01 TDH-Client]# echo $?
0

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。