天天看點

使用Docker 實作ssh免密登入

  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 [email protected]

    #然後輸入密碼

ssh -i ~/.ssh/id_ras -p 5022 [email protected]

#便可以登入成功了