Mac 네트워크 활동 감사하는 방법
20분 안에 끝낼 수 있는 반복 가능한 감사입니다. Mac이 누구와 통신 중인지 파악하고, 어떤 연결을 남길지 결정할 수 있게 해 줍니다.
- Security
- Privacy
- macOS
- Network monitoring
분기에 한 번 Mac 네트워크 활동을 감사하기 위해 20분을 따로 두는데, 유일한 질문은 실제로 실행할 수 있는 프로세스가 있는지, 아니면 nettop과 노트북으로 다시 즉흥적으로 할 것인지입니다. 이 가이드는 반복 가능한 20분 스크립트를 제공합니다. 스캔, 검토, 호스트 이름 확인, 로그 보존, 실행 항목. 매번 같은 방식으로 실행하세요. 지난 분기와 비교하세요. 드리프트를 발견하세요.
이는 오후 전체로 만들지 않고 Mac 네트워크 활동을 감사하는 방법입니다.
왜 신경 쓰는가 — 그리고 무엇을 찾고 있는가
감사의 요점은 편집증이 아닙니다. 드리프트입니다. 모든 macOS 설치는 어느 시점에 인터넷과 통신하기 시작해 절대 멈추지 않은 백그라운드 서비스를 점차 누적합니다. 분기별 감사는 다음을 잡습니다.
- 설치한 줄 잊은 채 여전히 매일 본부에 전화하는 앱.
- 이전보다 더 수다스럽게 시작한 텔레메트리 엔드포인트(업데이트 후).
- 조용히 네트워크 발자국을 업그레이드한 도우미 프로세스(Chrome, Slack, Adobe).
- 인식하지 못하는 호스트 이름으로의 외부 연결.
20분 감사를 일 년에 네 번 하면 거의 모든 것을 잡기에 충분합니다.
시작하기 전에 필요한 것
- 메뉴 바의 네트워크 모니터. ova가 이 가이드가 사용하는 것입니다. 약 3MB, 약 1Hz로 앱별 속도를 샘플링하고, 도우미 프로세스를 상위 아래로 접습니다.
nettop— 내장됨. 설치 없음.- 선택: 호스트 이름 수준 가시성을 위한 Little Snitch 또는 LuLu. 감사는 그것들 없이 작동하지만 함께라면 더 날카롭습니다.
- 발견을 위한 메모 앱이나 평문 텍스트 파일. 감사는 지난번과 비교할 수 있을 때만 유용합니다.
그게 다입니다. 모니터 외의 추가 설치 없음, 커널 확장 없음, 시스템 변경 없음.
Mac 네트워크 활동 감사를 위한 20분 스크립트
여기 일정이 있습니다. 타이밍을 고수하세요 — 30분을 넘기면 분기 습관이 "시간 있을 때 할 무언가"가 되며, 이는 절대를 의미합니다.
0~2분: 기준선 설정
열 필요 없는 앱을 종료하세요. 실행 상태로 두기: 브라우저, Finder, 시스템 서비스. 목표는 "환경" 네트워크 사용을 보는 것입니다 — 적극적으로 사용하지 않을 때 Mac이 무엇을 하는지.
메뉴 바에서 ova를 엽니다. 총 위/아래 속도를 기록합니다. 유휴 Mac에서 푸시 알림 하트비트, iCloud, Spotlight를 위해 몇 KB/s를 예상할 것입니다. 유휴 동안 100KB/s 이상을 지속하는 어떤 것이든 살펴볼 만합니다.
2~7분: nettop 스캔
터미널을 엽니다. 다음을 실행합니다.
nettop -P -m route -L 5 > ~/Desktop/nettop-$(date +%Y%m%d).txt-L 5는 다섯 샘플(기본적으로 초당 하나)을 캡처한 다음 종료합니다. 출력은 데스크탑의 날짜가 적힌 파일로 갑니다 — 나중 보존을 위해 이를 보관할 것입니다.
실행되는 동안 아무것도 하지 마세요. 5초 후 파일을 확인합니다. 다음과 같은 줄을 볼 것입니다.
Slack.21341 in:1.2KB out:823B
Google Chrome.41203 in:48KB out:9KB
WhatsApp.55102 in:512B out:0B인식하지 못하는 어떤 것이든 훑어보세요. 자리매김할 수 없는 이름이 단서입니다.
7~12분: 모니터의 앱별 검토
ova로 전환합니다. 앱별 목록을 엽니다. 지난 한 시간(또는 앱이 기본적으로 보여주는 가장 긴 창)에 걸쳐 총 바이트로 정렬합니다.
상위 10개의 각 앱에 대해 물어보세요.
- 이 앱이 지금 네트워크에 있어야 하는가? 음악 플레이어 — 네. PDF 리더 — 아마 아닙니다.
- 볼륨이 합리적인가? Slack이 30KB/s를 지속하는 것은 정상입니다. Slack이 3MB/s를 지속하는 것은 비정상입니다.
- 이 앱이 의도적으로 설치한 것인가, 아니면 잔재인가? 잔재라면 제거하세요.
도우미 프로세스 접기가 여기서 중요합니다. 그것 없이는 상위 10개가 Google Chrome Helper (Renderer), Slack Helper (GPU), Discord Helper (Plugin) 같은 행으로 채워집니다. 접기와 함께라면, 그것들 각각이 부모 앱 아래로 무너지고 실제로 목록을 읽을 수 있습니다.
12~16분: 호스트 이름 확인
이것이 Little Snitch(또는 LuLu)가 자기 자리를 벌어들이는 곳입니다. 설치되어 있다면, 네트워크 모니터 뷰를 열고 감사 창에 대해 프로세스당 호스트 이름을 보세요.
방화벽급 도구가 없다면, 통합 로그를 따라가서 부분적인 호스트 이름 확인을 여전히 할 수 있습니다.
log show --predicate 'subsystem == "com.apple.network.connectivity"' --style compact --last 20m | head -200출력은 빽빽하지만, connect to나 특정 앱 이름을 검색하면 도메인 힌트가 표면화됩니다.
찾고 있는 것:
- 익숙하지 않은 호스트 이름. 브라우저에서 도메인을 검색하세요. 정당한 텔레메트리 엔드포인트는 보통 문서화된 목적이 있습니다.
- 광고/추적 도메인으로의 빈번한 연결. 흔한 위반자:
*.doubleclick.net,*.scorecardresearch.com,*.googletagmanager.com. 브라우저 확장이 도움이 될 수 있지만(uBlock Origin), 네이티브 앱의 경우 방화벽 규칙이 답입니다. - 예상하지 않는 국가로의 연결. 본질적으로 나쁘지 않습니다 — 많은 CDN이 지역적 — 하지만 기록할 만합니다.
16~18분: 로그 보존
생성한 nettop-YYYYMMDD.txt 파일을 가져와 폴더로 옮기세요, 예: ~/Documents/network-audits/. 선택적으로 ova에서 앱별 요약을 스크린샷으로 내보냅니다.
왜 보존하는가: 첫 감사는 그저 스냅샷입니다. 두 번째는 비교가 됩니다. 세 번째에는 추세를 발견할 수 있습니다 — "Adobe 트래픽이 Q2에 두 배로" 또는 "Spotify가 업데이트 후 200KB/s에서 800KB/s로 갔다".
텍스트 파일과 스크린샷의 평면 폴더로 충분합니다. 멋진 도구는 없습니다.
18~20분: 실행 항목
세 개에서 다섯 개의 구체적인 행동을 적으세요. 실제 감사의 예:
- "MagicScreenshotPro 제거 — 작년에 두 번 사용, 매 실행마다 텔레메트리와 통신."
- "Little Snitch에서 Adobe
*.adobe.io차단 — 라이선스 확인에만 필요, 우아하게 실패할 수 있음." - "
mds_stores의 14MB 외부 급증 조사 — 아마 Spotlight 다시 인덱싱이지만 다음 감사에서 확인." - "Quad9 DNS 프로필 추가."
- "Microsoft Word에서 분석 비활성화."
세 개에서 다섯 개가 적절한 숫자입니다. 그 이상이라면 하지 않을 것입니다. 더 적다면 감사가 어떤 것도 표면화하지 않은 것이며, 보통 신중하게 보지 않았다는 것을 의미합니다.
실시간 뷰로 감사 실행하기
ova는 라이브 앱별 속도와 스크럽 가능한 기록을 보여줍니다 — 로컬, 서명, 약 3MB.
분기 대 분기 추적할 것
지난 감사와 비교할 만한 몇 가지:
| 신호 | 중요한 이유 |
|---|---|
| 유휴 기준선 트래픽 | 위로 드리프트는 새로운 무언가가 수다스럽다는 의미 |
| 일일 바이트로 상위 5개 앱 | 새로운 진입자 또는 성장 드러냄 |
| 다른 호스트 이름 수 | 올라감 = 더 많은 서비스에 접촉 |
| 실행 중인 백그라운드 도우미 | Adobe / Office는 종종 업데이트에 걸쳐 새 것을 추가 |
| 커널/네트워크 확장이 있는 앱 | 각각이 신뢰 위임 |
스프레드시트는 필요 없습니다. 감사당 네 줄의 메모로 충분합니다.
흔한 발견(그리고 무엇을 할지)
"제거한 앱이 여전히 네트워크에 있다"
일부 앱은 LaunchAgent를 남깁니다. 나열하세요.
ls ~/Library/LaunchAgents/ /Library/LaunchAgents/ /Library/LaunchDaemons/제거된 앱과 연결된 것 — com.example.helper.plist — 은 제거할 수 있습니다. 먼저 launchctl unload를 사용한 다음 삭제하세요. 다음 분기에 다시 감사해 사라졌는지 확인하세요.
"활성 상태 보기가 메뉴 바 도구와 다른 숫자를 보여준다"
활성 상태 보기의 네트워크 탭은 프로세스가 시작된 이후 셉니다. 메뉴 바 모니터는 회전 창에서 셉니다. 같은 커널 데이터의 다른 렌즈 — 둘 다 정직하지만, 다른 간격을 측정.
"설명할 수 없는 안정적인 50KB/s가 보인다"
순서대로 의심: iCloud 동기화, 네트워크를 통한 Time Machine, Spotlight 다시 인덱싱, Backblaze/Carbonite 스타일 백업, Dropbox/Drive 동기화, OS 업데이트 다운로드. nettop -P가 PID를 명명할 것입니다. 대부분이 정당합니다. 의심되는 앱을 종료하고 속도가 떨어지는지 지켜보면서 확인하세요.
감사 동안 프라이버시 고려
로그를 저장한다면, 그 로그는 호스트 이름과 타임스탬프를 포함합니다 — 민감한 메타데이터. iCloud Drive 동기화 폴더가 아니라 로컬에 저장하세요. 그것이 편하지 않다면 더더욱. 더 좋게는, 처음부터 끝까지 로컬에 머무는 감사를 실행하세요.
- 디스크에 기록을 보관하는 모니터(클라우드 대시보드 없음).
- 로컬 폴더에 저장된
nettop출력. - 클라우드 동기화된 문서가 아니라 로컬 텍스트 파일의 메모.
ova는 설계상 이 프로필에 맞습니다 — 원격 대시보드도, 계정도, 텔레메트리도 없습니다. 대역폭 기록은 Mac에 있고 다른 어디에도 없습니다.
더 큰 그림: 모니터가 방화벽과 짝을 이루는 이유
감사는 발견을 생성합니다. 일부 발견은 "이것을 차단해야 한다"입니다. 그것이 Little Snitch(또는 LuLu)가 들어오는 곳입니다 — 규칙을 설정하고, 다음 분기에 감사를 다시 실행해 규칙이 유지되었는지 확인하세요.
흔한 패턴:
- 감사가 수다스러운 Adobe Updater를 식별합니다.
- Little Snitch 규칙: Adobe Updater 외부 거부.
- ova는 다음번에 Photoshop을 실행할 때 업데이트 트래픽이 이제 0임을 확인합니다.
모니터와 방화벽은 다른 일을 합니다. 진짜 감사 루프를 위해 둘 다 원합니다.
마무리
Mac 네트워크 활동을 감사하는 20분 분기 습관은 깨끗한 Mac을 수다스러운 것으로 바꾸는 드리프트를 잡습니다. 스크립트는: 유휴 기준선, nettop 스냅샷, 도우미 접기가 있는 앱별 검토, 호스트 이름 확인, 로그 보존, 세 개에서 다섯 개의 실행 항목. 매번 같은 방식으로 실행하세요. 지난번과 비교하세요. 발견에 행동하세요.
날짜를 고르세요 — 분기의 마지막 금요일, 긴 주말의 아침, 무엇이든 고수되는 것. 지금 캘린더에 넣으세요. 감사 습관의 가장 어려운 부분은 시작하는 것입니다. ~/Documents/network-audits/에 한 기록 파일이 있으면, 두 번째를 원하게 될 것입니다.