一、基本步骤
1、生成公私钥对
ssh-keygen -t rsa
生成的私钥 (id_rsa) 和公钥 (id_ras.pub) 默认存放在 ~/.ssh/
。例如root用户默认在 /root/.ssh/
,k8s用户默认在/home/k8s/.ssh/
。
2、公钥写入目标机
- 方法1:使用 ssh-copy-id 把公钥追加写入目标机 ~/.ssh/authorized_keys 文件的末尾行,过程需要密码
ssh-copy-id root@10.112.17.43
- 方法2:手工方式登陆到目标机,将公钥字符串追加写入~/.ssh/authorized_keys 末尾行
3、使用SSH命令验证
ssh 10.112.17.43
# 或
ssh root@10.112.17.43
# 或 使用ssh在目标机执行命令
ssh root@10.112.17.43 echo 'Hello World.'
二、说明
1、RSA公私钥文件对通用,如要继承既有,拷贝即可直接使用。
2、同一目标机器,可以被多个机器ssh远程访问。即authorized_keys文件可以添加多个公钥。每个公钥独占一行即可。
3、如要给多个目标机器批量增加本机的ssh访问权限,在各个目标机器authorized_keys文件批量写入公钥即可。例如使用ansible方式。
# 在ansible环境执行批量编辑
ansible all -m raw -a "echo 'ssh-rsa AAAA...(公钥串)' >> /root/.ssh/authorized_keys
三、扩展知识
2024/3/1 v1.0