欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

使用 Docker 实现 ssh 无密码登录

最编程 2024-07-18 15:54:43
...
  1. 准备镜像
    docker pull centos
  2. 启动容器
    docker run --name local_centos -d -it IMAGE ID /bin/bash
  3. 安装sshd
    yum update -y && yum install -y openssh-client openssh-server
  4. 打包生成镜像
    exit

docker commit -a 'jun' -m 'my self local use' IMAGE ID local_centos7:v1#生成镜像

  1. 启动容器,并创建用户
    docker images | grep centos#查看刚生成的镜像

local_centos7 v1 c4424427c97f About a minute ago 348MB
docker run --name vhost_centos7 -d -it c4424427c97f /bin/bash
docker exec -it vhost_centos7 /bin/bash
/usr/sbin/sshd#启动sshd 会产生一下错误

ssh_host_ed25519_key not fund

别紧张,直接生成便可
ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key
useradd wukong#添加用户
passwd wukong#修改密码

  1. 本地生成密钥
    ssh-keygen#如没有特殊需求一路回车便可以
  2. 上传到容器,开始免密登录
    ssh-copy-id -i ~/.ssh/id_rsa.pub -p 5022 wukong@127.0.0.1#然后输入密码

ssh -i ~/.ssh/id_ras -p 5022 wukong@127.0.0.1#便可以登录成功了