프로젝트 의 Python 스킬 트리

웹 기반 TCP 포트 스캐너 구축

초급

이 프로젝트는 호스트 및 포트 범위 입력을 받아 Nmap 으로 스캔을 수행하고, Python 스크립팅과 HTML 템플릿을 통해 웹페이지에 결과를 표시하는 도구를 구축하는 자세한 단계를 제공합니다.

cybersecuritynmaplinux

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

이전 프로젝트에서는 스레딩과 소켓을 활용하여 TCP 포트를 스캔하는 Python 포트 스캐너를 개발했습니다. 기능적으로는 충분했지만, 외부 패키지를 활용하면 더 효율적으로 개선할 수 있는 여지가 있습니다.

이번 프로젝트에서는 python-nmap 라이브러리를 통합하여 더욱 강력한 스캐닝 기능을 제공하도록 포트 스캐너를 고도화할 것입니다. 또한, Flask 를 사용하여 스캐너를 위한 사용자 친화적인 인터페이스를 갖춘 웹 애플리케이션을 구축해 보겠습니다. 이 단계별 프로젝트는 여러분이 기존 지식을 바탕으로 차근차근 따라 하며 완성할 수 있도록 안내합니다.

👀 미리보기

🎯 학습 과제

이 프로젝트를 통해 다음 내용을 학습하게 됩니다:

  • Flask 프로젝트 설정 및 구조 구성 방법
  • Flask-WTF 를 사용하여 웹 폼을 안전하게 생성하고 처리하는 방법
  • 웹 페이지 요청 및 제출을 처리하기 위한 Flask 라우트 구현 방법
  • Python 에서 Nmap 라이브러리를 활용하여 포트 스캔을 수행하는 방법
  • Flask 와 HTML 템플릿을 사용하여 스캔 결과를 웹 페이지에 동적으로 표시하는 방법
  • Tailwind CSS 를 적용하여 프론트엔드 디자인을 개선하는 방법

🏆 최종 목표

이 프로젝트를 마치면 다음과 같은 역량을 갖추게 됩니다:

  • 라우팅, 템플릿 렌더링, 폼 처리를 포함한 Flask 웹 개발의 기초 이해
  • Python 스크립트와 웹 인터페이스를 통합하는 실무 경험
  • 네트워크 스캐닝 작업을 위한 Nmap 라이브러리 활용 능력
  • 웹 애플리케이션에서 폼 생성 및 유효성 검사를 위한 Flask-WTF 사용법 숙지
  • Tailwind CSS 를 활용한 웹 페이지 스타일링 및 사용자 인터페이스 디자인 개선 능력
  • 백엔드 Python 스크립트와 상호작용하여 네트워크 스캔을 수행하는 기능적인 웹 애플리케이션 제작

강사

labby
Labby
Labby is the LabEx teacher.