Hi.
> und wenn du ja nun ein script dafür schreibst...
Exakt ... hier ist es!

Das Script schreibt den gefundenen Key mit allen IP-Adressen momentan
"nur" nach /root/.ssh/add_to_known_hosts -- also noch kein echtes
Hinzufügen zur known_hosts-Datei.
Es müsste vorher eigentlich auf Duplikate geprüft werden, die dann
ersetzt werden oder gleich rausfliegen. Ist aber bei den gehashten
Einträgen kaum möglich, oder??
Dennoch hier schon mal die erste Version -- hab's gerade getestet.
Funktkioniert soweit!

Wie immer -- wer's gebrauchen kann --> Bitte sehr :)
Michael


----------------------------------------------------------------------------------------------------------

#!/bin/bash

###############################################################################
# Dieses Script sorgt dafür, dass die pub_keys aller Clients
# einer Hardwareklasse mit in die known_hosts-Datei des Servers
# eingetragen werden. Vorteil: Die ssh-Verbindung zu allen
# Clients klappt per pub_key-Auth ootb!

# Scriptname :    add_all_keys.sh
# Author     :    von M.H.
# Date       :    2016-01-17
# Category   :    geeignet für linuxmuster 6.x
# Version    :
VER='1.0'
#################################################################################

#Name oder IP des Clients, dessen Key kopiert werden soll
#(Linbo-Image-Vorlage):
IP=10.16.1.31
Gruppe=$1
tmpfile="/root/.ssh/add_to_known_hosts"
workstations="/var/linbo/workstations"

##########################################################
#Test, ob Syntax richtig angegeben wurde:
filename="${0##*/}"
scriptpath=`pwd -P`

if [ -z "$1" ]
  then
    echo
    echo "Syntax: $scriptpath/$filename <RAUM>"
    echo
    echo "<RAUM>name aus der workstations-Datei angeben!"
    echo
    exit 0;
fi
##########################################################

#Cleanup:
rm -f $tmpfile

#PubKey auslesen:
pubkey=`ssh-keyscan $IP |cut -d" " -f3`

#Passende IP-Adressen zu HWK auslesen:
while IFS=";" read raum IPadr;
do
  echo "[$IPadr]:22 ecdsa-sha2-nistp256 $pubkey" >> $tmpfile
done < <(cat $workstations | cut -d";" -f1,5 | grep $Gruppe)

#Use the following command to remove the offending key.,
# sed -i '6d' ~/.ssh/known_hosts

exit 0

----------------------------------------------------------------------------------------------------------




_______________________________________________
linuxmuster-user mailing list
[email protected]
https://mail.lehrerpost.de/mailman/listinfo/linuxmuster-user

Antwort per Email an