获取 ssh 中已知公钥的指纹
原因
服务器上有异常登录现象,通过 /var/log/auth.log 找到了登录记录和公钥的指纹,但是不知道和哪个公钥对应,想要把这个公钥找出来。
步骤
while IFS=$'\n' read key; do ssh-keygen -lf <(echo $key); done < ~/.ssh/authorized_keys
或者
cat ~/.ssh/authorized_keys | while IFS=$'\n' read key; do ssh-keygen -lf <(echo $key); done
这种写法是不行的,会无限循环,而且永远只能读到第一行:
while IFS=$'\n' read key < ~/.ssh/authorized_keys; do ssh-keygen -lf <(echo $key); done