2012-03-12 19:37:26 +0000 2012-03-12 19:37:26 +0000
54
54

scp'ing z użyciem pliku klucza jako parametru, Jak mogę to zrobić, jeśli to możliwe?

scp -i ~/.ssh/id_rsa.pub events*$date*_QA.log $remote_user@$remote_server:$remote_location

Czy powyższy skrypt jest niepoprawny? Czy nie robię tego poprawnie?

Wszedłem do katalogu .ssh i zobaczyłem, że zdalny serwer jest w pliku known_hosts.

Ale kiedy robię zwykły scp bez żadnego pliku jako parametru, nadal pyta o hasło

scp events*$date*_QA.log $remote_user@$remote_server:$remote_location

Jak mogę dołączyć plik klucza do mojego polecenia?

sh-3.2$ grep server ~/.ssh/*
/home/user/.ssh/known_hosts:server....com,ip_addr ssh-rsa Asine=jhjsdhfjsadhfjkashdfjhasdjfhksadjfhasjdfhj

Odpowiedzi (3)

70
70
70
2012-03-12 21:17:14 +0000
-i identity_file
         Selects the file from which the identity (private key) for public
         key authentication is read. This option is directly passed to
         ssh(1).

Użyj ~/.ssh/id_rsa.

1
1
1
2019-07-11 15:53:49 +0000

To może pomóc innemu noobowi.

[Wiem, że jest to zbędny, okrężny przykład, ale dobrze jest go zilustrować] Scenariusz:

  1. ssh z Maca - Ubuntu
  2. scp pliki z Maca - Ubuntu
  3. zamknij ssh i scp pliki z Ubuntu - Mac

Miałem tylko utworzone klucze ssh na moim Macu (poprzez ssh-keygen) i udostępniłem je maszynie z Ubuntu poprzez (ssh-copy-id). Mogłem więc kopiować pliki, będąc zalogowanym na moim Macu z maszyny z Ubuntu, ale nie na odwrót.

Rozwiązanie: Musiałem utworzyć klucze ssh na maszynie Ubuntu i udostępnić je mojemu Macowi. następnie mogłem z powodzeniem uruchomić następujące polecenie na maszynie Ubuntu

Mac IP: 192.168.1.40
Ubuntu IP: 192.168.1.38

On Mac

ssh-keygen
ssh-copy-id ubuntu@192.168.1.38

ssh ubuntu@192.168.1.38

# Now on Ubuntu
ssh-keygen
ssh-copy-id MAC@192.168.1.40

I teraz następujące polecenie powinno skopiować plik bez pytania o hasło do MAC

sudo scp -i /home/ubuntu/.ssh/id_rsa MAC@192.168.1.40:~/Documents/Fluff/Version-Control/tools/pull.sh .
```.
0
0
0
2016-05-24 21:39:24 +0000

Przetestowane i poprawione dzięki tym instrukcjom https://askubuntu.com/questions/46930/how-can-i-set-up-password-less-ssh-login

Instrukcje tutaj działały bezbłędnie, gdy testowałem na moich skrzynkach (CentOS/CentOS). Wyobrażam sobie, że problem polega na tym, że twoje klucze ssh nie są powiązane z nazwą użytkownika.

Przykład: cat authorized_keys # on Box I’m sshing/scpin’ to ssh-. rsa BLAHBLAHBLAH/zAcS4kD9pyPAjD3/gd5D1rcQa6IztCMR9yMXiGFnxviWsT8/oYevZw25k4yREuA8ibLKC9peH1X4LK1E+n7gq4TETexWkZbQ2XGLOX44eglra3MB4FShPg0cZXGcJWltPQ/y0Ay2A/KmaC14YrDfqwm7+ibTiUp4hOO8I6eIPmwwGn/2hs0SewJXisGqUx2v my_user@machine.local #username jest powiązany z kluczem i jest autoryzowanym hostem