配置Docker容器的SSH服务

声明转载 https://zhuanlan.zhihu.com/p/52827335

配置SSH服务
接着我们在刚刚新建的容器里配置SSH服务,首先安装openssh-server:

$ apt update
$ apt install -y openssh-server

然后建立一个配置文件夹并进行必要的配置:

$ mkdir /var/run/sshd
$ echo 'root:passwd' | chpasswd

这里使用你自己想设置的用户名和密码,但是一定要记住!

$ sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
$ sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
$ echo "export VISIBLE=now" >> /etc/profile

如果连不上SSH服务,可能是某些版本的PermitRootLogin yes默认被注释了,可以使用如下(感谢 @Chenjie Xing 的反馈):

sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

重启SSH激活配置:

$ service ssh restart

在服务器(宿主机)上(不是服务器的docker里)测试刚刚新建docker容器中哪个端口转发到了服务器的22端口:

$ sudo docker port [your_container_name] 22

如果前面的配置生效了,你会看到如下输出

0.0.0.0:8022

最后测试能否用SSH连接到远程docker:

$ ssh root@[your_host_ip] -p 8022

密码是你前面自己设置的

到这里说明服务器的docker端已经完成配置。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值