先看下 node 的 ip 地址

╰─➤  kubectl get nodes -o wide                               
NAME       STATUS   ROLES                  AGE     VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION      CONTAINER-RUNTIME
minikube   Ready    control-plane,master   4d21h   v1.23.9   192.168.49.2   <none>        Ubuntu 20.04.5 LTS   5.15.0-56-generic   docker://20.10.20

但是直接登录 docker node 会失败!

╰─➤  ssh docker@192.168.49.2                                                                                                                                                                                                                                                          130 ↵
The authenticity of host '192.168.49.2 (192.168.49.2)' can't be established.
ED25519 key fingerprint is SHA256:ro33I63Xaq6BtyS/kfcVpinWBDH8Tx7kNm2NWSNnMoM.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.49.2' (ED25519) to the list of known hosts.
docker@192.168.49.2's password: 
Permission denied, please try again.
docker@192.168.49.2's password: 
Permission denied, please try again.
docker@192.168.49.2's password: 
docker@192.168.49.2: Permission denied (publickey,password).

查了一下,可以不用账号密码,而是密钥对登录

╰─➤  cat ~/.minikube/machines/minikube/id_rsa               
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAmn5Z5ss2Od/TG5mFMGHfhRUvvM2MqisUHBiX2fEw/LV0MDho
g+ieFKcLZJSIvr6bW+cIf09aqlQzH5RPbTBav5HoRknAuigxtJrV0RpTpIvHvBn5
EXJk6v2rVCHTlzvglF3Tb2phoZJDNyBEF2lXwwQmFe4ZdNa20+R+iVBgDmw/N/vz
EylhDw5Hrq+Q3op7mpJfrseiLTbUhFIhEiGRackBnlIudXEGVI8oMPQBLaVY9vpu
bcjH2j+1QR1PPNnrdjvThPmDj5sVgfk+aL95IjaL5/UNPDN2m0uxO1FMTW5CdhNh
dC0HL/10zO6Tkq/xJkGYr2fIBLh+N6xfUnqHGQIDAQABAoIBAHvGYwyPHoC7nAzu
sFCU+VlMIhTnsZzcKp5f7bkEjbTJQ68mYkXcZloxguUwQ2Zem2XD8YDd+Muh7duN
HR1jsjDtGuTFTg1XCouhyVBgAUdBXeKMBIo/1i6W0V70QutVY5Y6nZ0T4+hooEVY
KnV/RnrNph3HxslfBNc6p04oAO1L+YyrjqTSzgtWCBOBSkWSGX0zGNDYFdimPrcc
4Lk3ZumCSYle13z9UpFkL7iRkPG5e3YqJkN87F3/jpQjKl5IeNHo3XcFzx2mdME1
Uo46q6DT/ySh6VqOnRYUQig19vTHyRSGMIy8IKbXYUT5AUWkABn3lcRcSW55yN8c
RXDvIwECgYEAzBg7lG85MtqodO4ijov6SEhsFtQJYBY+CVfpmjmyj9Ls+V28dfnC
1IFiRUfWbkL40Gz/2LWjQCv1Rb89dx1OwDy74t6z/tqvIaFAi8aviSATy2agrD4u
GRvHE9IWC6S6XF6NhsI5BQh1yz4PWvo2QdN+Nnx9lrTF6pbcqu7SWbECgYEAwcjL
Q+QLtD6x2NRW14UfLZmulnSQpetsGIEPoA/PeZB+7oo0fw8JomjYBoJAvUUYamPI
9+MYW1Pbno8FNWgRx5qTPafiUW1tcA/UWAHI0n5jYi2Zn2hoTaYgYWZEN9IaXaQS
SWqPksfNNTRKhdeM0W7yJubVzcIFjko0bDvZdekCgYB0aiYh5sdTkJGiEOs5L/LV
JCozY0LtwgIkxjaDOAH4M7HkE2maSZquKBbruaxAPIc8K9BLxl+WDPzcidb/iIIQ
+ROatrko14gpwJbWo8AgkWF5FdL0LIuS2ttVHPJiNdXvNie4BDUN/+NgyMdtd2dX
aNGHNr9UJUz3IJJCFfN6IQKBgQCpGDCejkjUQHzqKueYarY5EUhyS0bJMXQCsePT
lNhDSJ4qQnjqglGy4W/XxiL9xWQ3udjszcI8NyGF62DtKGGTXkOrYmqvCSCcz4NI
RE5btyO70PSjT/TsBNFujFFssC6HlZrLa2va9fQPwBBjWCKtwfUVkwnv4KT+c6vo
4hSwuQKBgQCD+ZxDzffxpR2UUy64UGUOiSpA7ltuQ9s66FT6AtgwspHS/qW3Cq1u
Z6pAXeskwfMf3gZnQSfwioe3OUEf6pz6frn2MzPtDyOiGBF68NFn4O43ftyrAm4z
xnWEIyN8RYAiXSsuuH39DhYQ12uiLmjk7qRMiOynVRXKF2uF7MVkTw==
-----END RSA PRIVATE KEY-----

指定公钥地址,就可以了

╰─➤  ssh -i ~/.minikube/machines/minikube/id_rsa docker@192.168.49.2              
docker@minikube:~$ 
docker@minikube:~$ 

参考:How do I ssh into the VM for Minikube?


如果你使用上面的命令登陆遇到报错

╰─➤  ssh -i ~/.minikube/machines/minikube/id_rsa docker@192.168.49.2    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:hMuP8H1elaVnszjgsLX5LYxGTeVoq+gFGHELM2phnSQ.
Please contact your system administrator.
Add correct host key in /home/pon/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/pon/.ssh/known_hosts:3
  remove with:
  ssh-keygen -f "/home/pon/.ssh/known_hosts" -R "192.168.49.2"
Host key for 192.168.49.2 has changed and you have requested strict checking.
Host key verification failed.

怎么办?使用下面的命令清空 known_hosts 就好了

echo "" > ~/.ssh/known_hosts

universe_king
3.4k 声望678 粉丝