Ручной интерактивный прокси для установки пакетов на сервер без интернета

Мне нужно установить некоторые пакеты rpm, python и R на сервер, который не подключен к Интернету: я могу только ssh к нему. Я могу скачать пакеты и скопировать их на сервер, а затем установить их вручную с rpm -i и тому подобное. Но управление зависимостями и поиск нужного rpm-пакета громоздки и специфичны для каждого программного обеспечения (здесь это будет

Плюс некоторое управление зависимостями для R и pip.)


Поэтому я рассматриваю другой путь, который может работать для любого программного обеспечения:

  • запускать "ручной прокси" локально, как интерактивный инструмент командной строки
  • в новой консоли попросите yum/R/pip использовать этот прокси и установить какой-либо пакет
  • всякий раз, когда yum запрашивает какой-либо файл из Интернета (например, PACKAGES или foo.tar.gz), прокси-сервер вручную печатает URL-адрес и ждет
  • Я загружаю указанный URL с другого компьютера и отправляю его на сервер.
  • Я говорю прокси-серверу вручную, что там есть файл, который отвечает на запрос yum.

Есть ли инструмент для реализации ручного прокси? Похоже, что mitmproxy может это сделать, может кто-нибудь со знанием этого инструмента подтвердить?

Я вижу эти потенциальные проблемы:

  • Мне может понадобиться увеличить тайм-аут.
  • Если менеджер пакетов yum, pip или R использует SSL, мне нужно установить сертификат mitmproxy
  • установка mitmproxy и его зависимостей (на сервере, которому не хватает интернета) может быть более сложной, чем проблема, которую я пытаюсь решить.

Любой другой инструмент для этого также будет приветствоваться. Может быть, небольшого скрипта Python достаточно.

Изменить: Ответ на второй комментарий TessellatingHeckler:

  • SSH вернуться с сервера? Возможно, но сетевой администратор может быть недоволен (плюс, настройка не тривиальна, так как мой компьютер также находится за прокси-сервером, поэтому мне потребуется двойной переход + ssh -R).
  • github.com/inaz2/proxy2? Выглядит хорошо.
  • yum localinstall? Это действительно лучше, чем rpm -i, но моя цель здесь (получить некоторый опыт и) общее решение для любых менеджеров пакетов с поддержкой прокси. Менеджеры пакетов различаются по способам перечисления зависимостей и установки локального репо, и эти функции обычно менее документированы, чем указание им использовать прокси.

0 ответов

Другие вопросы по тегам