Jak zainstalować sshpass na komputerze Mac?


91

Chciałbym zautomatyzować logowanie ssh z mojego komputera Mac.

Ma proste rozwiązanie:

sshpass -p my_password ssh m_username@hostname

ale moim problemem jest instalacja sshpass na moim Macu.


3
Po co zawracać sobie głowę sshpass, skoro można używać par kluczy ssh? Bardziej bezpieczne i nie ujawniają hasła w tabeli procesów.
alvits

7
W OSX uruchom polecenie ssh-keygen -b 2048. Wygeneruje parę kluczy i zapisze je ~/.ssh.jako id_rsa(klucz prywatny) i id_rsa.pub(klucz publiczny). Skopiuj id_rsa.pubdo linuxa w katalogu ~/.ssh/i nazwij plik authorized_keys. Odtąd po podłączeniu do systemu Linux nie będziesz potrzebować hasła. Zostanie użyta para kluczy prywatny / publiczny.
alvits

Tylko dla kogoś, kto może być trudny do naśladowania @alvits bardzo cenne rady: 1) generowania id_rsapliku na lokalnym komputerze i 2) do serwera odpowiadającego folderu jako sugerowane i 3) zmień nazwę pliku na serwerze . scpid_rsa.pubid_ras.pub
yuqli

6
Powyższe odpowiedzi NIE odpowiadają na pytanie OP. Dobra alternatywa, ale nie wyjaśniająca, jak zainstalować sshpass na komputerze Mac. Są przypadki, w których nie można kopiować do systemu zdalnego (mój jest wbudowany system plików tylko do odczytu). Więc coś takiego jak sshpass jest lepszym sposobem na dostanie się do pilota.
ChuckB,

Odpowiedzi:


165

Tutaj znajdują się instrukcje dotyczące instalacji sshpass:

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

W przypadku komputerów Mac musisz zainstalować xcode i narzędzia wiersza poleceń, a następnie użyć nieoficjalnego polecenia Homewbrew:

brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb

11
W 2020 uznałem to za najlepszą odpowiedź
Mike Pennington

33

Kilka lat minęło i teraz jest właściwy Homebrew Tap dla sshpassprowadzonego przez Aleks Hudochenkov . Aby zainstalować sshpassz tego kranu, uruchom:

brew install hudochenkov/sshpass/sshpass

3
Czy kod źródłowy jest gdzieś? Używanie czegoś takiego jak sshpass bez znajomości kodu jest krytyczne
muuvmuuv

2
@muuvmuuv, tak. Jeśli spojrzysz na formułę w tym dotknięciu , zobaczysz, że pobiera ona źródło z downloads.sourceforge.net/project/sshpass/sshpass/1.06/ ... i tworzy je lokalnie.
smammy

1
To powinna być teraz akceptowana odpowiedź
Val

18

Rozwiązanie dostarczone przez lukesUbuntu z github działa dla mnie:

Po prostu użyj naparu

$ brew install http://git.io/sshpass.rb

6
uwaga: to jest nieaktualne i wskazuje na starą wersję sshpass
Devis L.

@DevisLucato Tak, dla jednego LF najnowsza wersja sshpass, xcode z sshpass src będzie prowadzić. sourceforge.net/projects/sshpass Powodzenia.
SHI Zhong Ping

1
To jest teraz nieaktualne - komentarz tutaj: stackoverflow.com/a/62623099/1817774 jest bardziej aktualny. Dzięki @smammy
babelmonk

6

Inną opcją w 2020 roku jest ten kran homebrew, utrzymywany przez esolitos

brew install esolitos/ipa/sshpass

2

Następujące pracowały dla mnie

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

1

Wykonaj poniższe czynności, aby zainstalować sshpassna komputerze 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

1

Z prostego powodu:

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.

Dlatego odpowiedź na curl / configure / install działała świetnie na Macu.


0

na nowszych komputerach Mac uruchom to.

> brew install sshpass

To nie działa, We won't add sshpass because it makes it too easy for novice SSH users to ruin SSH's security.
Dave
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.