Gửi mật khẩu qua stdin trong `ssh-copy-id`


11

Tôi cần tự động hóa một số triển khai danh tính, lý tưởng nhất là sử dụng ssh-copy-id.

Tôi đang cố gắng cung cấp mật khẩu thông qua stdin, điều này có thể xảy ra sshbằng cách sử dụng -Scờ. Tôi biết rằng tôi có thể gửi các tùy chọn bổ sung để sshsử dụng -ocờ trong ssh-copy-idlệnh tuy nhiên không có ví dụ sử dụng cờ này trong trang man.

Vì vậy, tôi đã cố gắng chuyển mật khẩu SSH ssh-copy-idthông qua stdin bằng cách sử dụng:

$# echo $TMP_PASS | ssh-copy-id -p2222 -i key.pub user@host -o "-S"

Nhưng tất cả những gì tôi nhận được là:

/bin/ssh-copy-id: ERROR: command-line: line 0: Bad configuration option: -s

BIÊN TẬP:

Tôi đang cố gắng cung cấp mật khẩu thông qua stdin, điều này có thể xảy ra sshbằng cách sử dụng -Scờ.

Phát biểu này là sai. Tôi thực sự đã đọc lá cờ này từ sudocon người;

Câu trả lời:


15

Bạn có thể muốn thử cài đặt sshpass và thay đổi cuộc gọi của bạn thành ssh-copy-id:

sshpass -p "$TMP_PASS" ssh-copy-id

lol, không phải trên mac và khi brew installthử, tôi nhận được "Lỗi: Không có công thức có sẵn với tên" sshpass "Chúng tôi sẽ không thêm sshpass vì điều đó khiến người dùng SSH mới dễ dàng phá hỏng bảo mật của SSH."
tofutim

Có hướng dẫn để cài đặt nó với homebrew trên osx tại đây gist.github.com/arunoda/7790979#installing-with-homebrew Bạn chỉ cần chạybrew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
ewatt

2

Nơi mà bạn đã tìm thấy thông tin về -Stùy chọn? Nó làm một cái gì đó hoàn toàn khác nhau! Nó được sử dụng để ghép kênh và ControlPath.

SSH sẽ không chấp nhận mật khẩu trên stdin bao giờ , vì vậy bạn nên cài đặt trước các khóa được ủy quyền trong triển khai (cách ưa thích) hoặc sử dụng sshpasshoặc expecttập lệnh như được mô tả trong nhiều câu hỏi khác.


Chết tiệt, bạn nói đúng! Tôi mới nhận ra rằng -Scờ đến từ sudo: S
2grit

Nếu tôi muốn cài đặt khóa của mình trên 100 máy chủ, sử dụng ssh-copy-id, nếu tất cả các máy chủ đã có tên người dùng và mật khẩu mặc định, làm thế nào để tránh ssh-copy-id hỏi tôi mỗi lần cùng một mật khẩu?
realtebo

Điều đó đã được trả lời trong cả hai câu trả lời - sử dụng sshpass nếu bạn phải hoặc một số tập lệnh mong đợi.
Jakuje
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.