Używam Ccygwin na WinXP (z powłoką bash). Chcę przesłać plik SCP z mojego lokalnego hosta na zdalną maszynę - host2. Jednak mogę SSH tylko na maszynie pośredniej - host1, a następnie SSH na host2. (Uwaga, nie mogę uzyskać dostępu do host2 z mojego localhost).
Myślałem, że tunelowanie to moja odpowiedź, ale kiedy próbuję założyć tunel
ssh -L 9999:localhost:9998 dalvarado@host1 'ssh -L 9998:localhost:1234 -N dalvarado@host2'
Ale po wpisaniu tego polecenia i naciśnięciu klawisza Enter system się zawiesza. Jaki jest właściwy sposób skonfigurowania tunelu, a następnie SCP pliku?
Dzięki, -
ssh
scp
ssh-tunnel
Dave
źródło
źródło
Odpowiedzi:
Na to pytanie najlepiej już tutaj odpowiedziano .
Podsumowując: wstaw następujące elementy
~/.ssh/config
a następnie po prostu
scp
do target.machine za każdym razem, gdy chcesz proxy za pośrednictwem proxy.machine!Działa również dla
ssh
, więc zaoszczędzisz czas wysyłania wiadomości do komputera docelowego.Kredyt należy przekazać użytkownikowi 24925, który odpowiedział na to w 2011 r.
źródło
Aby skonfigurować tunel SSH, użyj następującego formatu:
To polecenie łączy się z portem
host1
asuser
i tuneluje port 9999 na komputerze, wydając polecenie na port 22host2
.-N
jest opcjonalny lub możesz użyć czegoś takiegotop
lubwatch
utrzymać sesję przy życiu w razie potrzeby.Następnie po prostu
scp
host2 na localhost: 9999.źródło
scp
składnia polecenia jest jednak niepoprawna. Spróbuj tego,scp -P 9999 hello.txt user@localhost:/path/to/destination/file
gdzieuser
jest użytkownikhost2
, dla którego chcesz się zalogować.Od OpenSSH 7.3 możesz użyć
-J
lub,-o ProxyJump
aby określić hosta bastionu / skoku. Dlatego do SSHnode2
za pośrednictwemnode1
:SCP nie ma
-J
argumentu, ale zezwala-o
, więc działa to:źródło
Możesz najpierw scpować plik do hosta1, w następujący sposób:
Następnie zrób to, aby dostać się do host2:
-t
Opcjassh
sił to przeznaczyć pseudo-terminali, które mogą sprawić, że łatwiejscp
na host1 się monit o hasło / hasła. Jeśli masz ssh-agent działający i skonfigurowany wszędzie, nie powinieneś być proszony o podanie hasła / hasła.Oferuję tę alternatywę, ponieważ jeśli użyjesz tunelu, nadal potrzebujesz dwóch poleceń: jednego, aby skonfigurować tunel, a drugiego, aby skopiować plik przez niego. To wydaje się prostsze.
źródło