为什么码头化的 SSH 服务无法启动,因为它无法加载主机密钥



我正在尝试dockerization一个SSH服务/守护进程,这不太可能,如下所述:https://docs.docker.com/engine/examples/running_ssh_service/#build-an-eg_sshd-image

在容器中,当我尝试/usr/sbin/sshd时,我得到

Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_dsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key

我尝试手动ssh-keygen -A

user@3df98eeeb0d7:/home/dev/$ sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''

但是,在/usr/sbin/sshd后再次加载主机密钥失败后,我仍然没有成功:

user@3df98eeeb0d7:/home/dev/$ /etc/init.d/ssh status
 * sshd is not running

由于创建新密钥不起作用,因此我不知道如何解决我的问题。

有时您需要超级用户权限

sudo /usr/sbin/sshd

解决您的问题。尽管在大多数容器上,您的用户在根上下文中运行所有命令。

最新更新