Bagaimana cara menginstal sshpass di mac?

91

Saya ingin mengotomatiskan login ssh dari mac saya.

Itu memang memiliki solusi sederhana:

sshpass -p my_password ssh m_username@hostname

tetapi masalah saya adalah menginstal sshpass di mac saya.

Alt
sumber
3
Mengapa repot-repot dengan sshpass bila Anda dapat menggunakan ssh keypairs? Lebih aman dan tidak mengekspos kata sandi di tabel proses.
alvits
7
Di OSX, jalankan perintah ssh-keygen -b 2048. Ini akan menghasilkan keypair dan menyimpannya ~/.ssh.sebagai id_rsa(kunci pribadi) dan id_rsa.pub(kunci publik). Salin id_rsa.pubke linux di direktori ~/.ssh/dan beri nama file authorized_keys. Mulai saat ini, ketika Anda terhubung ke linux, Anda tidak memerlukan kata sandi. Pasangan kunci privat / publik akan digunakan.
alvits
Hanya untuk orang lain yang mungkin mencoba untuk mengikuti @alvits saran sangat membantu: 1) menghasilkan id_rsafile di Anda lokal mesin dan 2) scpyang id_rsa.pubke server folder yang sesuai seperti yang disarankan dan 3) mengubah nama id_ras.pubfile di server yang .
yuqli
6
Jawaban di atas TIDAK menjawab pertanyaan OP. Alternatif yang bagus, tetapi tidak menjelaskan cara menginstal sshpass di Mac. Ada beberapa kasus di mana Anda tidak dapat menyalin ke sistem jarak jauh (sistem file saya tertanam hanya baca). Jadi, sesuatu seperti sshpass adalah cara yang lebih baik untuk mengakses remote.
ChuckB

Jawaban:

165

Ada instruksi tentang cara memasang sshpass di sini:

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

Untuk Mac Anda perlu menginstal xcode dan alat baris perintah kemudian menggunakan perintah Homewbrew tidak resmi:

brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
JSimonsen
sumber
12
Pada tahun 2020 saya menemukan ini sebagai jawaban terbaik
Mike Pennington
35

Beberapa tahun telah berlalu dan sekarang ada Homebrew Tap yang tepat untuk sshpass, dikelola oleh Aleks Hudochenkov . Untuk menginstal sshpassdari keran ini, jalankan:

brew install hudochenkov/sshpass/sshpass
smammy
sumber
3
Apakah kode sumbernya ada di suatu tempat? Menggunakan sesuatu seperti sshpass tanpa mengetahui kodenya sangat penting
muuvmuuv
2
@muuvmuuv, ya. Jika Anda melihat rumus di keran itu , Anda akan melihat bahwa ia mengunduh sumber dari downloads.sourceforge.net/project/sshpass/sshpass/1.06/… dan membangunnya secara lokal.
smammy
1
Ini seharusnya menjadi jawaban yang diterima sekarang
Val
17

Solusi yang diberikan oleh lukesUbuntu dari github berfungsi untuk saya:

Gunakan saja minuman

$ brew install http://git.io/sshpass.rb
SHI Zhong Ping
sumber
7
catatan: ini kedaluwarsa dan menunjuk ke versi lama sshpass
Devis L.
@DevisLucato Ya, untuk satu LF versi sshpass terbaru, xcode dengan sshpass src akan memimpin jalan. sourceforge.net/projects/sshpass Selamat mencoba.
SHI Zhong Ping
2
Ini sekarang sudah ketinggalan zaman - komentar di sini: stackoverflow.com/a/62623099/1817774 lebih terkini. Terima kasih @smammy
babelmonk
6

Opsi lain di tahun 2020 adalah keran homebrew ini, yang dikelola oleh esolitos

brew install esolitos/ipa/sshpass
malu
sumber
2

Mengikuti berhasil untuk saya

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
sumber
1

Ikuti langkah-langkah di bawah ini untuk menginstal sshpassdi 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
sumber
1

Untuk alasan sederhana:

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.

Jadi, jawaban untuk melakukan curl / configure / install bekerja sangat baik untuk saya di Mac.

pengguna1318024
sumber
-1

di Mac yang lebih baru, jalankan ini ..

> brew install sshpass
pengguna1
sumber
Ini tidak berhasil, Anda mendapatkan pesan kesalahanWe won't add sshpass because it makes it too easy for novice SSH users to ruin SSH's security.
Dave