방화벽 "수신 연결 수락"대화 상자를 제거하는 방법은 무엇입니까?


101

나는 이것을 방화벽이 이미 기억해야 할 정도로 여러 번 받아 들였다.

예를 들어, 디버깅 모드에서 Java 프로그램을 시작할 때 Eclipse에서 가져옵니다 ... 때로는이 대화 상자가 0.5 초와 같이 매우 짧게 표시되고 사라집니다. 방화벽 환경 설정 패널 (고급 설정)에 나열되어 있어도 iTunes (도서관 공유를 활성화 할 때) 및 기타 프로그램 용으로 가져옵니다.


어떤 OSX 버전을 사용하고 있습니까?
Martin Marconcini

@ 마틴 : 스노우 레오파드 태그가 추가되었습니다. 나는 최신의 가장 큰 1.6.4를 사용합니다.
Peter Štibraný

내 행동에는 그 행동이 매우 이상하다. 방화벽은 앱 서명을 확인하여 앱 서명을 인식하므로 앱을 변경하면 더 이상 인식되지 않아 새로운 프롬프트가 표시 될 수 있습니다. Leopard는 10.6보다이 경향이 더 높았지만 여전히 당신이 말하는 것에서 발생합니다.
Martin Marconcini

Snow Leopard의 VirtualBox에서 항상 이것을 보았습니다. 나는 그것에 대한 설명을 듣고 싶습니다.
Ben Wyatt

매우 성가신. Eclipse에서 작업하는 동안 하루에 두 번 팝업이 표시됩니다. 1 초 정도만 나타납니다. 이는 Eclipse Juno SR2를 사용하는 Mountain Lion에서 발생합니다.
Gunnar

답변:


12

여기에는 두 가지 옵션이 있습니다.

  1. 방화벽에서 "모두 허용"을 선택하거나 간단히 끌 수 있습니다.
  2. 목록에서 앱을 제거하고 plist해당 앱 의 파일을 삭제 한 후 실행 한 다음 목록에 추가 할 수 있습니다. plist는 많은 행동을 담당하며 OS로 업그레이드하거나 응용 프로그램이 "링크"를 중단시킬 수 있습니다.

plist파일 정보 ... plist는 응용 프로그램 및 기타 리소스 (일반적으로 OS)가 응용 프로그램을 실행하는 데 필요한 정보를 유지하고 재사용하는 데 사용하는 속성이 포함 된 특수한 종류의 텍스트 파일입니다. plist파일 형식이며 일반적으로 사용자 기본 설정을 저장하는 용도가 많지만 기본적으로 XML 파일입니다. 당신은 전형적으로 모든 캐시,이 있는지 찾아보실 수 있습니다 plist파일이에 해당 응용 프로그램에 대한, /Library/Caches그리고 /System/Library/Caches. 거기에 하나가 ~/Library/Caches/있지만 거기에 몰려 다니면 나쁜 일이 발생할 수 있으므로 그냥 두십시오. 시스템은 다양한 이유로 해당 폴더에 들어가며, 일반적으로 한 달에 한 번 완전히 나열된 처음 두 폴더를 정리합니다.


"해당 앱의 plist 파일 삭제"의 의미를 설명해 주시겠습니까?
Peter Štibraný

2
plist 파일은 무엇보다도 응용 프로그램 설정을 포함합니다 (삭제하는 것이 안전하지만 항상 대비하여 사본을 만드십시오). 모든 Cocoa 앱 파일이“사라질”경우 자체 plist를 다시 작성하도록 프로그래밍해야합니다. 앱의 plist는 일반적으로 / Users / your_user / Library / Preferences에 있습니다. 파일 확장자는 .plist로 끝나고 보통“com.company.appname.plist”와 같은 이름을 갖습니다. 예 : com.adobe.Phosothop.plist 그것들을 데스크탑으로 옮기고 응용 프로그램을 시작하여“재 작성”할 수 있습니다.
Martin Marconcini

~위의 파일 경로에 있는 s가 현재 사용자의 홈 폴더 또는 루트 디렉토리를 참조하고 있습니까?

2
많은 경우에 이것이 실제로 옵션이 아니기 때문에 하향 조정됩니다. user465139의 의견이 더 적절합니다. 여전히 보안 위험이 있지만 모든 앱의 출입을 허용하는 것보다 적습니다.
sholsinger

1
Mavericks + PHPStorm을 위해이 문제를 해결하기 위해 @sholsinger에 동의하고 자체 서명 대안은 쉽고 빠르며 작동합니다. 이 plist 사업은 다소 지저분합니다.
Alex Weber

61
sudo codesign --force --deep --sign - /path/to/application.app

이 방법을 사용하여 인증서를 만들 필요가 없었습니다.

그래도 문제가 해결되지 않으면 --deep슬래시가 있거나없는 상태에서 시도 하십시오.

sudo codesign --force --sign - /path/to/application.app

서명을 적용한 후 앱을 시작하고 마지막으로 들어오는 연결을 수락 한 다음 종료하고 다시 시작하여 요청이 사라 졌는지 확인하십시오.


5
내가했기 때문에 알아? 정확히 당신이 무엇을 요구하는지 잘 모르겠습니다 ... 그 방법을 사용하여 '수신 알림 수락'팝업을 제거 할 수있었습니다 (서명 한 후에는 마지막으로 한 번 물어 보지만 더 이상은 없습니다) ). Spotify 및 AppCode에서 나를 위해 일했습니다. 정보가 필요하면 맨 페이지를 읽으시겠습니까? 편집 : 도움이된다면 Yosemite GM Candidate v3.0을 사용하고 있습니다.
ahall

2
아래 / 경로 해결해야하는 응용 프로그램 / / 응용 프로그램에 : 나는 하나 개의 작은 세부 사항을 개정하고자 한다 포함 .APP /path/to/exampleapp.app : 끝, 즉.

4
의 사용 @IconDaemon -후에는 --sign"임시 서명"이 사용되는 것을 의미한다; 해당 명령을 사용하기 위해 인증서가 필요하지 않습니다. 왜 이것이 터미널 사용과 모순되는지 이해하지 못합니다. man codesign설명을 보려면 실행 하십시오.
Mike

3
간단하고 작동합니다. plist 파일을 삭제하고 싶지 않기 때문에 허용 된 답변보다 훨씬 낫습니다.
저스틴

2
sudo codesign --force --sign - /path/to/application.app나를 위해 일했지만 저자가 제안한 변형은 아닙니다. --deep슬래시가 앞뒤에 문제가 있는지 궁금합니다 .
Jose Alban

61

RedYeti의 링크는 유용하지만 다른 사용자를 위해 몇 번의 클릭 만 저장하면 코드 서명 인증서를 생성하고 코드 (재) 서명에 사용하는 방법을 요약 할 수 있습니다.

  1. 자신의 코드 서명 인증서를 작성하십시오.

    • 키 체인 액세스에서 키 체인 액세스> 인증 지원> 인증서 작성. 그러면 인증 지원이 시작됩니다.

    • 이름 : 기억할 수있는 임의의 문자열을 여기에 입력하십시오. 그렇지 않으면 codesign명령 행에서 사용할 때 인증서 이름을 이스케이프해야합니다 .

    • 신원 유형 : 자체 서명 된 루트

    • 인증 유형 : 코드 서명

    • "기본값 무시"상자를 선택하십시오. 이것은 매우 중요합니다

    • 일련 번호 : 1 (인증서 이름 / 일련 번호 조합이 고유 한 경우 확인)

    • 유효 기간 : 3650 (10 년 제공)

    • 이메일, 이름 등 원하는대로 작성하십시오.

    • 키 페어 정보 : RSA, 2048 비트로 설정됩니다. 실제로 IMHO는 중요하지 않습니다.

    • "키 사용 확장자"에서 "제목 대체 이름 확장자"까지 : 기본값을 채택하십시오.

    • 위치 : 로그인 키 체인.

    • 일단 생성되면, 로그인 키 체인에서 "항상 신뢰"로 설정하십시오. 인증서를 마우스 오른쪽 단추로 클릭하고 "정보 입수"를 선택하고 "신뢰"섹션에서 "이 인증서를 사용할 때"를 "항상 신뢰"로 설정하십시오.

  2. 앱 재 서명 : codesign -f --deep -s <certname> /path/to/app

  3. 작동하는지 확인하십시오. codesign -dvvvv /path/to/app

즐겨!


4
감사합니다! 이것은 나를 위해 방화벽 nag 대화 상자를 제거한 유일한 솔루션입니다. OSX 10.10 Yosemite를 실행 중입니다.
Jason

1
아주 좋아요! 이미 인증서를 보유한 개발자도 쉽게 사용할 수 있습니다.
cwd

1
참고 : 유효 기간을 7300 (일), 즉 20 년으로 최대화했습니다. 나는 약간의 시도로 이것이 입력 상자가 수락하는 최대 숫자 (적어도 OSX Yosemite 10.10.3에서)라는 것을 알았습니다.
DavAlPi

ahall의 대답은 매우 간단하고 OS X 10.10에 나를 위해 일한
N1000

OS X 10.11.1 (15B42)에서 작동하지 않음
suzanshakya

15

앱의 서명 여부와 관련이 있습니다. 서명하지 않으면 기본 설정이 기억되지 않습니다.

앱이 서명되어 있는지 확인하려면 터미널에서 다음을 수행하십시오.

cd path/to/your/app
codesign -vvv Eclipse.app/

Eclipse의 경우 내 서명이 전혀 없다고 말합니다. 나는 그것을 귀찮게하지 않았기 때문에 앱에 서명하는 방법에 대해 더 이상 언급 할 수 없지만 수퍼 유저에 대한이 답변은 그것을 커버합니다.

https://superuser.com/questions/100013/why-does-the-mac-os-x-firewall-dialog-recurringly-pop-up-and-disappear-by-itself#300841


1
ahall의 답변이 해결책을 제공하지만이 답변은 이유를 설명합니다. 합치면 완벽한 답이 될 것입니다.
not2savvy

3

가상 환경을 사용하는 경우 환경에 사용되는 앱에 서명해야합니다. 나는 이것이 명백하다는 것을 알고 있지만 그럼에도 불구하고 말할 필요가 있었다.


고마워하지만 앱 대신에 conda 환경에서 파이썬 버전 (python3.6)에 어떻게 서명합니까?
Agile Bean

1

나는 이것이 오래된 Q & A라는 것에 감사하지만, 같은 문제가 있었을 때 구글에서 처음으로 나왔다. 여기에 도착할 수있는 다른 사람을 위해 무언가를 추가하고 싶었습니다.

여기에 설명 된 공동 디자인 명령을 실행하려면 xcode 명령 줄 도구가 설치되어 있어야합니다. 이것이 없으면 오류 메시지가 나타납니다.

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

이 문제를 해결하려면 다음 도구를 사용하십시오.

xcode-select install

나는 ahall의 게시물에 대해 언급했지만, 그렇게 할 평판은 없습니다.


0

컴퓨터를 시작한 후마다이 대화 상자 (Canon ccpd)가 나타납니다. 방화벽을 열고 보안 및 개인 정보 보호> 잠금을 해제하여 변경을 활성화 한 다음 "스텔스 모드 사용"버튼을 클릭하고 "모든 들어오는 연결 차단"버튼을 클릭하십시오.

그 후에 Canon 프린터 드라이버에서 더 이상 자극적 인 대화 상자가 없습니다.


그러나 응용 프로그램이 작동하지 않습니다 ...
not2savvy

0

Mac 10.13에서 위의 모든 것을 시도했지만 아무것도 작동하지 않았습니다.

결국 나는 방화벽을 끄는 로그인 후크에 연결된 로그 아웃에서 실행 된 스크립트를 작성 했으므로 로그인 할 때 더 이상 권한이 필요하지 않은 다음 delayedlauncher를 사용하여 방화벽을 켜는 다른 스크립트를 실행했습니다.

이제 모두 좋아


다른 질문에 오신 것을 환영합니다! 다른 사용자도 솔루션을 통해 이익을 얻을 수 있도록 스크립트를 공유 할 수 있습니다.
Glorfindel

0

내 상황은 MacOS Mojave 10.14.5에 설치된 두 개의 Eclipse 사본과 관련이 있습니다. 첫 번째 사본은 MacOS 방화벽으로 인증되었습니다. 두 번째 사본은 항상 "수신 연결 수락"프롬프트를 표시합니다. "Accept (허용)"를 선택하면 재부팅 할 때마다 메시지가 계속 표시되며 방화벽 설정이 업데이트되지 않은 것 같습니다.

해결책은 MacOS 시스템 환경 설정-> 보안 및 개인 정보-> 방화벽을 열고 화면의 방화벽 옵션을 잠금 해제하는 것입니다. Eclipse.app "수신 연결 허용"을 선택하고 "-"버튼으로 제거하십시오. 다음에 Eclipse에 "허용"을 선택한 경우 "수신 연결 수락"프롬프트가 마지막이었습니다.


-2

나를위한 해결책은 방화벽을 완전히 비활성화하는 것입니다. 웹 기반 소프트웨어는 기본적으로 컴파일하기 때문에 서명되지 않은 소프트웨어를 만드는 것이 매우 일반적입니다.

CMD + Spacebar로 스포트라이트를 열고 "프라이버시"를 검색하고 "보안 및 프라이버시"를 선택하십시오. 그런 다음 "방화벽"탭으로 전환하여 방화벽을 비활성화하십시오.


2
그들이하는 일을 알지 못하면 대부분의 사람들에게는 꽤 나쁜 해결책 인 것 같습니다. 방화벽은 Mac에서도 타당한 이유가 있습니다.
RedYeti

난 당신이 "방화벽은 성가신-심지어 맥에서"의미라고 생각합니다. 모든 포트가 멀웨어 배포 사이트에서 다운로드 바이러스를 열어 놓은 공항의 개방형 Wi-Fi 네트워크에서 모든 사람이 교육을받는 것은 아닙니다. 내 대답은 올바르게 문제를 해결하고 애플의 바보 같은 팝업 상자를 해결합니다. 네트워크를 사용하는 바이너리를 다시 컴파일 할 때마다 절대로 변명 할 수없는 팝업이 나타납니다. 이 팝업은 애플이 교육을받지 않은 사람들을 키우면서 개발자들을 높고 건조하게 만드는 또 다른 성가신 방법이다.
anon58192932

1
나는 모든 사람이 교육을받지 못했다는 것에 동의한다. 그러나이 주제에 관해 대다수의 사람들이 있습니다. 기본 네트워크 보안 구성 요소를 사용하는 것보다 잘 모르는 사람도 있습니다. 최소한 가능한 결과를 사람들에게 경고하는 것이 좋을 것입니다. 방화벽을 끄는 것만으로 "수정"으로 간주되지는 않지만 매우 해킹적인 해결책입니다.
RedYeti
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.