¿Cómo instalar sshpass en mac?

91

Me gustaría automatizar el inicio de sesión ssh desde mi mac.

Tiene una solución simple:

sshpass -p my_password ssh m_username@hostname

pero mi problema es instalar sshpass en mi mac.

Alt
fuente
3
¿Por qué molestarse con sshpass cuando puede usar pares de claves ssh? Más seguro y no expone la contraseña en la tabla de procesos.
alvits
7
En OSX, ejecute el comando ssh-keygen -b 2048. Generará un par de claves y las almacenará ~/.ssh.como id_rsa(clave privada) y id_rsa.pub(clave pública). Copie id_rsa.puba linux en el directorio ~/.ssh/y nombre el archivo authorized_keys. De aquí en adelante, cuando se conecte a Linux, no necesitará una contraseña. Se utilizará el par de claves pública / privada.
alvits
Sólo por otra persona que podría estar tratando de seguir @alvits muy buenos consejos: 1) generar el id_rsaarchivo en su local de la máquina y 2) scpel id_rsa.pubde la del servidor de la carpeta correspondiente como se sugiere y 3) cambiar el nombre del id_ras.pubarchivo en el servidor .
Yuqli
6
Las respuestas anteriores NO responden a la pregunta de OP. Buena alternativa, pero sin explicar cómo instalar sshpass en Mac. Hay casos en los que no se puede copiar al sistema remoto (el mío es un sistema de archivos de solo lectura integrado). Entonces, algo como sshpass es un mejor medio para acceder al control remoto.
ChuckB

Respuestas:

165

Hay instrucciones sobre cómo instalar sshpass aquí:

https://gist.github.com/arunoda/7790979

Para Mac, necesitará instalar xcode y las herramientas de línea de comandos y luego usar el comando no oficial de Homewbrew:

brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
JSimonsen
fuente
11
En 2020 encontré esta como la mejor respuesta
Mike Pennington
33

Algunos años han pasado y ahora hay una adecuada Homebrew Toque para sshpass, mantenida por Aleks Hudochenkov . Para instalar sshpassdesde este grifo, ejecute:

brew install hudochenkov/sshpass/sshpass
smammy
fuente
3
¿Está el código fuente en alguna parte? Usar algo como sshpass sin conocer el código es fundamental
muuvmuuv
2
@muuvmuuv, sí. Si observa la fórmula en ese toque , verá que descarga la fuente de downloads.sourceforge.net/project/sshpass/sshpass/1.06/… y la compila localmente.
smammy
1
Esta debería ser la respuesta aceptada ahora
Val
18

La solución proporcionada por lukesUbuntu de github funciona para mí:

Solo usa brew

$ brew install http://git.io/sshpass.rb
SHI Zhong Ping
fuente
7
nota: esto está desactualizado y apunta a una versión antigua de sshpass
Devis L.
@DevisLucato Sí, para el que LF es la última versión de sshpass, xcode con sshpass src marcará el camino. sourceforge.net/projects/sshpass Buena suerte.
SHI Zhong Ping
1
Esto ahora está desactualizado: el comentario aquí: stackoverflow.com/a/62623099/1817774 es más actual. Gracias @smammy
babelmonk
6

Otra opción en 2020 es este grifo casero, mantenido por esolitos

brew install esolitos/ipa/sshpass
shiramy
fuente
2

Seguir funcionó para mí

curl -O -L  https://sourceforge.net/projects/sshpass/files/sshpass/1.06/sshpass-1.06.tar.gz && tar xvzf sshpass-1.06.tar.gz
cd sshpass-1.06/
./configure
sudo make install
Suresh Kumar
fuente
1

Siga los pasos a continuación para instalar sshpassen mac.

curl -O -L https://fossies.org/linux/privat/sshpass-1.06.tar.gz && tar xvzf sshpass-1.06.tar.gz

cd sshpass-1.06

./configure

sudo make install
SuperNova
fuente
1

Por la sencilla razón:

Andy-B-MacBook:~ l.admin$ brew install sshpass
Error: No available formula with the name "sshpass"
We won't add sshpass because it makes it too easy for novice SSH users to
ruin SSH's security.

Por lo tanto, la respuesta para hacer curl / configure / install funcionó muy bien para mí en Mac.

usuario1318024
fuente
-1

en Mac más recientes, ejecute esto ...

> brew install sshpass
usuario1
fuente
Esto no funciona, aparece el mensaje de errorWe won't add sshpass because it makes it too easy for novice SSH users to ruin SSH's security.
Dave