v2rayN macOS 설치 차단: 확인되지 않은 개발자 및 네트워크 권한 해결 방법

macOS에서 v2rayN 실행 시 표시되는 확인되지 않은 개발자 경고와 네트워크 접근 팝업을 해결하는 방법을 단계별로 안내합니다. 보안 설정 허용, 격리 속성 제거, 시스템 프록시 점검까지 다룹니다.

이 글 한눈에 보기

이 글은 v2rayN 데스크톱 버전을 다운로드했지만 macOS에서 처음 실행할 때 보안 경고로 차단되거나, 실행 후 시스템 프록시를 설정하지 못하는 사용자를 위한 안내입니다. 먼저 앱 출처와 버전 유형을 확인한 뒤 ‘개인정보 보호 및 보안’ 패널에서 허용하세요. 일반적인 허용으로 해결되지 않을 때만 격리 속성을 제거하고, 마지막으로 코어, 수신 포트, 시스템 프록시, 방화벽 네 가지를 확인합니다.

먼저 어느 단계에서 차단됐는지 확인하기

macOS는 브라우저에서 다운로드해 압축을 푼 앱을 처음 열 때 앱 서명, 출처 표시, 격리 속성을 확인합니다. ‘확인되지 않은 개발자’ 경고는 보통 프로그램 코드가 실제로 실행되기 전에 나타나므로, 이때 구독, 노드, 라우팅 또는 DNS를 변경해도 해결되지 않습니다. 먼저 시스템에서 명시적으로 한 번 실행을 허용한 다음 v2rayN을 설정하세요.

v2rayN의 기본 창이 먼저 나타난 뒤 ‘수신 네트워크 연결을 허용하시겠습니까?’라는 팝업이 표시된다면 앱이 실행 검사를 통과했고, 현재 문제는 방화벽 권한에 해당합니다. 이 권한은 주로 로컬 수신 포트와 LAN 공유에 영향을 줍니다. 수신 연결을 거부해도 v2rayN이 원격 서버로 아웃바운드 연결을 만드는 것까지 막는 것은 보통 아니지만, 다른 앱이 v2rayN의 로컬 프록시 포트에 접속하지 못할 수 있습니다.

세 번째 경우는 창과 코어가 모두 실행되고 노드 테스트 결과도 나오지만, 브라우저가 여전히 직접 연결되거나 네트워크에 접속하지 못하는 상황입니다. 이는 대개 설치 차단이 아니라 시스템 프록시가 설정되지 않았거나, 프록시 포트가 현재 수신 포트와 다르거나, 이전 프로세스가 포트를 점유하고 있기 때문입니다. 앱을 계속 삭제하거나 구독을 다시 가져오기보다 세 가지 문제를 나누어 처리하세요.

개인정보 보호 및 보안에서 허용하기

권장

시스템 설정에서 이번 실행에 대한 허용 기록을 남기며, 방금 차단된 v2rayN에만 적용됩니다.

적합한 경우: 처음 ‘확인되지 않은 개발자’ 또는 ‘사용이 차단됨’ 경고가 표시될 때

마우스 오른쪽 버튼으로 열기

Finder의 컨텍스트 메뉴에서 다시 열면, 일부 시스템 버전에서는 ‘열기’ 버튼이 있는 확인 창이 표시됩니다.

적합한 경우: 더블 클릭했을 때 닫기 버튼만 표시되지만 앱 이름과 출처가 확인된 경우

격리 속성 제거

터미널에서 지정한 앱 번들의 다운로드 격리 표시를 제거합니다. 구독, 라우팅 또는 코어 설정은 변경하지 않습니다.

적합한 경우: 일반적인 허용 후에도 반복해서 차단되고 앱 경로가 확인된 경우

개인정보 보호 및 보안에서 처음 실행 허용하기

압축을 푼 v2rayN.app을 먼저 “응용 프로그램” 폴더로 옮긴 다음 처음 실행하는 것이 좋습니다. 다운로드 폴더나 압축 파일 미리보기 창에서 직접 실행하면 경로가 바뀌거나 구성 요소를 기록하지 못하고, 다음 실행 때 다시 검사를 받을 수 있습니다. 이동이 끝나면 앱을 한 번 더블 클릭해 시스템에 해당 차단 기록을 생성하세요.

  1. 차단 기록 만들기

    “응용 프로그램” 폴더에서 v2rayN을 더블 클릭한 뒤 “확인되지 않은 개발자” 또는 시스템 차단 경고가 나타나면 “확인”이나 “취소”를 누르세요. 앱을 바로 삭제하지는 마세요.

  2. 보안 패널 열기

    Apple 메뉴에서 「시스템 설정」→「개인정보 보호 및 보안」으로 이동하고 “보안” 영역까지 아래로 스크롤해 방금 차단된 v2rayN 기록을 찾습니다.

  3. 그래도 열기

    “그래도 열기”를 클릭하고 시스템 안내에 따라 이 Mac의 계정 인증을 완료하세요. 두 번째 확인 창이 나타나면 다시 “열기”를 클릭합니다.

  4. 네트워크 허용

    수신 네트워크 연결을 허용할지 묻는 메시지가 표시되면, 평소 로컬에서만 사용하더라도 우선 허용할 수 있습니다. 이후 「시스템 설정」→「네트워크」→「방화벽」→「옵션」에서 변경할 수 있습니다.

  5. 코어 확인

    v2rayN의 「설정」→「매개변수 설정」→「Core 유형」으로 이동해 선택한 코어가 현재 노드 프로토콜과 일치하는지 확인한 뒤 저장하고 코어를 다시 시작하세요.

macOS 12에서는 메뉴 이름이 조금 다르며, 일반적인 경로는 「시스템 환경설정」→「보안 및 개인정보 보호」→「일반」입니다. “그래도 열기” 버튼이 보이지 않으면 Finder로 돌아가 v2rayN을 다시 더블 클릭해 새 차단 기록을 만든 직후 보안 설정을 여세요. 이 버튼은 최근 시스템에서 차단한 앱에 대해서만 표시됩니다.

Finder에서 Control 키를 누른 채 v2rayN.app을 클릭하고 “열기”를 선택한 다음 확인 창에서 “열기”를 선택할 수도 있습니다. 이 방법은 직접 더블 클릭하는 것과 다르지만, 모든 시스템 버전에서 같은 버튼을 제공하지는 않습니다. 오른쪽 클릭으로 열어도 닫기 옵션만 표시되면 보안 패널로 돌아가 처리하고, 계속해서 실행을 반복하지 마세요.

네트워크 접근 팝업과 시스템 프록시 미적용 문제 해결

v2rayN은 실행 후 로컬 루프백 주소에서 프록시 포트를 수신하고, 브라우저나 시스템 프록시가 요청을 해당 포트로 전달해야 합니다. 점검할 때는 ‘코어가 수신 중인지’와 ‘시스템이 그 수신 포트를 사용하는지’를 구분해야 합니다. 전자는 로컬 프록시 서비스의 존재 여부를, 후자는 앱 트래픽이 실제로 프록시를 통과하는지를 결정합니다.

127.0.0.1
로컬에서만 사용할 때의 수신 주소
10808
일반적인 혼합 프록시 포트 예시
2단계
코어 수신과 시스템 프록시를 따로 확인하기

포트 번호는 현재 v2rayN 화면에 표시된 값을 기준으로 해야 합니다. 10808은 흔한 설정 예시일 뿐, 모든 버전이나 이전 설정에서 고정으로 사용하는 값은 아닙니다. 매개변수 설정에 10809, 10810 또는 다른 포트가 표시된다면 시스템 프록시와 터미널 테스트 명령에도 같은 숫자를 사용해야 합니다.

일반적인 허용으로 해결되지 않을 때 격리 속성 제거

보안 패널에서 이미 “그래도 열기”를 실행했는데도 시작할 때마다 차단 경고가 반복된다면 앱 번들에 다운로드 격리 속성이 남아 있는지 확인할 수 있습니다. 다음 명령은 앱이 이미 “응용 프로그램” 폴더에 있고 이름이 실제로 v2rayN.app인 경우에만 사용하세요. 명령을 입력하기 전에 Finder에서 실제 경로를 확인해야 합니다.

xattr -p com.apple.quarantine "/Applications/v2rayN.app"

명령이 격리 정보를 한 줄 반환하면 해당 속성이 존재한다는 뜻입니다. 해당 속성이 없다는 메시지가 표시되면 삭제 작업을 실행할 필요가 없으며, 앱 번들 권한, 코어 실행 로그 또는 다운로드 파일의 완전성을 확인하세요. 경로가 정확한지 확인한 뒤 이 앱 번들에서 격리 속성을 재귀적으로 제거할 수 있습니다:

xattr -dr com.apple.quarantine "/Applications/v2rayN.app"

실행 후 다시 확인하면 정상적으로는 격리 정보가 반환되지 않습니다:

xattr -p com.apple.quarantine "/Applications/v2rayN.app"

앱을 다른 폴더에 두었다면 “/Applications/v2rayN.app”을 그대로 입력하지 마세요. Finder에서 v2rayN.app을 터미널 창으로 드래그해 실제 경로를 자동으로 입력한 다음 경로 양쪽의 따옴표를 유지하면 됩니다. 경로에 공백이 있으면 따옴표를 삭제해서는 안 됩니다.

터미널에서 포트 수신 여부 확인하기

실행 허용을 완료한 뒤 lsof로 예시 포트 10808을 확인할 수 있습니다. 실제 포트가 다르면 명령의 숫자를 바꾸세요. v2rayN 코어 프로세스가 LISTEN 상태라야 로컬 프록시 진입점이 만들어졌다고 볼 수 있습니다.

lsof -nP -iTCP:10808 -sTCP:LISTEN

출력이 없으면 v2rayN으로 돌아가 「설정」→「매개변수 설정」에서 로컬 수신 포트와 Core 유형을 확인하고 코어 로그를 살펴보세요. 다른 프로그램이 10808을 점유하고 있다면 해당 프로그램을 종료하거나 v2rayN에서 사용하지 않는 포트로 변경하세요. 변경 후에는 시스템 프록시도 함께 업데이트해야 하며, 한쪽만 수정해서는 안 됩니다.

시스템 프록시가 여전히 적용되지 않을 때의 확인 순서

시스템 프록시 문제는 노드가 작동하지 않는 것으로 오해하기 쉽습니다. 먼저 코어가 정상적으로 시작되는지 확인하고, 다음으로 로컬 포트가 존재하는지 확인한 뒤, macOS의 현재 프록시 상태를 읽고 마지막으로 외부 요청을 테스트하는 순서가 적절합니다. 이렇게 하면 문제를 노드, 코어, 로컬 포트 또는 시스템 설정 중 한 단계로 좁힐 수 있습니다.

scutil --proxy

출력에서 HTTPEnable, HTTPSEnable, SOCKSEnable 및 각각의 Proxy, Port 필드를 확인해야 합니다. 활성화된 항목의 값은 보통 1이고, 주소는 127.0.0.1이며 포트는 v2rayN의 현재 설정과 일치해야 합니다. 모든 Enable 필드가 0이면 시스템 프록시가 켜지지 않은 것입니다. 포트가 이전 값으로 남아 있다면 매개변수 변경 후 시스템 프록시에 다시 기록되지 않은 상태입니다.

  1. v2rayN에서 먼저 시스템 프록시 지우기를 실행하고 몇 초 기다린 다음 시스템 프록시 설정을 실행해 이전 설정이 남지 않도록 하세요.
  2. 브라우저를 완전히 종료한 뒤 다시 엽니다. 이미 실행 중인 일부 앱은 이전 연결을 계속 재사용하므로 페이지 새로 고침만으로는 새 프록시를 확인할 수 없습니다.
  3. 현재 활성 네트워크 인터페이스를 확인하세요. 이더넷과 무선 네트워크의 프록시 설정이 다를 수 있으므로 사용 중인 인터페이스로 들어가 점검해야 합니다.
  4. 시스템 프록시를 변경하는 다른 네트워크 도구를 잠시 종료해 여러 프로그램이 프록시 주소와 포트를 번갈아 덮어쓰지 않도록 하세요.
  5. 노드 테스트가 실패하면 구독 업데이트가 정상적으로 완료됐는지, 현재 코어가 노드 프로토콜을 지원하는지, 시스템 날짜와 시간대가 정확한지 확인하세요.

VLESS, VMess, Trojan 또는 Shadowsocks 노드라도 시스템 프록시 계층에서 보이는 것은 로컬 HTTP, SOCKS 또는 혼합 프록시 포트뿐입니다. 원격 프로토콜은 macOS 프록시 패널에 직접 표시되지 않습니다. 프로토콜 파싱과 전송은 v2rayN에서 선택한 코어가 처리하므로 시스템 프록시 주소는 올바르지만 코어 설정에 실패하면 웹 페이지를 열 수 없습니다.

라우팅 모드도 확인 결과에 영향을 줍니다. 규칙 기반 분할을 켜면 일부 대상은 직접 연결되고 일부 대상만 프록시를 통과할 수 있습니다. 설치 및 권한 문제를 점검할 때는 먼저 코어 로그에서 실제로 사용된 아웃바운드를 확인하고 여러 대상을 교차 검증하세요. 단일 페이지의 접속 결과만으로 시스템 프록시가 작동한다고 판단하지 마세요.

자주 묻는 문제와 복구 방법

“그래도 열기”를 눌렀는데 다음에도 다시 표시되는 이유는 무엇인가요?

먼저 “응용 프로그램” 폴더에 있는 동일한 v2rayN.app을 실행했는지 확인하세요. 다운로드 폴더에서 다시 압축을 푼 복사본이 아닐 수 있습니다. 경로가 같다면 xattr로 격리 속성을 확인하고, 속성이 없다면 업데이트할 때마다 새 앱 번들이 덮어써지는지 살펴보세요.

네트워크 접근 팝업에서 거부를 눌렀는데 다시 바꿀 수 있나요?

가능합니다. 「시스템 설정」→「네트워크」→「방화벽」→「옵션」으로 이동해 v2rayN 또는 해당 코어를 찾아 수신 연결 권한을 조정하세요. 변경 후 v2rayN과 코어 프로세스를 종료한 다음 다시 시작합니다.

v2rayN에는 연결됨으로 표시되는데 브라우저가 계속 직접 연결되는 이유는 무엇인가요?

현재 프록시 모드가 시스템 프록시에 기록되었는지 확인한 다음 scutil --proxy를 실행해 주소와 포트를 대조하세요. 브라우저에 별도의 프록시 규칙이 설정되어 있다면 macOS 시스템 설정을 우회하고 있지 않은지도 확인해야 합니다.

로그에 포트가 사용 중이라고 표시되면 어떻게 해야 하나요?

lsof로 포트를 점유한 프로세스를 확인하세요. 이전 코어를 종료하거나 「설정」→「매개변수 설정」에서 다른 로컬 포트로 변경할 수 있습니다. 변경 후 코어를 다시 시작하고 시스템 프록시도 다시 설정해 양쪽 포트를 일치시키세요.

기본 창은 열리지만 코어가 즉시 종료되면 어떻게 해야 하나요?

먼저 「설정」→「매개변수 설정」→「Core 유형」이 노드 프로토콜과 일치하는지 확인하고 로그의 첫 번째 오류를 살펴보세요. 설정 파싱 실패라면 노드 매개변수를 확인하고, 권한 오류라면 앱 폴더와 코어 파일을 확인해야 합니다. 반복해서 실행하는 것만으로는 해결되지 않습니다.

전체 복구 과정은 앱 경로 고정, 개인정보 보호 및 보안에서 한 번 허용, 필요한 네트워크 접근 허용, 코어 수신 확인, 동일한 로컬 포트를 가리키도록 시스템 프록시 설정으로 요약할 수 있습니다. 각 단계를 마칠 때마다 해당 항목을 검증하는 편이 구독, 라우팅, DNS, 포트를 한꺼번에 바꾸는 것보다 실제 원인을 찾기 쉽습니다.

v2rayN 다운로드