Отказ устанавливать обновления безопасности — это всего неделя до того, как вы станете чужой проблемой, а шлюз, который пускает клиентов, — самое лёгкое место, чтобы закрепить эту привычку. Обычная причина — не отсутствующий маршрут, а отсутствующее решение: никто не сказал, как сам хост должен добраться до репозитория, когда пересылка клиентов намеренно узкая. Это решение нужно принять явно, и оно должно быть уже, чем отключение политики выхода на полдня.

Четыре этапа, четыре разных владельца

Сбой обновления — это названный этап, говорит об этом сообщение или нет, и каждый этап принадлежит разному владельцу. Имя, которое не разрешается, — вопрос к резолверу. Соединение, которое завершается по таймауту, — вопрос к транспорту, прокси или дальнему концу. Ошибка идентичности TLS — вопрос доверия, а отклонённые метаданные архива — вопрос подписи. Четыре этапа, четыре владельца, и правило порта всегда отвечает только на один из них.

The failure text mentionsWhich component owns itWhat you check firstWhat you must not change
a name that will not resolvethe resolver policy for this hostwhich resolver is used, and whether its path is permittednothing in the firewall: no repository packet has left yet
a connection that times outrouting, proxy or the far endthe destination, port and proxy the manager actually attemptsthe egress policy, before you know that destination
a TLS identity mismatchtrust configuration and the server's identitythe chain the manager is presented withverification settings, which only hide the mismatch
rejected archive metadatathe repository's signing metadatawhether the source carries valid, trusted metadatathe signature check, which is not a routing question

Ping и разрешение имён — два теста, к которым люди обращаются первыми, и оба отвечают на вопросы, которых никто не задавал. Ответ эха использует другой протокол, чем соединение с репозиторием, а успешный запрос останавливается на разрешении имён, не проверяя загрузку. Оба могут пройти, пока реальная транзакция срывается, и оба могут сорваться по причинам, не связанным с путём.

Прочитайте путь, которым менеджер действительно идёт

Проверьте настроенные исходные URI и фактическую схему прокси, вместо того чтобы предполагать одно из двух. Правило, написанное для обычного HTTP, не является починкой, когда репозиторий говорит по HTTPS, а организация, требующая прокси, уже выбрала путь. Менеджеры пакетов уважают переменные окружения и собственную конфигурацию, а настройки, специфичные для хоста, могут переопределить глобальные. То, что делает интерактивный браузер, не обязательно то, что делает менеджер.

apt-get update -o Debug::Acquire::http=true
apt-config dump | grep -i proxy
env | grep -i proxy

Документация транспорта APT описывает, какие настройки действуют для какой схемы URI и как записываются выборы, специфичные для хоста. Сохраняйте вывод команд вместе с тикетом, потому что он отделяет проблему прокси от отсутствующего маршрута быстрее, чем любое количество результатов ping. Запишите точные назначение, порт и протокол, которые пробует менеджер, и пусть изменение брандмауэра опирается на эту запись, а не на выдуманный зеркальный адрес, который устареет через несколько месяцев.

Выберите политику обслуживания, а не исключение

Три политики защитимы: обслуживание через туннель, обслуживание через управляемый прокси обновлений или обслуживание через узко авторизованный прямой маршрут. Каждая подразумевает соответствующую схему резолвера. То, что незащитимо, — это исключение, которое тихо превращается в неограниченный запасной путь всякий раз, когда туннель падает.

Запишите выбранную политику вместе с владельцем, потому что следующий оператор найдёт правило, а не обоснование за ним. Примените разрешение через существующий брандмауэр и владельца сети, а не через очистку правил или добавление второго менеджера политик для одного хоста. Охватите семейства адресов и сервисные конечные точки, которые использует реальный источник, и пересмотрите список, когда репозиторий переезжает.

Проверяйте, не ослабляя доверие

Успешный транспорт — не разрешение ослабить проверку: аутентификация архива и идентичность TLS-сервера — две разные проверки, и отключение любой из них убирает ошибку, меняя то, что хост примет. Перехватывающий прокси — это решение о доверии владельца сети, а не причина отключать проверку локально, а учётные данные репозитория не место в общей диагностике, потому что подробный журнал — самое лёгкое место для их утечки.

Примите изменение при контролируемом получении метаданных, а затем одной одобренной транзакции пакета, и после проверьте, что происходит, когда туннель падает. Путь обслуживания, который во время сбоя тихо расширяется, хуже того, который срывается закрытым, и результатом должен стать путь обновления с названным владельцем и ограниченным охватом.

Похожие статьи