+ -
当前位置:首页 → 问答吧 → openssh 登入失败的问题

openssh 登入失败的问题

时间:2011-01-06

来源:互联网


大家好:

最近在弄一个 x86 的 embedded 系统,目前安装 ssh 发生了问题,希望可以请大家帮忙

我的问题在此
安装 openssh 后
执行 sshd 的时候发生 Privilege separation user sshd does not exist 的问题,所以 sshd 没有成功跑起来
而我有设定

/etc/passwd
程式码:
sshd:x:1001:1001:privsep,,,:/var/empty:/bin/false
tester:x:1002:1002:Linux User,,,:/home/tester:/bin/sh

/etc/group
程式码:
sshd:x:1001:
tester:x:1002:tester

其中 sshd 的使用者是给 sshd 使用的
而 tester 则是我自己用来测试登入用的
找了网路上的资料后知道除了 /etc/passwd 和 /etc/group 以外
可以修改 /etc/ssh/sshd_config
程式码:
#UsePrivilegeSeparation yes

改成
程式码:
UsePrivilegeSeparation no

用以上的方法可以开启,只是网路上的说明是说会造成安全性的降低
不过我因为要先把东西弄出来,所以就先不深究原因
这时后会出现
程式码:
/proc/74/oom_adj is deprecated, please use /proc/74/oom_score_adj instead

不过看来不是错误,只是不建议这样使用
而我用 putty 也确实可以看到登入画面
只是当用 tester 登入时会出现
程式码:
Access Denied

所以无法成功登入
推测原因,可能是无法正确取得 /etc/passwd 的内容
不过不知道为什么...
也许还有其他问题,也还不知道怎么去发现

若直接 ssh 或利用 ssh 做 local 的连线会出现
程式码:
You don't exist, go away

有先试过开启 telnetd 并且使用 tester 连线
确实可以登入并且使用指令

编译环境
ubuntu 10.04.1-server-i386
kernel 2.6.32-24
gcc 4.4.3

装置环境
linux-2.6.36
busybox-1.17.3
zlib-1.2.5
openssl-1.0.0c
openssh-5.6p1

不知道这样说明的够不够详细
麻烦大家了
谢谢

作者: kanos   发布时间: 2011-01-06

没人回答~"~

不过今天解决了登入的问题

还是分享一下好了

因为感觉是无法找到 /etc/passwd 和 /etc/group 的问题
所以在 openssh 编译时有特别注意 ./configure 到底做了什么事
发现它会去检查 groupadd 和 useradd 的指令
但是 busybox 只有 addgroup 和 adduser 这个指令
两个指令不同
所以我把 groupadd、useradd 都移植到我的目标装置上去
测试结果确实也无法新增群组和使用者
经由老师的建议
使用 strace 去检查 groupadd 到底执行到哪个步骤时发生问题
发现有数个档案不存在目标装置内
将这些档案复制过去后
发现 groupadd 确实可以增加群组后
将目标装置开机能够成功开启 sshd
不会再出现 Privelege Separated sshd user doesn't exist 的问题
并且使用 putty 成功登入!

不过目前问题变成是无法切换成 root
还是要继续努力

作者: kanos   发布时间: 2011-01-07

热门下载

更多