Я пытаюсь получить файл с server1 (localhost) с помощью scp. Я получаю доступ к server1 со шлюза server2 (это единственный доступный из Интернета).
Я могу открыть ssh-соединение, используя:
ssh -p 2222 -L 8080:localhost:443 myUser@server2
И в поисковике я обнаружил, что команда scp должна выглядеть примерно так:
scp -P 2222 myUser@127.0.0.1:/sourcePathToFile/file destinationPathToFile
Но я получаю
ssh: connect to host 127.0.0.1 port 2222: Connection refused
Это записи в / etc / hosts
127.0.0.1 localhost
127.0.1.1 server3
Что я делаю не так?
Предполагая, что обе эти команды выполняются на server1 ...
Если вы можете войти на server2, используя параметры ssh, перечисленные выше (подключение к порту 2222 на server2), то вы сможете скопировать файл, используя
scp -P 2222 /sourcePathToFile/file myUser@server2:/destinationPathToFile
(Если я не упускаю цель перенаправления вашего собственного локального порта 8080 на удаленный порт 443, что является результатом -L 8080: локальный: 443 часть вашей команды ssh.)
Проблема с вашей командой scp заключалась в том, что она пыталась подключиться к ssh-серверу, запущенному на server1 на порту 2222, тогда как он должен был подключаться к ssh-серверу, работающему на server2 на порту 2222.