루트 권한으로 wireshark를 어떻게 실행합니까?


94

Wireshark의 표준 설치는 프로그램에 네트워크 인터페이스에 액세스 할 수있는 권한을 부여하지 않습니다.

로 프로그램을 실행 sudo해야하지만 아이콘에 프로그램 을 추가하는 방법을 모릅니다.


당신은 WireShark에 대해 이야기하고 있습니까? 그렇지 않은 경우 응용 프로그램의 홈 페이지에 연결하여 원하는 내용을 볼 수 있습니다. 감사.
Oli

실제로, 그는 WireShark보다는 Wireshark 에 대해 이야기하고있을 것입니다 . :-)

너무 많은 문제 tcpdump를 일으키는 경우 Linux에서 도구를 사용해 볼 수 wireshark있습니다.
warfreak92

답변:


149

WireShark의 경우 더 좋은 방법이 있습니다. 일반적으로 루트를 필요로 비트는 패킷 수집 응용 프로그램이 특정 사람이없이 사용할 수 있도록 구성 할 수 있습니다 sudo, gksu, etc.

터미널에서 (Alt + F2 대화뿐만 아니라 터미널에 있다는 것이 매우 중요합니다) 다음을 실행하십시오.

sudo dpkg-reconfigure wireshark-common

루트가 아닌 사용자가 스니핑 할 수 있도록 허용 할 것인지 묻습니다. 그것이 우리가 목표로하는 것이므로 선택 Yes하고 반환하십시오.

wireshark-common 재구성

wireshark그룹 이 추가 됩니다. 그 그룹의 모든 사람은 루트가 아닌 냄새를 맡을 수 있습니다. 이것은 누군가를 스니핑하는 것보다 분명히 안전 하지만 암호 검사가 없다는 것을 의미합니다. 기술적으로 wireshark계정으로 로그인 한 컴퓨터에 액세스 할 수있는 사람은 스니핑 할 수 있습니다. 그것이 당신에게 받아 들여지면, 계속하십시오.

그렇지 않으면 다시 실행하고 아니오를 선택하십시오.

그런 다음 해당 그룹에 사용자를 추가하면됩니다. 이것을 실행하십시오 :

sudo adduser $USER wireshark

다시 시작하거나 로그 아웃하십시오. 당신이 돌아 왔을 때 루트에 대한 소란없이 스니핑을 시작할 수 있습니다.


2
재시작 / 로그 아웃 단계를 건너 뛸 수있는 방법이 있습니까?
Taha Jahangir

4
이 솔루션은 14.04에서 작동이 중단되었습니다.
Janghou

9
그리고 예, Wireshark를 루트로 실행 하는 보다 확실히 낫습니다. Wireshark 소스의 README.packaging 파일에 "WIRESHARK는 소스 코드의 2 백만 줄 이상을 포함합니다. 루트로 실행하지 마십시오."

3
@TahaJahangir 재시작 / 로그 아웃이 불편한 newgrp wireshark경우 그룹의 구성원이 된 후 명령을 사용하여 그룹을 임시로 입력 할 수 있습니다 wireshark.
Lekensteyn

3
@TahaJahangir 및 OLI는 : 로그 아웃보다 훨씬 더 편리한 사용하는 것입니다 su - $USER에 설명 된대로 - 슈퍼 사용자 로그 아웃하지 않고 다시로드 리눅스 사용자의 그룹 할당
nealmcb

3

gksu wireshark터미널에서 실행하여 루트 권한으로 Wireshark를 실행할 수도 있습니다 .

이 모드에서 Wireshark를 실행하는 데 보안 문제가 있습니다. 즉, Wireshark를 손상시키는 모든 악용에는 이제 사용자 권한이 아닌 루트 권한이 있습니다. Wireshark는 특성상 (임의의 입력 캡처 및 처리) 특성상 일반적인 데스크톱 응용 프로그램보다 공격에 더 취약하기 때문에 다른 응용 프로그램보다 Wireshark에 더 많은 관심을 기울입니다. SOHO 네트워크에서는 안전 할 수 있지만 계속하기 전에이 문제를 알고 있어야합니다.

인용 :


방금 --enable-setcap-install 플래그로 구성한 후이 작업을 수행 할 수 없습니다.
Smile.Hunter

전체 GUI를 루트로 실행할 때 더 많은 악용 가능한 버그가 있고 GUI 프로그램이 루트로 실행될 때 구성 문제가 발생할 수 있기 때문에 이것은 훨씬 더 위험하고 문제가 많습니다. 훨씬 나은 옵션은 위의 dpkg-reconfigure 솔루션을 참조하십시오.
nealmcb

데스크톱 사용자에게는 이것이 해결 방법이라고 생각합니다. 앱을 sudo 할 때 앱이 생성하는 모든 파일에는 루트 권한이 있으며 홈 디렉토리의 현재 사용자가 파일 권한을 사용할 수 있도록 파일 권한을 계속 변경해야합니다. 일반적으로 서버 및 sysadmin의 경우 sudo가 실제로 가장 좋은 방법입니다.
JulioHM

@JulioHM Wireshark를 루트로 실행하면 서버 및 sysadmins를 포함한 모든 사람에게 위험합니다.
kraxor

1
Wireshark의 doc / README.packaging 파일의 약 40 행에 "WIRESHARK는 소스 코드의 2 백만 개 이상의 라인을 포함합니다. 루트로 실행하지 마십시오." 그 말을 매우 진지하게 받아들이십시오.

3

실제로 WireShark를 루트로 시작할 필요는 없습니다. 공식 페이지를 읽으십시오 . 간단히 말해 :

sudo groupadd wireshark
sudo usermod -a -G wireshark $USER
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod o-rx /usr/bin/dumpcap
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
sudo getcap /usr/bin/dumpcap

그런 다음 로그 아웃했다가 다시 로그인하십시오.

참고 :이 방법은 16.04 LTS, 17.10 및 18.04 LTS에서 테스트되었습니다.


1
변경하지 않으면 인터페이스가로드되지 않습니다. sudo chgrp USER_NAME / usr / bin / dumpcap
amrx

1

이것을 시도하고 터미널을 열고이 명령을 실행할 수 있습니다

# setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap

root가 아닌 사용자로 wireshark를 실행하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.