别慌---centos7.4下docker实现密钥SSHD远程登录OK!!!

----------ssh公钥验证---基于Dockerfile生成镜像--要可以联网--前提要有centos:latest这个镜像----

实验思路:

1. 建立目录sshd

2.使用ssh-keygen -t rsa生成公钥与私钥,将公钥复制到sshd目录下并命名为authorized_keys

3.创建并修改Dockerfile文件和要在容器中执行的脚本文件run.sh

4.使用docker build命令生成镜像并验证登录

实验环境:192.168.80.185(www.ae.com)

mkdir sshd

ssh-keygen -t rsa             //一直enter默认

cat .ssh/id_rsa.pub > sshd/authorized_keys

cd sshd/

vi Dockerfile

FROM centos

MAINTAINER The Centos Project<cloud-ops@centos.org>

RUN yum install -y openssh-server

RUN mkdir -p /var/run/sshd

RUN mkdir -p /root/.ssh

RUN sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd

ADD authorized_keys /root/.ssh/authorized_keys

ADD run.sh /run.sh

RUN chmod 775 /run.sh

EXPOSE 22

CMD [ "/usr/sbin/init"]

CMD ["/run.sh"]

:wq

vi run.sh

#/bin/bash

/usr/sbin/sshd -D

:wq

docker build -t sshd:centos  .         // 生成镜像

 

docker images                       //检查镜像文件生成情况

 

docker run --privileged -itd -p 2222:22 f022cf937083 /usr/sbin/init   //这里是镜像ID  

 

 

docker exec -it f9542c6487b4 /bin/bash            //这里是容器ID

测试能否远程登录:




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值