Tunnelblick이 인식할 수 없는 data-ciphers 옵션을 보고하고, 같은 숨결에 OpenVPN 2.4를 언급하며, 연결은 시작되지 않습니다. 이는 암호를 둘러싼 이견이 아니라 로컬 파싱 실패입니다. 엔진이 게이트웨이와 어떤 협상도 일어나기 전에 프로필을 거부했기 때문입니다. 서버의 암호 정책에 관한 일반적인 조언은 여기서 도움이 되지 않습니다. 파서가 먼저 파일을 이해해야 합니다. 이 구성이 실제로 실행한 엔진을 찾으면 나머지는 따라옵니다.

프로필을 건드리기 전에 로그 줄을 읽으십시오

실패한 연결을 Tunnelblick의 세부 정보 창에서 열고 로그를 위에서부터 읽으십시오. 첫 줄들은 엔진 버전과 그에 전달되는 프로필을 말하고, 이어서 파싱을 멈춘 옵션이 나옵니다. 그 이후의 모든 것은 잡음입니다. 프로세스가 종료되었기 때문입니다.

그 로그에서 세 가지 사실을 기록하십시오. 엔진 버전, 구성 이름, 정확한 메시지입니다. 이 셋이 진단의 전부입니다. 수정에 설치된 애플리케이션 변경이 필요하다면 이것들도 필요합니다. 줄을 바꿔 말하지 말고 스크린샷을 찍으십시오. 기억에서 반복하면 옵션 이름을 잘못 입력하기 쉽습니다.

그 구성이 어떤 엔진을 실행하는지 확인하십시오

Tunnelblick은 OpenVPN 엔진을 감싼 애플리케이션이며, 구성마다 다른 엔진을 실행할 수 있습니다. 애플리케이션 버전을 읽는 대신 세부 정보 창에서 이 구성에 선택된 버전을 확인하고, 그 구성이 결코 사용하지 않는 터미널 openvpn 바이너리의 출력으로 대체하지 마십시오. Tunnelblick의 OpenVPN 버전 안내서가 그 선택이 어떻게 작동하고 선택이 어디에 저장되는지 설명합니다.

이 구분이 중요한 이유는 한 머신에 PATH의 최신 바이너리와 실패한 연결 뒤의 번들된 2.4 엔진이 함께 있을 수 있기 때문입니다. 프로필을 평가하는 것은 후자입니다.

openvpn --version
ls /Applications/Tunnelblick.app/Contents/Resources/openvpn/

이 두 명령은 터미널이 무엇을 실행할지와 설치된 애플리케이션이 어떤 엔진 디렉터리를 갖는지 보여 줍니다. 둘 다 실패한 구성이 무엇을 사용했는지 증명하지 못합니다. 로그가 이미 그것을 알려 주었고, 경로는 Tunnelblick 릴리스마다 다릅니다.

지시어 이름이 바뀐 이유

OpenVPN은 2.5에서 data-ciphers를 협상 목록으로 도입하여 그 릴리스에서 더 이상 사용되지 않게 된 이전 ncp-ciphers 표기를 대체했습니다. 2.4 엔진에는 그런 옵션이 없으므로 알지 못하는 첫 토큰에서 멈춥니다. 단일 cipher 옵션도 목록의 오래된 별칭이 아닙니다. 협상 집합이 아니라 하나의 암호를 지정합니다.

그래서 버전 간 텍스트 치환은 파싱은 되지만 예기치 않게 동작하는 프로필을 만들고, 포럼 게시물의 일부를 복사하는 것이 버전 확인이 아닙니다. 옵션 이름은 대체 처리와 기본값과 함께 옮겨졌고, 지시어 하나의 이름을 바꿔 조립한 파일은 그 엔진을 위해 작성된 파일과 동등하지 않습니다.

증상이 아니라 엔진이나 프로필을 고치십시오

지원되는 배포에서는 운영자의 프로필을 받아들이는 지원되는 Tunnelblick과 엔진의 조합이 지속적인 수정이며, 애플리케이션 설치를 소유한 사람을 통해 마련합니다. 오래된 설치를 한동안 유지해야 한다면 그 엔진과 게이트웨이가 실제로 받아들이는 암호를 위해 작성된 프로필을 요청하십시오.

data-ciphers와 data-ciphers-fallback를 삭제하면 이 특정 파싱 오류가 확실히 사라지며, 바로 그래서 유혹적입니다. 동시에 편집할 의도가 없었던 보안 구성에서 어떤 암호가 협상될지를 조용히 바꿉니다. 원래 프로필을 보관하고 대신 지원되는 설정을 의도적으로 비교하십시오.

다시 시도하고 다음 단계를 읽으십시오

수정 후에는 성공을 가정하지 말고 연결을 다시 시도하고 새 로그를 처음부터 읽으십시오. 이제 파싱되는 프로필도 암호 협상, 인증서 검증, 인증 또는 라우팅에서 여전히 멈출 수 있으며, 각 실패에는 고유한 증거가 있습니다.

협상이 실패하면 두 피어가 지원하는 암호와 각자 허용된 암호를 비교하십시오. 인증이 실패하면 프로필과 엔진이 이제 게이트웨이에 도달할 만큼 잘 작동한 것이며, 이는 기록할 가치가 있는 진전입니다. 그 연쇄를 첫 조용한 로그에서 멈추는 것이 잘못된 이유로 보안 설정이 제거되는 방식입니다.

관련 글