Tọlite Nbanye SSH na-enweghị paswọọdụ maka ọtụtụ sava dịpụrụ adịpụ Iji Script


Nyocha dabere na SSH Key (nke a makwaara dị ka nyocha igodo ọha) na-enye ohere maka njirimara na-enweghị paswọọdụ yana ọ bụ nchekwa dị mma yana ngwọta dị mma karịa njirimara paswọọdụ. Otu uru dị mkpa nke nbanye na-enweghị paswọọdụ SSH, hapụ naanị nchekwa bụ na ọ na-enye ohere maka ịmegharị ụdị usoro ihe nkesa dị iche iche.

N'ime edemede a, anyị ga-egosipụta otu esi emepụta ụzọ ụzọ SSH wee detuo igodo ọha na ọtụtụ ndị ọbịa Linux dịpụrụ adịpụ ozugbo, jiri edemede shei.

Mepụta igodo SSH ọhụrụ na Linux

Nke mbụ, mepụta ụzọ igodo SSH (igodo nzuzo/ njirimara nke onye ahịa SSH na-eji achọpụta onwe ya mgbe ị na-abanye na sava SSH dịpụrụ adịpụ yana igodo ọha echekwara dị ka igodo enyere ikike na sistemụ dịpụrụ adịpụ na-agba sava SSH) site na iji ssh- iwu keygen dị ka ndị a:

# ssh-keygen

Mepụta akwụkwọ edemede Shell maka nbanye dịpụrụ adịpụ ọtụtụ

Na-esote, mepụta script shei ga-enyere aka n'iṅomi igodo ọha na ọtụtụ ndị ọbịa Linux dịpụrụ adịpụ.

# vim ~/.bin/ssh-copy.sh

Detuo na mado koodu a na faịlụ (dochie mgbanwe ndị a dịka USER_NAME- aha njirimara iji jikọọ, HOST_FILE - faịlụ nwere ndepụta aha nnabata ma ọ bụ adreesị IP. , na ERROR_FILE- faịlụ iji chekwaa njehie iwu ssh ọ bụla).

#!/bin/bash
USER_NAME="root"
HOST_FILE="/root/hosts"
ERROR_FILE="/tmp/ssh-copy_error.txt"
PUBLIC_KEY_FILE="$1"

if [ ! -f  $PUBLIC_KEY_FILE ]; then
        echo "File '$PUBLIC_KEY_FILE' not found!"
        exit 1
fi

if [ ! -f $HOST_FILE ]; then
        echo "File '$HOST_FILE' not found!"
        exit 2
fi

for IP in `cat $HOST_FILE`; do
        ssh-copy-id -i $PUBLIC_KEY_FILE [email $IP 2>$ERROR_FILE
        RESULT=$?
        if [ $RESULT -eq 0 ]; then
                echo ""
                echo "Public key successfully copied to $IP"
                echo ""
        else
                echo "$(cat  $ERROR_FILE)"
                echo 
                exit 3
        fi
        echo ""
done

Chekwaa faịlụ ma mechie ya.

Wee mee ka ederede chmod rụọ ọrụ dịka egosiri.

# chmod +x ssh-copy.sh

Ugbu a, gbanye ssh-copy.sh script wee kọwaa faịlụ igodo ọha gị dị ka arụmụka mbụ dị ka egosiri na nseta ihuenyo:

# ./ssh-copy.sh /root/.ssh/prod-rsa.pub

Na-esote, jiri ssh-agent iji jikwaa igodo gị, nke na-ejide igodo nzuzo gị ezoro ezo na ebe nchekwa wee jiri ya chọpụta nbanye. Mgbe ịmalitechara ssh-agent, tinye igodo nzuzo gị na ya dị ka ndị a:

# eval "$(ssh-agent -s)"
# ssh-add  ~/.ssh/prod_rsa

Banye na sava Linux Remote na-enweghị paswọọdụ

Ugbu a ị nwere ike ịbanye n'ime ndị ọbịa gị dịpụrụ adịpụ na-enyeghị paswọọdụ maka njirimara onye ọrụ SSH. N'ụzọ dị otú a, ị nwere ike na-akpaghị aka cross-server usoro.

# ssh [email 

Nke ahụ bụ naanị ihe anyị nwere maka gị! Ọ bụrụ na ị nwere nkwado(s) ọ bụla iji mee ka ọ dịkwuo mma n'ịkwalite edemede shei, mee ka anyị mara site na mpempe nzaghachi n'okpuru.