Linux ssh问题总结

[问题1] 
# /usr/local/sbin/sshd 
/usr/local/sbin/sshd: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory 

[分析与解决] 
用strace跟踪sshd,查询缺少的目录和文件,给与相应的添补。 
strace -f  -F  /usr/local/sbin/sshd 
cp libnsl* /work/lib/ 


[问题2] 
# /usr/local/sbin/sshd 
Privilege separation user sshd does not exist 

[分析与解决] 
没有sshd用户 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin 
scp  /etc/passwd root@HOST:/etc 
scp  /etc/shadow root@HOST:/etc 
scp  /etc/group  root@HOST:/etc 



[问题3] 
# /usr/local/sbin/sshd 
Missing privilege separation directory: /var/empty 

[分析与解决] 
# mkdir /var/empty 


   
[问题4] 
[root@localhost .ssh]# ssh -l root 192.168.167.132 
root@192.168.167.132's password: 
Permission denied, please try again. 

[分析与解决] 
密码输入错误,重新连接尝试. 



[问题5] 
# ./ssh-keygen 
Generating public/private rsa key pair. 
Enter file in which to save the key (/root/.ssh/id_rsa): 
Could not create directory '/root/.ssh'. 

[分析与解决] 
# ls / 
bin etc linuxrc nfs sys var dev jffs2 lost+found  proc tmpfs yaffs2 edwin lib mnt sbin usr 
# cd /root 
-sh: cd: can't cd to /root 
# mkdir root 
# cd /root 
# mkdir .ssh 




[问题6] 
# /usr/local/sbin/sshd 
Missing privilege separation directory: /var/empty 

[分析与解决] 
# ls /var 
# mkdir /var/empty 
# /usr/local/sbin/sshd 



[问题7] 
[root@localhost ~]# ssh 192.168.167.132 
ssh: connect to host 192.168.167.132 port 22: Connection refused      

[分析与解决] 
注释 /etc/hosts.deny   /etc/hosts.allow 中的限制部分. 
net sshd stop 
net sshd start 



[问题9] 
在客户端ssh到target后,用户帐户和密码验证通过,但是没有启动shell. 

[分析与解决] 
查看日志,发现有:PTY allocation request failed on channel 0 
1.rm -rf /dev/ptmx 
2.mknod /dev/ptmx c 5 2 
3.chmod 666 /dev/ptmx 
4.umount /dev/pts 
5.rm -rf /dev/pts 
6.mkdir /dev/pts 
7.mount /dev/pts 



[问题10] 
客户端连接卡住,无法连进. 

[分析与解决] 
有可能是cyg维护死进程太多,此为cyg的BUG,用有权限的账号连入系统: 
killall -9 bash 
killall -9 sshd 
net stop sshd 
net start sshd 



[问题11] 
ssh 显示已经脸上,但马上断开. 

[分析与解决] 
查看当前用户 /etc/password 里shell的设置是否正确. 
查看 /var/ 目录权限是否足够,包括所有者权限和文件权限. 
查看当前用户的家目录是否设置正常,权限是否足够. 



[问题12] 
sshd 服务无法启动 

[分析与解决] 
$ net start sshd 
发生系统错误 1069。 
由于登录失败而无法启动服务。 
-- 这是由于用户密码输入错误导致的,以后更改用户后sshd也可能发生这个问题,在 services.msc 里的登录标签里更改用户设置即可! 

$ net start sshd 
CYGWIN sshd 服务正在启动 . 
CYGWIN sshd 服务已经启动成功。 

事件 ID ( 0 )的描述(在资源( sshd )中)无法找到。 
本地计算机可能没有必要的注册信息或消息 DLL 文件来从远程计算机显示消息。 
您可能可以使用 /AUXSOURCE= 标识来检索词描述;查看帮助和支持以了解详细信息。 
下列信息是事件的一部分: sshd: PID 2784: fatal: setreuid 1003: Permission denied. 
-- 出现这种情况,需要重新安装服务. 
net stop sshd 
ssh-host-config 

posted @ 2016-11-28 16:29  当年亦如是  阅读(2515)  评论(0编辑  收藏  举报