sshpass és el tipus d’ordre que no s’hauria de fer servir en un terminal. El que fa bàsicament és permetre introduir la contrasenya directament a la mateixa línia quan fem una connexió ssh, evitant-nos així haver d’introduir-la després d’executar l’ordre ssh.
Per exemple, una connexió normal a un servidor per ssh i executar una ordre concreta:
ssh usuari@adreçaip mplayer '/media/data/musica.mp3'
I llavors (si no tenim la nostra clau pública al servidor), se’ns demanarà la contrasenya. Amb sshpass podem passar la contrasenya directament:
sshpass -pcontrasenya ssh -o StrictHostKeyChecking=no usuari@adreçaip mplayer '/media/data/musica.mp3'
5 comments
Skip to comment form
Pau es queda guardada al historial de la consola?
Personalment em molesta passar la contrasenya directament per consola perquè és queda guardada.
Tens l’opció de passar com a paràmetre el nom d’un fitxer on està el password. http://www.debianadmin.com/sshpass-non-interactive-ssh-password-authentication.html
Roger, el que pots fer és que l’ordre completa no es quede guardada a l’historial. Això ho pots fer simplement afegint un espai al principi de l’ordre. És a dir, en lloc de:
sshpass -pcontrasenya ssh -o StrictHostKeyChecking=no usuari@adreçaip mplayer ‘/media/data/musica.mp3’
Escrius:
sshpass -pcontrasenya ssh -o StrictHostKeyChecking=no usuari@adreçaip mplayer ‘/media/data/musica.mp3’
(en el segon exemple hi ha un espai al principi, i amb això no es desa al bash history)
Perdó, resulta que el netejador de codi no mostra la diferència, però espere que quede clar!
Molt útil el Consell no el coneixia!!