shell中copy_pubkey.sh非全自动脚本的示例分析

shell中copy_pubkey.sh非全自动脚本的示例分析

这篇文章给大家分享的是有关shell中copy_pubkey.sh非全自动脚本的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

#!/bin/bash

privkey="$HOME/.ssh/id_rsa"
publickey="$HOME/.ssh/id_rsa.pub"

# Usage help
if [ $# -ne 1 ];then
   echo "Usage:$0 [user@]hostname"
   exit 1
fi

# test private/publick key exist or not, and the privilege 600 or not
if [ -f "$privkey" -a -f "$publickey" ];then
   privkey_priv=`stat -c %a $privkey`
   if [ "$privkey_priv" -ne 600 ];then
       echo "The privilege of private key ~/.ssh/id_rsa is not 600, exit now."
       exit 1
   fi
else
   echo "private/public key is not exist, it will create it"
   ssh-keygen -t rsa -f $privkey -N ''
   echo "keys created over, it located on $HOME/.ssh/"
fi

ssh-copy-id -o StrictHostKeyChecking=no $1

if [ $? -eq 0 ];then
   echo -e "\e[1;32m publickey copy over \e[0m"
else
   echo -e "\e[1;31mssh can't to the remote host\e[0m"
   exit 1
fi

感谢各位的阅读!关于“shell中copy_pubkey.sh非全自动脚本的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!