Étape 8 :
Une des choses que la plupart des gens détestent faire est de taper dans les mots de passe. Non seulement pourrait quelqu'un être regardant par-dessus votre épaule, mais aussi le mot de passe est envoyé où il peut être facilement contrôlée. Il doit y avoir une meilleure façon. Une méthode très utilisée sur ' nix systèmes (y compris OS / X) est appelé le « secure shell » (ssh pour faire court). Vous pouvez en fait aussi l’utiliser sur les systèmes Microsoft, mais il exige plus que la configuration supplémentaire habituelle.
$ ssh typo1
mot de passe: _
De toute façon, si vous êtes mise en place d’un nouveau système et ou de récupération à partir d’un crash de disque dur, mise en place le ssh clés à tous les serveurs ou vous connecter à des systèmes peuvent être beaucoup de plaisir. Il devait y avoir un moyen d’automatiser ce processus. Le processus est habituellement juste trois étapes. Copier votre clé vers le nouveau serveur, en ajoutant la clé dans les fichiers authorized_key, et puis enfin enlevé la clef de copié si besoin être. Nous allons donc faire un fichier batch pour prendre soin de cela.
Installkey.sh
[code]
# invoquer avec./Installkey.sh servername
# copier la clé
SCP.ssh/id_dsa.pub $1: ~ /.
# installer la clé
SSH $1 ' cat id_dsa.pub >>.ssh/authorized_keys'
# supprimer la clé publique que vous venez de copier
SSH $1 ' rm ~ / id_dsa.pub »
[/ code]
Enregistrez-le dans un fichier ascii.
Activez le fichier shell
$ chmod + x Installkey.sh
Exécutez le code :
$./Installkey.sh typo1
Maintenant vous devriez être en mesure de se connecter au serveur sans avoir à taper un mot de passe.
$ ssh typo1
Linux typo1 2.6.32-5-686 #1 SMP Sun 6 mai 04:01:19 UTC 2012 i686
Les programmes inclus avec le système Debian GNU/Linux sont des logiciels libres ;
les conditions de distribution exacte pour chaque programme sont décrites dans le
les fichiers individuels dans/usr/share/doc / * / droits d’auteur.
Debian GNU/Linux est livré sans aucune garantie, dans la mesure où
permise par la Loi.
Debian est fourni sans aucune garantie, dans la mesure permise par la
loi applicable.
/)
o /' )
/' ( ,.
__/' ) .' `;
o _.-~~~~' ``---.. __ .' ;
_.--' b) ``--...____.' .'
( _. )). `-._ <
`\|\|\|\|) -.....___.- `-. __...--'-.'.
`---......____...---`.___.' ----... .' `.;
`-` `
Cette machine est à l’usage exclusif de l’ENP.
Toute personne tentant de gagner, ou l’accès d’autre
que comme expressément autorisé est poursuivi
en vertu des lois applicables et toutes les cases pertinentes
règles civiles en dommages-intérêts.
------------------------------------------------------------------------
Vous avez du courrier.
Dernière connexion: Sun Aug 19 05:15:37 2012 à partir d’oedt01
$ _
Mais ensuite j’ai pensée, ce que je dois faire un tas de serveurs, même cela peut être fastidieux. Nous allons donc ajouter quelques plus de code. Tout d’abord, nous devons faire une liste des serveurs que nous voulons mettre à jour et enregistrer dans un fichier.
serveurs :
[données]
typo1
oesrvr1
...
/ [données]
Maintenant, il faut utiliser le code d’origine et ajouter une routine pour lire les noms des serveurs dans un fichier. Qui permet de nous suffit de taper une seule commande et faire tous les serveurs. Si nous avons besoin d’ajouter un nouveau serveur à la liste, vous l’ajouter simplement du dossier de serveurs. Un peu de prudence, c’est que si vous avez exécuté le programme d’avant, il est inutile de le refaire sur les serveurs de prêts. Renommez le fichier existant de serveurs et commencer un nouveau fichier de serveurs.
srvrsshupdate.sh :
[code]
####################################
# Mise à jour à distance ssh serveur clés
# par sysadmin
No date : 19/08/2012
#=================================
# Affectations
# --------------------------------
# serveurs a liste de serveurs à jour (nom du serveur 1 s/b par ligne)
servernamefile = « serveurs »
affectations fin #
#=================================
#
# Juste le faire. (boucle principale)
#---------------------------------
tout en ligne de lecture
faire serveur = $line
SCP.ssh/id_dsa.pub $server: ~ /.
ssh $server "cat id_dsa.pub >>.ssh/authorized_keys'
ssh $server "rm ~ / id_dsa.pub »
fait < $servernamefile
# end de la boucle principale
#==================================
# Fin d’emploi
###################################
[/ code]
Code de substitution :
[code]
# invoquer avec./Installkey.sh servername
# mettre en place le répertoire .ssh si ce n’est pas existe
Répertoire = ", ssh"
SSH $1 « si [! -d « $DIRECTORY »] ; Puis mkdir $DIRECTORY ; chmod 700 $DIRECTORY ; Die
# copier la clé
SCP $DIRECTORY/id_dsa.pub $1: ~ /.
# installer la clé
SSH $1 ' cat id_dsa.pub >> $DIRECTORY/authorized_keys'
SSH $1 'chmod 600 $DIRECTORY/authorized_keys"
# supprimer la clé publique que vous venez de copier
SSH $1 ' rm ~ / id_dsa.pub »
[/ code]
Enable
$ chmod + x srvrsshupdate.sh
Exécutez-le
$ srvrsshupdate.shMy desktop mordu la poussière j’ai decieded de mettre une nouvelle installation de linux (Debian remplacé Ubuntu.) Vraiment n’utilisez pas vieux ssh keys, alors j’ai régénéré une nouvelle clé et a mis à jour tous les serveurs.