У меня есть 2 сервера (A, B) и внешний сервер (C). Сервер C принимает запросы только от сервера B (авторизация IP). Мне нужно как можно быстрее загрузить файл с сервера C на сервер A. Конечно, я могу загрузить файл на сервер B, а затем на сервер A, но файл довольно большой, и время имеет решающее значение. Есть ли способ напрямую загрузить файл с сервера C в A, используя B как «прокси» какого-то рода?Загрузка файла непосредственно через сервер
ответ
Вы можете установить что-то вроде tinyproxy на сервере B, если вы делаете передачу файлов по протоколу HTTP или HTTPS. Что-то вроде этого, вероятно, будет самым быстрым способом.
Другим подходом, который вы могли бы предпринять, было бы использовать SSH port forwarding для создания временного «немого» прокси-сервера, который обладает дополнительной гибкостью, поддерживая практически любой порт/протокол, который может вам понадобиться. Предположим, вы хотели использовать scp для копирования файла. Вы могли бы сделать что-то вроде этого:
На сервере А, выполните команду SSH вдоль этих линий:
$ SSH -L 2222: hostC.example.com: 22 hostB.example.com
в отдельной сессии на сервере А, выполните следующие действия:
$ УПП -P 2222 локальный:/путь/к/Файл/на/hostC/путь/к/целевой
Шаг # 1 создает туннель из порта 2222 на сервере А на сервере B таким образом, что когда-то подключается через него, то сервер B устанавливает соединение на порт 22 (порт SSH/SCP) на сервере C.
Шаг №2 использует этот туннель, подключившись к порту 2222 на локальном хосте для запроса нужного файла.
Если вы рассматриваете этот подход, вы можете взглянуть на настройку авторизованного ключа SSH между сервером A & B, чтобы вам не нужно было запрашивать пароль, а также параметры, такие как -f и/или -n (в зависимости от используемой версии SSH), чтобы перенести первое соединение на задний план.
- 1. Загрузка файла на сервер
- 2. Загрузка файла на сервер Apache ISIS через RESTService (не WicketViewer)
- 3. Загрузка файла на сервер
- 4. Загрузка файла на сервер
- 5. Загрузка файла через ajax
- 6. Загрузка файла на SFTP-сервер
- 7. Загрузка на сервер через ssh
- 8. Загрузка файла непосредственно на жесткий диск
- 9. Загрузка файла через ajax
- 10. Загрузка файла через FileAPI
- 11. Загрузка файла через заголовки
- 12. Загрузка файла через Yii
- 13. Загрузка файла через base64
- 14. Загрузка файла через okhttp3
- 15. Загрузка файла через iFrame
- 16. Загрузка файла через pyCurl
- 17. Загрузка файла через JavaScript?
- 18. андроид - загрузка файлов через андроид HTTP сервер
- 19. Загрузка CSV-файла на сервер
- 20. php: загрузка файла на сервер
- 21. Загрузка файла на сервер Sharepoint
- 22. Загрузка файла на сервер apache
- 23. Загрузка файла excel на сервер
- 24. Загрузка файла - сервер MySQL ушел
- 25. Загрузка файла изображения на сервер
- 26. Загрузка файла на сервер PHP
- 27. Загрузка звукового файла на сервер
- 28. Загрузка файла nodejs на сервер
- 29. Просмотр файла и загрузка его на сервер через сокет
- 30. Загрузка изображения через AJAX - Как передать имя файла на сервер?
Вы хотите сделать это программно или вручную через CLI? Если программно, на каком языке? –
Вы можете посмотреть rsync - он поддерживает аутентификацию без пароля (проверка подлинности на основе ключей) –