将 ssh pubkey 添加到本地主机上的 authorized_keys(跳过现有)

Dmi*_*san 2 ssh key-authentication

authorized_keys在使用 jenkins 启动 docker 容器时,我需要将 jenkins pubkey 添加到我的主机。寻找解决方案,但在互联网上找不到准备好。可能看起来很明显,但至少对我来说不是:)

Dmi*_*san 5

PUBKEY=$(cat ~/.ssh/id_rsa.pub); grep -q "$PUBKEY"  ~/.ssh/authorized_keys || echo "$PUBKEY" >> ~/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)

这个单行检查文件中是否已经存在公钥authorized_keys,如果不存在则将其附加到文件末尾。

~/.ssh/id_rsa.pub 这是添加公钥的路径

~/.ssh/authorized_keys这是目标authorized_keys文件的路径(~符号是主目录,即/home/accountname/

对于远程主机,可以使用 ssh-copy-id