为什么dockerized SSH服务无法启动,因为它无法加载主机密钥?

时间:2019-01-10 16:13:14

标签: docker ssh

我正在尝试对SSH服务/守护程序进行docker化,如下所述: 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

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

1 个答案:

答案 0 :(得分:0)

有时您需要超级用户权限

sudo /usr/sbin/sshd

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