Embedded 在嵌入式系统上手动恢复ssh访问(可以直接访问hdd)

Embedded 在嵌入式系统上手动恢复ssh访问(可以直接访问hdd),embedded,ssh,debian,ssh-keys,locked,Embedded,Ssh,Debian,Ssh Keys,Locked,我还有一个关于ssh问题的问题: 在嵌入式系统(没有显示器,没有键盘)上,我唯一的登录界面是ssh。Telnet也被禁用。(我目前正在尝试启用它,但希望不大……) 我目前唯一的互动是收到ping回答,并通过smb://浏览我的共享文件 ssh的答案总是: $ ssh -vvvvl root 192.168.0.3 OpenSSH_5.5p1 Debian-4ubuntu4, OpenSSL 0.9.8o 01 Jun 2010 debug1: Reading configuration data

我还有一个关于ssh问题的问题:

在嵌入式系统(没有显示器,没有键盘)上,我唯一的登录界面是ssh。Telnet也被禁用。(我目前正在尝试启用它,但希望不大……)

我目前唯一的互动是收到
ping
回答,并通过
smb://
浏览我的共享文件

ssh的答案总是:

$ ssh -vvvvl root 192.168.0.3
OpenSSH_5.5p1 Debian-4ubuntu4, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.3 [192.168.0.3] port 22.
debug1: Connection established.
debug1: identity file /home/simon/.ssh/id_rsa type -1
debug1: identity file /home/simon/.ssh/id_rsa-cert type -1
debug1: identity file /home/simon/.ssh/id_dsa type -1
debug1: identity file /home/simon/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.3p2 Debian-8
debug1: match: OpenSSH_4.3p2 Debian-8 pat OpenSSH_4*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu4
debug2: fd 3 setting O_NONBLOCK
debug1: SSH2_MSG_KEXINIT sent
Read from socket failed: Connection reset by peer
但我直接访问硬盘是通过将硬盘从设备中取出并在连接到另一台机器时操作硬盘上的文件

在我注销并被锁定之前,我的最后一个步骤是
sudo rm/etc/ssh/*host*key*
,然后是
dpkg-reconfigure-openssh-server
,失败的原因是找不到
dpkg-reconfigure
。所以我想问题是,键被删除了

我现在的问题是:我如何在没有在目标系统上运行任何命令的情况下在海上创建密钥并将其提供给
sshd
,或者如何使
sshd
让我在没有密钥的情况下登录


如果有的话,谢谢你的帮助

ssh-vvl根目录192.168.0.3

应该是:

ssh-vvlroot@192.168.0.3


我不知道这是否只是你在stackoverflow上发布时的一个输入错误,或者是你在命令行上输入的。

你可以在一个方便的Linux系统上生成一组新的主机密钥,如下所示:

ssh-keygen -t rsa -b 2048 -f ssh_host_rsa_key
ssh-keygen -t dsa -b 1024 -f ssh_host_dsa_key
ssh-keygen
要求您输入密码短语时,在不键入任何内容的情况下点击
Enter
。主机密钥必须具有空密码短语

这将在当前目录中创建以下文件:

ssh_host_rsa_key
ssh_host_rsa_key.pub
ssh_host_dsa_key
ssh_host_dsa_key.pub
然后,您可以装载设备的硬盘,并将这四个文件复制到
etc/ssh

请注意,当您稍后尝试使用ssh连接到系统时,您的ssh客户端会抱怨密钥与预期的不同,并且可能会拒绝连接。如果您正在运行OpenSSH客户端,可以再次使用
ssh-keygen
来更正此问题:

ssh-keygen -R <your_server_hostname>
ssh-keygen-R

ssh-l登录名主机名
ssh相同user@hostname
,我想。至少在我被锁在外面之前它起作用了…;-)是否可以将我的目标硬盘的
/etc/ssh/
安装到我的
/etc/ssh/
上,并在我的机器上运行
dpkg重新配置openssh服务器
,或者这些密钥必须与“真实”设置(内核版本、用户名、体系结构…)上的任何内容匹配?噢,非常感谢!没想到会这么简单!这确实可以解决问题!但它来得有点晚。我突然想到在
/etc/init.d/
中创建一个脚本,在引导期间在主机上运行
dpkg-reconfigure-openssh-service
。它已经成功地创建了密钥,我再次通过ssh连接。但是非常感谢你的帮助!