sh [ssh-copy-id和ssh组合]这是一个粗略的脚本,如果需要,它会将本地ID密钥添加到客户端的授权密钥。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh [ssh-copy-id和ssh组合]这是一个粗略的脚本,如果需要,它会将本地ID密钥添加到客户端的授权密钥。相关的知识,希望对你有一定的参考价值。

#!/bin/bash

error_exit () {
    echo "Example usage: ssha me@myhouse.com"
    exit 1
}

main () {
    if [ -z "$1" ]; then
        error_exit
    fi

    if [[ $1 == *"@"* ]]; then
        client=$(cut -d "@" -f 2 <<< "$1")
        if [ -z "$client" ]; then
            error_exit
        fi
    else
        error_exit
    fi

    ping -c 1 $client > /dev/null 2>&1

    if [ $? -eq 0 ]; then
        /usr/bin/ssh-copy-id $1 > /dev/null 2>&1
        if [ $? -eq 0 ]; then
            /usr/bin/ssh -o StrictHostKeyChecking=no $1
        else
            echo "Command \"ssh-copy-id $1\" failed"
        fi
    else
        echo "Unable to ping client $client"
    fi
}

main $1

以上是关于sh [ssh-copy-id和ssh组合]这是一个粗略的脚本,如果需要,它会将本地ID密钥添加到客户端的授权密钥。的主要内容,如果未能解决你的问题,请参考以下文章

sh SSH-copy-id命令反向

Linux中,使用SSH过程中,sh-copy-id命令报错:-bash: ssh-copy-id: command not found

使用sshpass 和 ssh-copy-id批量拷贝公钥到远程主机

ssh-copy-id

ssh-copy-id命令解析

ssh-copy-id命令解析