我们有两个用户。Tom 和 Jim。系统使用 krb5 和 sldap。
Tom$ ssh machine1.somecompany.com
Password:
Permission denied (publickey,gssapi-with-mic,keyboard-interactive).
//////
Jim: ssh machine1.somecompany.com
Password:
sucesss
Jim@machine1$
Jim@machine1$ id Jim
uid=1178(Jim) gid=1178(Jim) groups=1178(Jim),0(wheel),60002(AAA),60006(BBB),60007(CCC)
Jim@machine1$ id Tom
uid=1178(Tom) gid=1178(Tom) groups=1178(Tom),0(wheel),60002(AAA)
//////
Tom$ ssh machine2.somecompany.com
Password:
success!
Tom@machine2$ ssh machine1.somecompany.com
Password:
success!
Tom@machine1$
因此,Jim 可以直接 ssh 进入机器 1;与 Tom 相比,jim 属于两个额外的组 BBB 和 CCC。Tom 无法直接 ssh 进入机器 1。但是,tom 可以 ssh 进入机器 2,然后 ssh 进入机器 1。
这告诉您有关系统的哪些信息?如果我手动将 Tom 添加到 BBB 和 CCC 组中,Tom 是否能够直接通过 ssh 进入 machine1?如果我从 BBB 和 CCC 中删除 Jim,Jim 是否能够直接通过 ssh 进入 machine1?
答案1
您没有足够的信息来了解。
OpenSSH 允许根据每个用户、每个组或每个远程计算机设置登录限制(例如“必须使用基于密钥的身份验证”),以及其他可能不相关的标准。为了找出答案,您需要查看守护进程的配置文件()/etc/ssh/sshd_config
,并可能查看每个用户的配置文件(~/.ssh/*
)。