macOS에서 v2rayN 설치하기: ‘개발자를 확인할 수 없음’ 해결 및 네트워크 권한 설정

macOS에 v2rayN을 설치하는 방법과 ‘개발자를 확인할 수 없음’ 경고를 개인정보 보호 및 보안 설정에서 허용하는 방법, 네트워크 확장 및 시스템 프록시 권한 설정 위치를 안내합니다.

이 글의 핵심

Mac에 v2rayN을 처음 설치하거나, 클라이언트는 실행했지만 프록시 권한 승인이나 네트워크 연결 확인 단계에서 막힌 사용자를 위한 안내입니다. 먼저 프로세서 아키텍처와 설치 위치를 확인하고 Gatekeeper 경고를 처리한 뒤, 코어와 시스템 프록시, TUN을 각각 점검합니다. 앱 실행 허용, 네트워크 설정 변경 권한, 네트워크 확장 승인은 서로 다른 단계이므로 한 번 허용했다고 모든 확인이 끝난 것은 아닙니다.

1. macOS 설치 파일과 프로세서 아키텍처

v2rayN macOS 버전은 크로스 플랫폼 데스크톱 인터페이스를 사용합니다. WPF 버전은 Windows용이므로 Mac에서는 사용할 수 없습니다. 다운로드하기 전에 Apple 메뉴의 ‘이 Mac에 관하여’를 열어 ‘칩’ 또는 ‘프로세서’ 항목을 확인하세요. Apple Silicon은 macOS arm64 패키지를, Intel 프로세서는 macOS x64 패키지를 선택하는 것이 좋습니다. 파일 이름에 v2rayN이 있다고 해서 실행할 수 있는 것은 아닙니다.

  1. Mac 모델 확인

    Apple 메뉴 → ‘이 Mac에 관하여’에서 칩 유형과 macOS 버전을 확인한 다음 다운로드 페이지에 표시된 시스템 요구 사항과 비교하세요. 아키텍처가 맞아도 오래된 시스템에서는 실행 조건을 충족하지 못할 수 있습니다.

  2. 설치 파일 선택

    사이트의 클라이언트 페이지에서 macOS 다운로드 항목을 열고 arm64 또는 x64에 맞는 파일을 선택하세요. 프로세서와 같은 아키텍처의 빌드를 우선 사용하면 첫 설치 문제를 점검할 때 변환 환경으로 인한 변수를 줄일 수 있습니다.

  3. 압축 풀기

    압축 파일은 먼저 전체 압축을 푸세요. 디스크 이미지가 제공된다면 이미지를 마운트합니다. 앱 패키지를 찾으면 ‘응용 프로그램’ 폴더로 옮기세요. 앱 패키지 내부의 실행 파일만 따로 꺼내면 안 됩니다.

  4. 처음 실행

    ‘Finder’ → ‘응용 프로그램’에서 v2rayN을 엽니다. 보안 경고가 표시되면 안내 문구 전체를 먼저 읽고 다음 절차에 따라 처리하세요. 권한을 확인하는 대신 같은 파일을 반복해서 다운로드하지 마세요.

업데이트하기 전에 실행 중인 이전 버전을 종료한 다음 앱을 교체하세요. 기존 설정은 백업해 두고, 첫 업그레이드 때 구독, 라우팅, 코어 설정을 동시에 바꾸지 않는 것이 좋습니다. 문제가 생겨도 앱 업데이트와 설정 변경 중 어느 쪽이 원인인지 구분할 수 있습니다.

2. ‘개발자를 확인할 수 없음’ 경고 허용하기

Gatekeeper는 앱 실행 전에 출처와 서명 상태를 확인합니다. ‘개발자를 확인할 수 없음’ 또는 ‘악성 소프트웨어가 포함되어 있는지 확인할 수 없음’은 실행 전 검사에 관한 경고입니다. 노드 연결 실패나 시스템 프록시 권한 부족을 의미하지는 않습니다. 파일 출처가 신뢰할 만하고 설치 파일이 선택한 플랫폼에 맞는지 확인한 뒤, 해당 앱만 별도로 허용하세요.

  1. 먼저 ‘응용 프로그램’에서 v2rayN을 한 번 열어 시스템에 이번 차단 기록을 남깁니다.
  2. Apple 메뉴 → ‘시스템 설정’ → ‘개인정보 보호 및 보안’으로 이동한 다음 아래로 내려 ‘보안’ 항목을 찾습니다.
  3. 해당 항목에 최근 차단된 v2rayN이 표시되면 앱 이름을 확인하고 ‘그래도 열기’를 클릭하세요. 이 버튼은 차단된 후 일정 시간 동안만 표시될 수 있습니다.
  4. 시스템 안내에 따라 계정 암호 또는 Touch ID로 확인하세요. 이어서 확인 창이 한 번 더 나타나면 ‘열기’를 선택합니다.
  5. 앱으로 돌아가 메인 화면이 표시되는지 확인하세요. 앱 화면이 열린 다음 설정을 가져오면 됩니다. 보안 설정 페이지를 네트워크 설정 페이지로 혼동하지 마세요.

macOS 버전에 따라 경고 문구가 달라질 수 있습니다. 일부 구버전에서는 Finder에서 앱을 Control-클릭한 뒤 ‘열기’를 선택해 확인 절차를 진행할 수 있습니다. 최신 시스템에서는 ‘개인정보 보호 및 보안’에서 승인해야 할 수 있습니다. 현재 시스템에 표시되는 경로를 따르세요.

3. 구독을 가져온 뒤 로컬 리스닝 확인하기

메인 화면이 열린 것은 앱이 실행 검사를 통과했다는 뜻일 뿐입니다. 실제 트래픽 전달은 코어가 담당하고, 구독은 서버 설정을 제공합니다. 먼저 ‘구독 그룹’ → ‘구독 그룹 설정’에서 그룹과 구독 주소를 추가하고 저장한 다음, ‘구독 그룹’으로 돌아가 업데이트를 실행하세요. 메뉴에서 ‘모든 구독 업데이트’를 선택하면 각 그룹의 내용을 가져옵니다. 버전에 따라 프록시를 거쳐 업데이트하는 옵션과 거치지 않는 옵션이 다를 수 있습니다. 아직 연결되지 않았다면 처음에는 프록시를 사용하지 않는 방식으로 업데이트하세요.

설정 목록이 표시되면 항목 하나를 선택해 활성 서버로 지정한 다음 로그에서 코어가 정상적으로 시작되었는지 확인하세요. VMess와 VLESS는 프로토콜 종류이지 시스템 권한 이름이 아닙니다. 구독에 포함된 전송 방식, TLS, 서버 이름 등의 매개변수는 그대로 유지하세요. macOS 권한을 받기 위해 VLESS를 VMess로 바꾸거나 TLS를 함부로 끌 필요는 없습니다.

2가지
주요 아키텍처 옵션: arm64 및 x64
10808
이 글에서 사용하는 로컬 프록시 포트 예시이며 필수 값은 아닙니다

아래 명령에서는 로컬 주소 127.0.0.1과 포트 10808을 예로 듭니다. 실제 값은 ‘설정’ → ‘매개변수 설정’에서 로컬 리스닝 포트를 확인하고 시작 로그와 대조하세요. 현재 버전이 혼합 포트를 제공하면 하나의 리스너에서 HTTP와 SOCKS를 모두 사용할 수 있습니다. 화면에 두 종류의 포트가 따로 표시된다면 용도에 맞는 값을 각각 입력해야 하며, 같은 숫자를 그대로 복사하면 안 됩니다.

4. 시스템 프록시 권한 및 네트워크 설정 확인

일반적인 웹 탐색에는 먼저 시스템 프록시 모드를 사용할 수 있습니다. v2rayN 메인 화면에서 ‘시스템 프록시’를 찾아 ‘시스템 프록시 자동 설정’을 선택하세요. macOS에서 네트워크 설정 변경이나 보조 도구 설치를 확인하는 창이 표시되면 요청한 앱과 작업 내용, 출처를 확인한 후 필요한 경우에만 허용하세요. 메인 화면을 실행하기 위해 클라이언트를 계속 관리자 권한으로 실행할 필요는 없습니다.

클라이언트 확인 항목

시스템 프록시
시스템 프록시 자동 설정
활성 설정
활성 서버로 지정된 항목
로컬 주소
127.0.0.1
예시 포트
10808, 실제 리스닝 포트 기준

코어가 시작되었는지 먼저 확인하고 시스템 프록시를 설정하세요. 두 상태는 각각 따로 확인해야 합니다.

macOS 확인 항목

설정 경로
시스템 설정 → 네트워크
현재 네트워크 서비스
현재 연결에 사용 중인 Wi-Fi 또는 이더넷
상세 화면
세부사항 → 프록시
확인할 내용
활성화된 프록시의 주소와 포트

네트워크 서비스를 전환했다면 다시 확인하세요. 사용하지 않는 다른 인터페이스의 프록시 값만 확인해서는 안 됩니다.

macOS의 ‘프록시’ 화면에서 실제로 적용된 설정을 확인하세요. 웹 프록시는 HTTP에, 보안 웹 프록시는 HTTPS 요청에 사용하는 프록시 항목입니다. 이름에 ‘보안’이 들어가도 로컬 프록시 리스너 자체가 TLS를 사용한다는 뜻은 아닙니다. 클라이언트가 관리하는 항목만 확인하고, 모든 체크 상자를 채우려고 자동 프록시 검색, 자동 프록시 구성, 수동 프록시 여러 개를 동시에 활성화하지 마세요.

시스템 프록시는 앱이 참조하도록 제공되는 시스템 설정이지, 모든 트래픽을 가로채는 기능은 아닙니다. 일부 명령줄 프로그램이나 독립 프록시 설정을 사용하는 브라우저, 자체 연결을 만드는 앱은 이 설정을 사용하지 않을 수 있습니다. 브라우저에서는 페이지가 열리는데 터미널 명령은 실패한다면 해당 프로그램의 프록시 사용 방법부터 확인하세요. 곧바로 권한 설정이 해제되었다고 판단하지 마세요.

5. TUN, 네트워크 확장, 일반 프록시의 차이

TUN은 가상 네트워크 인터페이스를 통해 트래픽을 처리하며 인터페이스, 라우팅, DNS 설정이 필요합니다. 일반 로컬 프록시보다 더 높은 권한이 필요한 경우가 많습니다. 처음 설치할 때 반드시 켜야 하는 기능은 아닙니다. 먼저 시스템 프록시로 설정이 제대로 작동하는지 확인한 뒤, 앱 전체에 적용해야 할 필요가 있을 때 TUN을 사용할지 결정하세요. 여러 변수가 동시에 바뀌어 원인을 잘못 판단하는 일을 줄일 수 있습니다.

사용 순서: 일반 프록시를 먼저 확인한 뒤 TUN 검토

시스템 프록시 모드
  • 시스템 프록시를 사용하는 브라우저와 데스크톱 앱에 적합합니다.
  • 로컬 리스너, 활성 서버, 네트워크 서비스에 설정된 프록시 값을 확인하세요.
  • 일반 프록시를 켰다고 해서 네트워크 확장 승인 항목이 반드시 표시되는 것은 아닙니다.
TUN 모드
  • 가상 인터페이스를 통해 트래픽을 처리해야 하고 현재 빌드가 이를 지원하는 경우에 적합합니다.
  • 클라이언트 안내에 따라 필요한 보조 구성 요소를 설치하거나 승인하세요.
  • 활성화한 뒤 인터페이스, 라우팅, DNS와 다른 터널 소프트웨어의 충돌 여부도 확인하세요.

TUN 구현 방식은 클라이언트 버전과 구성 요소에 따라 다릅니다. 가상 인터페이스, 보조 서비스, 네트워크 확장은 서로 같은 것이 아닙니다.

구성 요소가 실제로 네트워크 확장 권한을 요청한 경우에만 해당 승인 항목을 찾으면 됩니다. macOS 15 설정을 예로 들면 ‘시스템 설정’ → ‘일반’ → ‘로그인 항목 및 확장 프로그램’ → ‘네트워크 확장’을 확인하세요. 다른 시스템 버전에서는 ‘개인정보 보호 및 보안’에 허용 안내가 표시될 수 있습니다. 목록에 관련 항목이 없더라도 일반 시스템 프록시 설치가 실패한 것은 아닙니다. 존재하지 않는 확장 프로그램을 설치할 필요도 없습니다.

6. 시스템 상태와 명시적 프록시로 문제 찾기

문제를 진단할 때는 ‘프록시 설정이 적용됨’과 ‘요청이 프록시를 통해 전달됨’을 따로 확인하세요. 먼저 시스템 상태를 살펴보고 포트를 확인한 뒤, 명령에서 로컬 프록시를 명시적으로 지정합니다. 아래 명령은 ‘터미널’에서 실행하세요. 예시는 상태를 읽거나 일반 웹 요청을 보내기만 하며 시스템 보안 정책을 변경하지 않습니다.

# 현재 시스템 프록시 상태 확인
scutil --proxy

# 예시 포트에서 TCP 연결을 수신 중인지 확인
lsof -nP -iTCP:10808 -sTCP:LISTEN

# HTTP 프록시를 명시적으로 사용; 해당 포트가 HTTP를 지원하는 경우에만 사용
curl --proxy http://127.0.0.1:10808 --connect-timeout 10 -I https://example.com

# SOCKS 프록시를 명시적으로 사용하고 대상 도메인 이름 해석을 프록시 측에 맡김
curl --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 -I https://example.com

scutil --proxy의 HTTPEnable, HTTPProxy, HTTPPort 등의 필드는 실제 시스템 상태를 확인하는 데 사용됩니다. SOCKS를 사용하는 경우에는 해당 SOCKS 필드를 확인하세요. lsof에서 결과가 나오지 않으면 권한을 계속 다시 허용하기보다 포트 입력이 틀렸는지, 코어가 종료되었는지 먼저 확인하세요.

증상우선 확인할 항목다음 단계
로컬 연결이 거부됨리스닝 포트, 코어 프로세스포트와 시작 로그를 확인하고 먼저 리스닝을 복구하세요.
명시적 프록시는 성공하지만 브라우저는 실패함시스템 프록시, 브라우저 자체 설정현재 네트워크 서비스의 프록시를 확인하고 브라우저 설정이 이를 덮어쓰는지 살펴보세요.
로컬 리스닝은 정상이지만 요청 시간이 초과됨노드, DNS, 라우팅, 상위 서버 연결클라이언트 로그를 확인하면서 정상 작동이 확인된 다른 설정으로 테스트하세요.
TUN 모드에서만 실패함보조 서비스, 인터페이스, DNS, 라우팅 충돌TUN을 끄고 시스템 프록시로 돌아간 뒤 기본 연결이 여전히 작동하는지 확인하세요.

대상 사이트에서 HTTP 응답을 받았다는 것은 해당 요청에 응답이 왔다는 뜻일 뿐, 모든 도메인이 프록시를 통과한다는 증거는 아닙니다. 라우팅 규칙에 따라 일부 요청은 직접 연결될 수 있습니다. 테스트할 때 코어 로그에서 어떤 아웃바운드가 선택되었는지 확인하고, ‘전역 시스템 프록시’와 ‘모든 대상이 프록시 아웃바운드를 사용함’을 같은 의미로 보지 마세요.

7. 설치 및 권한 관련 자주 묻는 질문

‘그래도 열기’가 보이지 않으면 어떻게 하나요?

‘응용 프로그램’에서 앱을 다시 한 번 연 다음 ‘시스템 설정’ → ‘개인정보 보호 및 보안’으로 이동해 최신 차단 기록을 확인하세요. 실제 경고 원인이 시스템 버전 비호환, 앱 손상, 악성 소프트웨어라면 해당 원인에 맞게 처리해야 합니다. 관리되는 기기라면 정책을 우회하려 하지 말고 관리자에게 문의하세요.

실행을 허용했는데도 암호를 입력하라는 메시지가 표시되는 이유는 무엇인가요?

앱 실행 허용과 네트워크 설정 변경은 서로 다른 작업입니다. 방금 실행한 시스템 프록시 설정이나 보조 서비스 작업으로 인해 창이 표시되었는지 확인하고 이름과 용도를 살펴본 다음 허용하세요. 매번 반복해서 표시된다면 확인을 무작정 누르지 말고 설치 위치, 이전 프로세스, 보조 구성 요소 상태부터 점검하세요.

v2rayN을 종료한 뒤 브라우저에서 오히려 웹 페이지가 열리지 않아요.

클라이언트를 다시 열고 ‘시스템 프록시’에서 ‘시스템 프록시 지우기’를 실행한 뒤 종료하세요. 앱을 열 수 없다면 ‘시스템 설정’ → ‘네트워크’ → 현재 네트워크 서비스 → ‘세부사항’ → ‘프록시’로 이동해 남아 있는 로컬 프록시 설정을 제거하세요. 회사에서 사용하는 프록시나 자동 구성 주소는 기록해 두고 함께 삭제하지 않도록 주의하세요.

업데이트할 때마다 어디를 다시 확인해야 하나요?

먼저 같은 아키텍처의 앱으로 교체했는지 확인하고, 실행 후 활성 설정과 리스닝 포트, 시스템 프록시 상태를 점검하세요. 시스템이 실행을 다시 차단하거나 권한을 요청할 때만 해당 안내에 따라 처리하면 됩니다. 메인 프로그램을 업데이트했다고 구독을 다시 만들어야 하는 것은 아니며 모든 네트워크 권한을 다시 활성화할 필요도 없습니다.

설정 후에는 앱 실행, 구독 로드, 코어 리스닝, 시스템 프록시의 올바른 포트 지정, 대상 요청 응답 순으로 확인하세요. 필요할 때만 TUN을 활성화하고 추가된 권한과 네트워크 변경 사항을 별도로 검증합니다. 이 순서를 따르면 설치, 권한, 노드 문제를 각각 명확한 점검 단계에서 파악할 수 있습니다.

v2rayN 다운로드