Sprawdzanie rsync za pomocą polecenia SSH allowed_keys = "..."
Próbuję przetestować rsync za pomocą pliku sshd allowed_keys.
Problem w tym, że nie mogę uruchomić rsync ze skryptu testowego.
Oto mój plik Authorized_keys:
command="/home/username/Desktop/valrsync username" ssh-rsa AAAA [...]
Oto skrypt valrsync za każdym razem inaczej:
Test 1 -
$SSH_ORIGINAL_COMMAND
Wynik -
$ rsync [...]/username@remotemachine:/
/home/username/Desktop/valrsync: line 2: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]
Co ważniejsze, test 2 -
#!/usr/bin/pythonimport os
os.system(os.getenv('SSH_ORIGINAL_COMMAND'))
Wyjście (uruchamianie rsync z lokalnego komputera i pobieranie danych wyjściowych
valrsyncna zdalnym komputerze) -
$ rsync [...]/username@remotemachine:/
sh: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]
Rozumiem, że rsync w jakiś sposób uruchamia swoją instancję na zdalnej maszynie i oczywiście ta instancja nie jest wspominana, gdy próbuję uruchomić polecenie rsync za pomocą skryptu. rsync nie jest zainstalowany na serwerze i wiem, że nie powinien.
Teraz pytanie brzmi, co mogę z tym zrobić (poza może instalacją rsync na serwerze ...?)
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
3 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
... Zwykle oznacza to, że Twój
zmienna środowiskowa nie jest ustawiona poprawnie. Korzystając z pierwszego testu, jawnie ustaw
aby uwzględnić katalog, w którym jest zainstalowana komenda rsync. Na przykład:
Upewnij się, że skrypt jest wykonywalny (
).
Zakłada się, że rsync jest rzeczywiście zainstalowany w systemie docelowym.
Anonimowy użytkownik
Potwierdzenie od:
, który w dystrybucjach opartych na Debianie powinieneś był już zainstalować razem z
w
... W takim przypadku po prostu uruchom następujące polecenie, aby rozpakować skompresowany skrypt do
:
(gdy jest już uruchomiony jako
oczywiście możesz wyjść
odwołania)
Alternatywnie
Ściągnij
Tutaj
https://www.samba.org/ftp/unpa ... rsync
.
Przypomnienie:
mający
zainstalowany na zdalnym komputerze (tym, który
plik)
jest to warunek wstępny
Tutaj.
Gdy to zrobisz, możesz po prostu dodać
przed ciągiem klucza publicznego przez wywołanie
.
Zwykle wraz z rozszerzeniem
więc może wyglądać tak:
Udostępniając ten katalog (możesz użyć
tylko do odczytu i
tylko do zapisu), możesz opuścić katalog w
apel.
W ten sposób twoja linia poleceń stanie się
(zwróć uwagę na brakującą ścieżkę po
).
Anonimowy użytkownik
Potwierdzenie od: