Копирование файла с помощью pscp через промежуточный сервер шлюза

У меня есть коробка перехода linux между мной и удаленным сервером. Я видел несколько сообщений о том, как это сделать с scp (например,здесь), но я на окно, так что ситуация немного другая. Я хочу скопировать файл с моей локальной машины windows, через установку сервера в качестве шлюза между ними. Я должен быть в состоянии сделать несколько прыжков через промежуточный сервер. Что-то вроде этого:

A - > B - > C

Я не хочу копировать файл в B, затем войдите в B и скопируйте файл снова. Я хотел бы иметь возможность запускать pscp на ряде файлов, чтобы скопировать их.

30
задан Community
02.04.2023 16:38 Количество просмотров материала 2437
Распечатать страницу

3 ответа

Я нашел, что лучший способ сделать это-создать туннель на промежуточный сервер (сервер B на рисунке). Затем pscp по этой ссылке. Я сделаю именно то, что сделал.

1) Создайте SSH соединение с serverB в PuTTY

enter image description here

2) для этого соединения создайте туннель, который идет от порта 2222 (вы можете выбрать другой, если хотите) к serverC на порту 22

enter image description here

3) открыть окно командной строки в Windows. Перейдите туда, где PuTTY / pscp установлен на вашей машине (если не на пути уже)

4) Введите следующую команду (подставляя собственные значения в {}):

c:\putty> программе pscp -Р 2222 -ПВ {myPasswordOnRemoteMachine} c:\dev\fileIWantToCopy.txt {myusername}@127.0.0.1: / tmp

5) на удаленном компьютере файл должен находиться в каталоге /tmp

4
отвечен Scott 2023-04-04 00:26

самое простое решение, которое я нашел для этой проблемы, было не использовать pscp вообще. Просто используйте WinSCP, чтобы скопировать файл.

  1. введите свой окончательный адрес сервера (т. е. сервер 'C' в вопросе) на странице сессии и выберите SCP. enter image description here

  2. нажмите "Дополнительно"...'. Перейдите к соединению>туннель. Введите информацию о сервере переходов (например, Server 'B'). enter image description here

  3. теперь просто войдите в систему либо ваш ключевой файл, либо пароль, и вы будете туннелированы.

1
отвечен Scott 2023-04-04 02:43

моя еще более сложная ситуация: A - > B - > C - > D - >E

I used PuTTY and FileZilla

A my Windows machine, 
B and C are gateways (very limited functionality)
D is the first Linux Machine and 
E is the target Linux Machine

I use PuTTY to: 
    ssh into B (w/username password) (IP of B is predefined in PuTTY) then
    ssh into C (w/username password) then manually
    ssh into D (w/username password) then manually
    ssh into E (at least this uses pubic key login so no uid/password!)

Once this is setup I then add tunnel to the IP of the final machine E in PuTTY thus:
    L7777 172.123.124.125:22



OK now fire up FileZilla:

File > SiteManager:
Setup new connection to:
Host: 127.0.0.1 Port: 7777
Protocol SFTP
Ask for password...

Connect!
0
отвечен xcxc 2023-04-04 05:00

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх