보안 업데이트를 설치하지 않는 것은 남의 문제가 되기까지 나쁜 한 주가 남았을 뿐이며, 클라이언트를 받아들이는 게이트웨이는 그 습관을 키우기에 가장 쉬운 장소입니다. 흔한 원인은 빠진 경로가 아니라 빠진 결정입니다. 클라이언트 전달을 일부러 좁게 둘 때 호스트 자신이 저장소에 어떻게 닿을지 아무도 정하지 않았습니다. 그 결정은 명시적으로 내려야 하고, 오후 내내 출구 정책을 끄는 것보다 좁아야 합니다.

네 단계, 네 명의 다른 담당자

업데이트 실패는 메시지가 그렇게 말하든 말든 이름 붙은 단계이며, 각 단계는 서로 다른 담당자에게 속합니다. 해석되지 않는 이름은 리졸버의 질문입니다. 시간 초과되는 연결은 전송, 프록시 또는 먼 쪽 끝의 질문입니다. 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

핑과 이름 해석은 사람들이 가장 먼저 쓰는 두 가지 시험입니다. 둘 다 아무도 묻지 않은 질문에 답합니다. 에코 응답은 저장소 연결과 다른 프로토콜을 쓰고, 성공한 조회는 가져오기를 시험하지 않은 채 이름 해석에서 멈춥니다. 둘 다 실제 거래가 실패하는 동안 통과할 수 있고, 둘 다 경로와 무관한 이유로 실패할 수 있습니다.

관리자가 실제로 지나는 경로를 읽으세요

설정된 소스 URI와 실제로 적용되는 프록시 구성을 어느 한쪽을 가정하지 말고 확인하세요. 평문 HTTP용으로 쓴 규칙은 저장소가 HTTPS를 말할 때 수리가 아닙니다. 프록시를 의무화한 조직은 이미 경로를 정했습니다. 패키지 관리자는 환경 변수와 자체 설정을 따르고, 호스트별 설정이 전역 설정을 덮어쓸 수 있습니다. 대화형 브라우저가 하는 일이 관리자가 하는 일과 같아야 할 이유는 없습니다.

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

APT 전송 문서는 어떤 설정이 어떤 URI 스킴에 적용되고 호스트별 선택이 어떻게 쓰이는지 설명합니다. 명령 출력은 티켓과 함께 보관하세요. 프록시 문제와 빠진 경로를 어떤 수의 핑 결과보다 빨리 갈라냅니다. 관리자가 시도하는 정확한 목적지, 포트, 프로토콜을 적고, 방화벽 변경은 몇 달 안에 낡는 추측한 미러 주소가 아니라 그 기록에 근거하게 하세요.

예외가 아니라 유지보수 정책을 고르세요

옹호할 수 있는 정책은 세 가지입니다. 터널을 통해 유지보수하기, 관리형 업데이트 프록시를 통해 유지보수하기, 좁게 승인된 직접 경로를 통해 유지보수하기입니다. 각각에 맞는 리졸버 구성이 따릅니다. 옹호할 수 없는 것은 터널이 떨어질 때마다 조용히 무제한 대체 경로가 되는 예외입니다.

고른 정책은 담당자와 함께 적어 두세요. 다음 운영자는 규칙을 찾지 그 배경의 이유는 찾지 않습니다. 권한은 기존 방화벽과 네트워크 담당자를 통해 적용하고, 규칙을 비우거나 호스트 하나를 위해 두 번째 정책 관리자를 더하지 마세요. 실제 소스가 쓰는 주소 체계와 서비스 끝점을 덮고, 저장소가 옮겨 가면 목록을 다시 보세요.

신뢰를 약화시키지 않고 검증하세요

전송 성공은 검증을 느슨하게 할 허가가 아닙니다. 저장소 인증과 TLS 서버 신원은 서로 다른 두 검사이고, 어느 하나를 끄면 오류는 사라지지만 호스트가 무엇을 받아들일지가 바뀝니다. 가로채는 프록시는 네트워크 담당자의 신뢰 결정이지 검사를 로컬에서 끌 이유가 아닙니다. 저장소 자격 증명은 공유 진단에 두어서는 안 됩니다. 자세한 로그가 그것을 흘리기에 가장 쉬운 곳이기 때문입니다.

변경은 통제된 메타데이터 가져오기와 그에 이은 승인된 패키지 거래 하나로 받아들이고, 그다음 터널이 떨어질 때 무슨 일이 일어나는지 시험하세요. 장애 동안 조용히 넓어지는 유지보수 경로는 닫힌 채 실패하는 경로보다 나쁩니다. 결과는 이름 붙은 담당자와 제한된 범위를 가진 업데이트 경로여야 합니다.

관련 글