Linux 릴리스가 실제로 지원할 수 있는 OpenVPN 패키지는 무엇인가
오래된 안내서의 버전 번호는 기능을 가리키는 대리 지표일 뿐입니다. 구현과 기본 릴리스를 맞춰 본 다음, 시스템이 이미 제공하는 것을 확인하십시오.
특정 OpenVPN 릴리스를 지정한 지침은 대개 어떤 기능을 담고 있고, 버전 번호는 그 기능을 가리키는 대리 지표일 뿐입니다. 그 지침을 읽을 무렵에는 배포판이 지정된 버전보다 최신 패키지를 제공하면서도 필요한 통합이 빠져 있을 수 있고, 반대로 요구 사항을 이미 충족하는 더 오래된 패키지를 제공할 수도 있습니다. 번호를 목표로 삼으면 아무것도 해결하지 못하는 저장소 변경이 생깁니다. 번호를 요구 사항의 징후로 삼으면 훨씬 작은 결정으로 끝납니다.
두 경우를 가르는 것은 어떤 구현인지, 어떤 기본 릴리스인지, 업데이트를 누가 맡는지라는 세 가지 질문입니다.
버전 번호는 기능 요구 사항이 아니다
어떤 패키지가 제공하는지 묻기 전에 연결이 무엇을 필요로 하는지 물으십시오. 프로필은 암호, TLS 모드, 인증 플러그인 또는 관리 인터페이스를 요구할 수 있고, 만족스러운 버전 문자열을 보고하는 빌드에도 그중 하나가 빠져 있을 수 있습니다. 반대로 조금 오래된 빌드가 프로필이 쓰는 모든 것을 구현했을 수도 있습니다. 버전 문자열은 패키저가 쓴 요약이며 기능 목록이 아닙니다.
그 지침이 '이 기능 이후'를 뜻하는지 '이 빌드를 실제로 시험했다'를 뜻하는지 분명히 하십시오. 두 답은 서로 다른 저장소로 이어집니다.
코드명은 기본 릴리스와 일치해야 한다
저장소는 배포판 코드명을 기준으로 관리되고, 파생 배포판의 릴리스 이름은 그 기반의 코드명이 아닙니다. /etc/os-release 을 읽어 VERSION_CODENAME 과 ID_LIKE 를 확인하고, 파생 배포판이 어느 기본 릴리스를 따르는지 확정하십시오. 하나의 데스크톱 릴리스를 하나의 Ubuntu 코드명에 연결한 오래된 답변은 다음 릴리스에 관해 아무것도 말해 주지 않습니다. 코드명을 추측하면 시스템이 다른 C 라이브러리에 맞춰 빌드된 패키지를 끌어오게 됩니다.
무엇이든 추가하기 전에 패키지 관리자가 apt-cache policy openvpn 으로 이미 무엇을 제공하는지 확인하십시오. 설치된 후보가 요구 사항을 충족한다면, 저장소 문제는 사라집니다.
업스트림 저장소가 실제로 묶이는 대상
업스트림 채널은 특정 기본 릴리스용 빌드를 배포하며, 그 지침은 저장소 행을 서명 키와 짝지어 지원되는 코드명을 제시합니다. 이 부분들은 아무 코드명이나 넣어 바꿀 수 있는 자리 표시자가 아닙니다. 의존성은 빌드가 겨냥한 릴리스에 맞춰 해석되므로, 깔끔하게 설치되는 패키지도 같은 라이브러리를 공유하는 무관한 소프트웨어를 깨뜨릴 수 있습니다.
선택한 구현의 저장소 안내서를 읽고, 오래된 블로그의 사본이 아니라 그 안내서의 현재 호환성 표를 따르십시오.
설치는 통합이 아니다
openvpn 바이너리를 교체해도 빠진 NetworkManager 플러그인, 가져오기 대화 상자, 데스크톱 편집기가 추가되지 않습니다. 그것들은 network-manager-openvpn 및 그 데스크톱 대응물 같은 별도 패키지에 있고, 클라이언트 라이브러리와는 나름의 버전 관계를 가집니다. OpenVPN 3 Linux 는 또 다른 구현으로, 자체 세션과 구성 모델을 가지므로 그 패키지들은 2.x 프로필 작업 흐름을 그대로 대체하지 못합니다.
무엇이든 설치하기 전에 실행 중인 터널을 어느 구성 요소가 소유하는지 정하십시오. 한 호스트에 관리자가 둘이면 클라이언트가 둘일 때와 같은 중복 터널 혼란이 생깁니다.
세 가지 결정을 적어 두라
구현, 기본 릴리스, 업데이트 담당자를 기록하고 그중 어느 것이 바뀔 것으로 보이는지 표시하십시오. 배포판 릴리스 이후 저장소 행이 작동을 멈출 때 미래의 업그레이드가 읽는 것이 바로 그 기록입니다. 그것이 없으면 다음 사람이 더 새로운 번호로 코드명 추측을 반복합니다.
필요한 채널이 기본 릴리스를 더 이상 지원하지 않는다면, 답은 플랫폼 이전이지 세 릴리스 전의 저장소가 아닙니다.