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?
Poszedłem do .ssh
katalogu i zobaczyłem, że zdalny serwer jest w known_hosts
pliku.
Ale kiedy robię zwykły scp bez pliku jako parametru, wciąż prosi o hasło
scp events*$date*_QA.log $remote_user@$remote_server:$remote_location
Jak mogę dołączyć plik klucza do polecenia?
sh-3.2$ grep server ~/.ssh/*
/home/user/.ssh/known_hosts:server....com,ip_addr ssh-rsa Asine=jhjsdhfjsadhfjkashdfjhasdjfhksadjfhasjdfhj
sh-3.2$ scp -i ~/.ssh/id_rsa test_QA.log user@server:location user@server's password:
-i ~/.ssh/id_rsa
była to pierwsza opcja. Tak to działa:scp -i ~/.ssh/mykey.pem -r dir user@remote_server:~/
. To nie zadziałało:scp -r -i ~/.ssh/mykey.pem dir user@remote_server:~/
To może pomóc kolejnemu noobowi.
[Wiem, że to zbędny okrągły przykład, ale dobrze to zilustrować] Scenariusz:
Utworzyłem tylko klucze ssh na moim komputerze Mac (poprzez ssh-keygen) i udostępniłem je maszynie z systemem Ubuntu przez (ssh-copy-id). Mogłem więc kopiować pliki, gdy jestem zalogowany na komputerze Mac z komputera z systemem Ubuntu, ale nie na odwrót.
Rozwiązanie: Musiałem utworzyć klucze ssh na maszynie Ubuntu i udostępnić je na moim komputerze Mac. wtedy mogę pomyślnie uruchomić następujące polecenie na komputerze Ubuntu
Na Macu
A teraz następujące polecenie powinno skopiować plik bez pytania o hasło do MAC
źródło
Testowane i poprawione za pomocą tych instrukcji: https://askubuntu.com/questions/46930/how-can-i-set-up-password-less-ssh-login
Instrukcje tutaj działały bezbłędnie, kiedy testowałem na moich urządzeniach (CentOS / CentOS). Wyobrażam sobie, że problem polega na tym, że twoje klucze ssh nie są powiązane z nazwą użytkownika.
Przykład: kot authorized_keys # na polu mam sshing / scpin' do ssh-rsa BLAHBLAHBLAHBLAH / zAcS4kD9pyPAjD3 / gd5D1rcQa6IztCMR9yMXiGFnxviWsT8 / oYevZw25k4yREuA8ibLKC9peH1X4LK1E + n7gq4TETexWkZbQ2XGLOX44eglra3MB4FShPg0cZXGcJWltPQ / y0Ay2A / KmaC14YrDfqwm7 + ibTiUp4hOO8I6eIPmwwGn / 2hs0SewJXisGqUx2v [email protected] #username jest przywiązany do klucza i jest autoryzowany host
źródło