APT 인증 프로필 사용

APT 인증 프로필 사용

내 소스에 저장소(datastax)를 추가하려고 합니다. 저장소에서는 사용자 이름과 비밀번호를 추가해야 합니다.또한 특수 문자를 Urlencode해야 함을 경고합니다..

그래서 나는 다음과 같이 덧붙였습니다.

deb https://[email protected]:p@[email protected]/enterprise stable main

하지만 apt-get update말하자면:

W: Failed to fetch https://[email protected]/enterprise/dists/stable/main/binary-amd64/Packages  Could not resolve host: [email protected]

이 시점에서 나는 @다음과 같이 변경했습니다 %40.

deb https://user%40mail.com:p%[email protected]/enterprise stable main

그러나 주사위가 없으면 오류는 정확히 동일하게 유지됩니다.

특수 문자를 제거하기 위해 비밀번호를 변경하고 오류가 찾을 수 없음으로 전송되지 않기를 바라기 전에 누군가 apt-get이 특수 문자와 비밀번호로 보호되는 저장소를 처리하는 방법에 대해 이해하지 못하는 점을 설명해 주시겠습니까?mail.com:[email protected]

답변1

@문자는 URL에 예약된 문자입니다.

모든 [RFC 3986, URI(Uniform Resource Identifier): 범용 구문, 섹션 2.2, 예약 문자][1]:

2.2. 예약된 문자

URI에는 "예약된" 집합의 문자로 구분된 구성 요소와 하위 구성 요소가 포함됩니다. 이러한 문자는 범용 구문, 각 체계별 구문의 구현별 구문 또는 URI 역참조 알고리즘에 의해 구분 기호로 정의될 수도 있고 정의되지 않을 수도 있기 때문에 "예약된" 문자라고 합니다. URI 구성 요소의 데이터가 예약 문자를 구분 기호로 사용하는 것과 충돌하는 경우 URI를 형성하기 전에 충돌하는 데이터를 백분율로 인코딩해야 합니다.

reserved    = gen-delims / sub-delims

gen-delims  = ":" / "/" / "?" / "#" / "[" / "]" / "@"

sub-delims  = "!" / "$" / "&" / "'" / "(" / ")"
              / "*" / "+" / "," / ";" / "="

예약된 문자의 목적은 URI의 다른 데이터와 구별할 수 있는 구분 문자 집합을 제공하는 것입니다. 예약된 문자를 해당 백분율로 인코딩된 옥텟으로 대체하는 방식이 다른 URI는 동일하지 않습니다. 예약된 문자를 백분율로 인코딩하거나 예약된 문자에 해당하는 백분율로 인코딩된 옥텟을 디코딩하면 대부분의 응용 프로그램이 URI를 해석하는 방식이 변경됩니다. 따라서 예약된 집합의 문자는 정규화의 영향을 받지 않으므로 스키마별 및 생산자별 알고리즘에서 안전하게 사용하여 URI 내의 데이터 하위 구성 요소를 구분할 수 있습니다.

@"gen-delims" 중 하나로 나열되어 있습니다 . [1]:https://www.rfc-editor.org/rfc/rfc3986#section-2.2

답변2

APT 인증 프로필 사용

APT는 인증을 위해 별도의 구성 파일을 사용합니다(이 정보는 구성 파일의 "APT 라인"에 표시되지 않음). 이러한 파일은 /etc/apt/auth.conf.d/사용 사례에 대해 다음과 같은 위치에 있으며 구문을 갖습니다.

machine FQDN login USERNAME password PASSWORD

FQDN귀하의 경우에는 debian.datastax.com그렇습니다 USERNAME. [email protected]비밀번호는 입니다 p@ssword. APT는 자동으로 나머지 작업을 처리합니다(특수 문자를 URL로 인코딩).

관련 정보