보안에 철저한 운영체제인 리눅스를 사용하더라도, 네트워크 포트가 취약하게 열려 있는 것은 위험합니다. 이러한 포트는 외부 침입자가 리눅스 PC에 불필요한 접근을 허용하는 경로가 될 수 있습니다. 리눅스 PC 또는 네트워크 내 다른 장치의 포트 상태가 궁금하다면, 개방된 포트를 검색하고 사용하지 않는 포트를 닫는 것이 중요합니다.
포트 스캔 도구: Zenmap
포트 스캐닝에 있어 Zenmap은 매우 효과적인 도구입니다. 이는 리눅스 환경에서 Nmap을 위한 가장 널리 알려진 그래픽 인터페이스입니다. 보안 전문가들 사이에서 널리 사용되며, 대부분의 주요 리눅스 배포판에서 손쉽게 설치할 수 있습니다. 소프트웨어는 일반적으로 각 배포판의 패키지 저장소에서 찾을 수 있습니다.
설치는 터미널에서 해당 OS에 맞는 다음 지침을 따라 진행할 수 있습니다.
우분투(Ubuntu)
우분투 사용자는 캐노니컬(Canonical)에서 제공하는 공식 소프트웨어 소스를 통해 최신 버전의 Zenmap을 쉽게 설치할 수 있습니다. 우분투 소프트웨어 센터에서 ‘Zenmap’을 검색한 후 설치 버튼을 누르거나, 터미널에서 다음 명령어를 사용하십시오:
sudo apt install zenmap
데비안(Debian)
데비안에는 기본 저장소를 통해 Zenmap을 설치할 수 있는 옵션이 있지만, 데비안의 특성상 최신 버전이 아닐 수 있습니다. 만약 최신 Zenmap이 필요하다면 데비안 백포트(Backports)를 확인해보는 것이 좋습니다.
sudo apt install zenmap
아치 리눅스(Arch Linux)
아치 리눅스에는 ‘Zenmap’ 패키지가 공식 저장소에 없으므로, 대신 Nmap 패키지를 설치해야 합니다. Nmap 패키지를 설치하면 Zenmap도 함께 설치됩니다.
sudo pacman -S nmap
페도라(Fedora)
페도라 리눅스에도 ‘Zenmap’ 패키지는 없지만, Zenmap을 사용하려면 ‘nmap-frontend’를 설치해야 합니다. 터미널에서 DNF 패키지 관리자를 사용하여 설치할 수 있습니다.
sudo dnf install -y nmap-frontend
오픈수세(OpenSUSE)
오픈수세에서는 ‘OSS all’ 소프트웨어 저장소를 통해 Zenmap을 제공합니다. 해당 저장소를 활성화한 후 Zypper 패키지 관리자를 사용하여 설치할 수 있습니다.
sudo zypper in zenmap
일반 리눅스 시스템
대부분의 배포판 소프트웨어 소스에서 Zenmap을 찾을 수 있습니다. 설치하려면 ‘zenmap’을 검색하여 설치하거나, 다음 단계를 따라 소스에서 직접 빌드할 수 있습니다.
1단계: wget 명령어를 사용하여 최신 Zenmap 소스 코드를 다운로드합니다.
wget https://nmap.org/dist/nmap-7.70.tar.bz2
2단계: 다운로드한 tar 아카이브에서 소스 코드를 추출합니다.
bzip2 -cd nmap-*.tar.bz2 | tar xvf -
3단계: cd 명령어를 사용하여 소스 코드 폴더로 이동합니다.
cd nmap-*
4단계: 프로그램을 빌드하고 설치합니다.
./configure make sudo make install
Zenmap 활용법
Zenmap은 매우 강력한 도구로, IP 주소만 알고 있다면 어떤 시스템에서든 개방된 포트를 스캔할 수 있습니다. 본 문서는 보안을 목적으로 포트 스캔을 다루며, 악의적인 사용은 절대 삼가야 합니다.
스캔을 시작하려면 Zenmap을 관리자 권한(root)으로 실행해야 합니다. 관리자 권한이 없으면 주요 기능이 작동하지 않을 수 있습니다. 터미널에서 다음 명령어를 사용하여 관리자 권한으로 앱을 실행합니다:
sudo zenmap
Zenmap이 실행되면 포트 스캔을 시작할 수 있습니다. 스캔하려는 대상의 IP 주소를 ‘대상’ 섹션에 입력합니다. IP 주소 입력 후 스캔 종류를 선택해야 합니다. 포트 스캔은 일반적으로 시간이 걸리는 과정이므로, 어떤 포트가 열려있는지 대략적으로 확인하고 싶다면 ‘빠른’ 스캔을 선택합니다.
‘프로필’ 드롭다운 메뉴에서 ‘빠른’ 옵션을 선택하여 빠른 스캔을 실행할 수 있습니다.
프로필 설정을 마친 후 ‘스캔’ 버튼을 클릭합니다.
Zenmap의 빠른 스캔은 매우 빠르게 진행되며, 일반적으로 자주 사용되는 포트를 스캔하여 잠재적인 보안 취약점을 찾아냅니다. ‘Ports/Hosts’ 탭에서 스캔 결과를 확인할 수 있습니다.
보다 심층적인 네트워크 포트 스캔을 원한다면, ‘프로필’ 메뉴에서 ‘강도 스캔’ 옵션을 선택할 수 있습니다.
경로 추적 기능
Zenmap은 단순히 개방된 포트 스캔 이상의 기능도 제공합니다. traceroute 기능을 위한 훌륭한 GUI 도구이기도 합니다. 네트워크 장치에서 실행되는 각 traceroute 경로는 ‘토폴로지’ 탭에 시각적으로 표시됩니다.
traceroute를 실행하려면 ‘대상’ 섹션에 IP 주소 또는 호스트 이름을 입력하고, ‘프로필’ 메뉴에서 ‘Quick traceroute’를 선택한 후 ‘스캔’ 버튼을 클릭합니다.
Zenmap은 traceroute를 실행하며, 완료되면 ‘토폴로지’ 탭을 클릭하여 결과를 확인할 수 있습니다.
‘토폴로지’ 탭에서 Zenmap은 핑 및 추적을 통해 발견된 다양한 네트워크 장치들의 연결망을 시각적으로 보여줍니다. 특정 장치를 강조 표시하고 마우스 오른쪽 버튼을 클릭한 후 ‘Traceroute’를 선택하면, 해당 장치가 거치는 홉(hop)들을 볼 수 있습니다. 또는 네트워크 장치가 연결되는 경로를 나타내는 파란색 선을 따라갈 수도 있습니다.