使用 lxc 用户通过 SSH 连接到 lxc 容器
Connecting to lxc container via SSH using lxc user
我注意到我用来通过 lxc-console
连接到新创建的 LXC 容器的 username/password 不适用于 ssh(容器中有 sshd 运行)。当我尝试时,我得到 Permission denied
为什么会这样,我怎样才能让它发挥作用?
你们允许 SSH 密码吗?您是否有从主机到 LXC 容器 IP 地址的端口转发的 iptables 规则?您可以使用以下行添加一个(将端口更改为容器的 ssh 端口):
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1234 -j DNAT --to 10.x.x.x:1234
使用 ubuntu-cloud 模板新创建的 LXC 容器附带配置为不允许密码的 SSH 守护程序:
要解决此问题,请附加到您的容器并编辑 /etc/ssh/sshd_config 文件。查找以下内容:
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
并将 PasswordAuthentication 更改为 "yes" 并重新启动 SSH:
service ssh restart
那么您应该可以使用密码登录您的容器了。
在容器内,打开 /etc/ssh/sshd_config 并将 PermitRootLogin 更改为 yes。
# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
我注意到我用来通过 lxc-console
连接到新创建的 LXC 容器的 username/password 不适用于 ssh(容器中有 sshd 运行)。当我尝试时,我得到 Permission denied
为什么会这样,我怎样才能让它发挥作用?
你们允许 SSH 密码吗?您是否有从主机到 LXC 容器 IP 地址的端口转发的 iptables 规则?您可以使用以下行添加一个(将端口更改为容器的 ssh 端口):
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1234 -j DNAT --to 10.x.x.x:1234
使用 ubuntu-cloud 模板新创建的 LXC 容器附带配置为不允许密码的 SSH 守护程序:
要解决此问题,请附加到您的容器并编辑 /etc/ssh/sshd_config 文件。查找以下内容:
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
并将 PasswordAuthentication 更改为 "yes" 并重新启动 SSH:
service ssh restart
那么您应该可以使用密码登录您的容器了。
在容器内,打开 /etc/ssh/sshd_config 并将 PermitRootLogin 更改为 yes。
# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes