Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: do-release-upgrade отказывается работать через локальный SOCKS5-прокси  (Прочитано 34048 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн EvgenNsk

  • Автор темы
  • Участник
  • *
  • Сообщений: 135
    • Просмотр профиля
Доброго времени суток!

Есть машина на Ubuntu 20.04.5 LTS, расположена в изолированной сети по требованиям безопасности. Вытащить её на прямой, маршрутизируемый в интернет канал - сложная бюрократическая задача, миссия невыполнима, в общем...

Я со своего рабочего компа (Win 10 Prof), имеющего доступ и в интернет, и доступ к SSH машины, подключаюсь через Putty, выполнив реверс-проброс порта на SOCKS5-прокси, который работает на рабочем компе.

В результате на машине в изолированной сети открывается сокет 127.0.0.10800, который перенаправлен на прокси.

Забиваем настройки прокси в конфиг APT (репозитории в sources.list - по умолчанию).
Всё работает. (до внесения прокси в конфиг - завершалось с ошибкой, серверы репозиториев недоступны)

Acquire::http::Proxy "socks5h://127.0.0.1:10800";
Acquire::https::Proxy "socks5h://127.0.0.1:10800";
Acquire::socks::Proxy "socks5h://127.0.0.1:10800";
Acquire::::Proxy "true";

#apt update
Сущ:1 http://archive.ubuntu.com/ubuntu focal InRelease
Сущ:2 http://archive.canonical.com/ubuntu focal InRelease
Пол:3 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Пол:4 http://archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB]
Пол:5 http://archive.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Пол:6 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [2 425 kB]
Пол:7 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 c-n-f Metadata [16,3 kB]
Пол:8 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [1 038 kB]
Пол:9 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 c-n-f Metadata [23,8 kB]
Пол:10 http://archive.ubuntu.com/ubuntu focal-security/main amd64 c-n-f Metadata [12,3 kB]
Пол:11 http://archive.ubuntu.com/ubuntu focal-security/universe amd64 c-n-f Metadata [17,2 kB]
Получено 3 869 kB за 3с (1 474 kB/s)
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Все пакеты имеют последние версии.

Возникла технологическая необходимость поднять машину 22.04.2 LTS (требования разработчика прикладного ПО), выполняем do-release-upgrade:

do-release-upgrade
[b]proxy 'socks5h://127.0.0.1:10800' looks invalid[/b]
Checking for a new Ubuntu release
Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings
There is no development version of an LTS available.
To upgrade to the latest non-LTS development release
set Prompt=normal in /etc/update-manager/release-upgrades.

Наблюдаем 2 вещи:
1. Указание на использование прокси и его адрес нормально забирается из конфига APT
2. Попытка использования прокси завершается с ошибкой, "инвалид" и всё тут.

Прошу оказать консультативную поддержку, что и где я не указал в конфигах.

Есть предположение - глядя на http:// в выхлопе APT, и https  в выхлопе do-release-upgrade - что ошибка в SSL через SOCKS5, потому что простой эксперимент показывает вот такие результаты:

# https_proxy="https://127.0.0.1:10800" wget https://www.google.com/favicon.ico
--2023-03-17 07:42:40--  https://www.google.com/favicon.ico
Подключение к 127.0.0.1:10800... соединение установлено.
Сбой чтения ответа прокси: Выполнено.
Продолжение попыток.


Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6690
  • 20% Cooler
    • Просмотр профиля
curl -Iv --proxy 'socks5h://127.0.0.1:10800' google.com
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн EvgenNsk

  • Автор темы
  • Участник
  • *
  • Сообщений: 135
    • Просмотр профиля
curl -Iv --proxy 'socks5h://127.0.0.1:10800' google.com

# curl -Iv --proxy 'socks5h://127.0.0.1:10800' google.com
*   Trying 127.0.0.1:10800...
* TCP_NODELAY set
* SOCKS5 communication to google.com:80
* SOCKS5 connect to google.com:80 (remotely resolved)
* SOCKS5 request granted.
* Connected to 127.0.0.1 (127.0.0.1) port 10800 (#0)
> HEAD / HTTP/1.1
> Host: google.com
> User-Agent: curl/7.68.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 301 Moved Permanently
HTTP/1.1 301 Moved Permanently
< Location: http://www.google.com/
Location: http://www.google.com/
< Content-Type: text/html; charset=UTF-8
Content-Type: text/html; charset=UTF-8
< Date: Fri, 17 Mar 2023 08:03:45 GMT
Date: Fri, 17 Mar 2023 08:03:45 GMT
< Expires: Sun, 16 Apr 2023 08:03:45 GMT
Expires: Sun, 16 Apr 2023 08:03:45 GMT
< Cache-Control: public, max-age=2592000
Cache-Control: public, max-age=2592000
< Server: gws
Server: gws
< Content-Length: 219
Content-Length: 219
< X-XSS-Protection: 0
X-XSS-Protection: 0
< X-Frame-Options: SAMEORIGIN
X-Frame-Options: SAMEORIGIN

<
* Connection #0 to host 127.0.0.1 left intact

И что это означает? SOCKS5 не виноват?

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6690
  • 20% Cooler
    • Просмотр профиля
SOCKS5 не виноват?
Да, прокси работает.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн EvgenNsk

  • Автор темы
  • Участник
  • *
  • Сообщений: 135
    • Просмотр профиля
SOCKS5 не виноват?
Да, прокси работает.

Значит круг поисков сжался до механизмов, которые задействует do-release-upgrade (это же по сути питоновский скрипт для автоматизации процесса dist-upgrade, чтобы "не пролюбить" каскадные зависимости пакетов друг от друга)

Пользователь добавил сообщение 17 Марта 2023, 11:28:12:
https://askubuntu.com/questions/175172/how-do-i-configure-proxies-without-gui

Да, но тут нет ни слова про SOCKS:

http_proxy="http://myproxy.server.com:8080/"
https_proxy="http://myproxy.server.com:8080/"
ftp_proxy="http://myproxy.server.com:8080/"
no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
HTTP_PROXY="http://myproxy.server.com:8080/"
HTTPS_PROXY="http://myproxy.server.com:8080/"
FTP_PROXY="http://myproxy.server.com:8080/"
NO_PROXY="localhost,127.0.0.1,localaddress,.localdomain.com"

Ладно, пробуем:

# cat /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
http_proxy="http://127.0.0.1:10800/"
https_proxy="http://127.0.0.1:10800/"
ftp_proxy="http://127.0.0.1:10800/"
no_proxy="localhost"
HTTP_PROXY="http://127.0.0.1:10800/"
HTTPS_PROXY="http://127.0.0.1:10800/"
FTP_PROXY="http://127.0.0.1:10800/"
NO_PROXY="localhost"

Не прокатило  :-\

# do-release-upgrade
proxy 'socks5h://127.0.0.1:10800' looks invalid
Checking for a new Ubuntu release
Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings
There is no development version of an LTS available.
To upgrade to the latest non-LTS development release
set Prompt=normal in /etc/update-manager/release-upgrades.

Всё же, судя по выхлопу, путь к прокси забирается из конфига APT
« Последнее редактирование: 17 Марта 2023, 11:28:12 от EvgenNsk »

Оффлайн EvgenNsk

  • Автор темы
  • Участник
  • *
  • Сообщений: 135
    • Просмотр профиля
В общем, проблему так и не решили.

Затянули временно маршрут с NAT-ом на машину и обновили.
Натравить do-release-upgrade на прокси так и не получилось. Стерев бубен до дыр, решили пойти путём очевидного решения от безысходности.

Если кто-то найдёт решение задачи - прошу поделиться. В свете постепенного перехода бизнес-процессов на linux-платформы и ужесточением IT-политики, которая приводит к секционированию сети на зоны с заборами из межсетевых экранов (когда прямой NAT в интернет не всегда доступен), данный вопрос будет возникать всё чаще.

Оффлайн artenox

  • Любитель
  • *
  • Сообщений: 71
    • Просмотр профиля
Если socks не поддерживается, попробуйте заюзать socks-http proxy конвертер https://github.com/KaranGauswami/socks-to-http-proxy Прога на Rust, установки не требует. Есть еще polipo в репозитории Bionic https://packages.ubuntu.com/bionic/polipo

Оффлайн MooSE

  • Старожил
  • *
  • Сообщений: 1110
    • Просмотр профиля
Если с одной машины на другую можешь зайти по SSH то можешь поднять http-прокси на одной машине и пробросить порт через SSH на другую машину. Гуглить "SSH Port Forwarding".

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.025 секунд. Запросов: 22.