A modern, beautiful, and user-friendly GUI application for network scanning using Nmap. Perfect for penetration testers, network administrators, and cybersecurity professionals.
- π¨ Beautiful Modern Interface - Dark theme with smooth animations
- π Multiple Scan Types - Quick, Intense, Ping, Port, and Service Detection scans
- π Real-time Progress - Live status updates and progress bars
- πΎ Export Results - Save scan results to files
- π§ Easy to Use - No command-line knowledge required
- π₯οΈ Cross-Platform - Works on Windows, Linux, and macOS
- β‘ Fast & Efficient - Built with Python and CustomTkinter
Modern dark theme interface with intuitive controls
Detailed scan results with color-coded output
- Go to Releases
- Download
Nmap-Scanner-GUI.exe - Run the executable (Windows only)
# Clone the repository
git clone https://github.com/mdnoyon9758/Nmap_Scaner.git
cd Nmap_Scaner
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.py- β Windows 10/11 (64-bit)
- β Nmap installed (Download here)
- β Python 3.8 or higher
- β Nmap installed
- β Required Python packages (see requirements.txt)
# Method 1: Using winget (recommended)
winget install Insecure.Nmap
# Method 2: Using Chocolatey
choco install nmap
# Method 3: Manual download
# Download from https://nmap.org/download.htmlsudo apt update
sudo apt install nmap python3 python3-pip# CentOS/RHEL 7
sudo yum install nmap python3 python3-pip
# CentOS/RHEL 8+ and Fedora
sudo dnf install nmap python3 python3-pipsudo pacman -S nmap python python-pipsudo apk add nmap python3 py3-pipsudo zypper install nmap python3 python3-pip# Using Homebrew (recommended)
brew install nmap python3
# Using MacPorts
sudo port install nmap python39Note: This runs in terminal mode only, no GUI support.
- Install Termux from F-Droid or Google Play Store
- Setup Termux environment:
# Update packages
pkg update && pkg upgrade
# Install required packages
pkg install nmap python git
# Install pip
pkg install python-pip- Clone and setup the scanner:
# Clone the repository
git clone https://github.com/mdnoyon9758/Nmap_Scaner.git
cd Nmap_Scaner
# Install Python dependencies (GUI components will be skipped)
pip install python-nmap- Create a command-line version (see Android Usage section below)
pip install customtkinter==5.2.2 pillow==10.0.1 python-nmap==0.7.1- π Quick Scan - Fast scan of most common ports
- πͺ Intense Scan - Comprehensive scan with OS detection
- π‘ Ping Scan - Host discovery scan
- π Port Scan - Custom port range scanning
- π§ Service Detection - Identify services and versions
- π¨ Modern UI - CustomTkinter-based beautiful interface
- π Theme Support - Dark, Light, and System themes
- π Progress Tracking - Real-time scan progress
- πΎ Export Options - Save results to text files
- π« Scan Control - Start, stop, and clear functions
- π± Responsive Design - Resizable and user-friendly
- Launch the application
- Enter target: IP address (e.g.,
192.168.1.1) or domain (e.g.,example.com) - Select scan type from the dropdown menu
- Specify port range (optional):
1-1000or22,80,443 - Click "π Start Scan"
- View results in the main panel
- Save results using the "πΎ Save Results" button
- Use Quick Scan for fast network discovery
- Use Intense Scan for detailed security assessment
- Use Ping Scan to check if hosts are alive
- Use Service Detection to identify running services
- Combine with port ranges for targeted scanning
# Method 1: Using the executable
Nmap-Scanner-GUI.exe
# Method 2: From source
cd Nmap_Scaner
python main.py- π Portable: The executable runs without installation
- π¨ Native look: Integrates with Windows themes
- π UAC support: Prompts for admin rights when needed
# Install display server (if using headless system)
sudo apt install xvfb # Ubuntu/Debian
# Run with GUI
python3 main.py
# Run headless (X11 forwarding for SSH)
ssh -X user@server
python3 main.py# Direct nmap usage (examples)
nmap -T4 -F 192.168.1.1 # Quick scan
nmap -T4 -A -v 192.168.1.1 # Intense scan
nmap -sn 192.168.1.0/24 # Ping scan
nmap -sS -p 1-1000 192.168.1.1 # Port scan
nmap -sV 192.168.1.1 # Service detection- π Sudo integration: Automatic privilege escalation prompts
- π Performance: Optimized for Linux networking stack
- π§ Customization: Easy to modify for specific distros
# Install using Homebrew
brew install python-tk # For tkinter support
# Run the application
python3 main.py- π Gatekeeper: May need to allow app in Security & Privacy
- π₯οΈ Retina support: GUI scales properly on high-DPI displays
- π¨ Native theming: Adapts to macOS light/dark mode
Note: Android version runs in command-line mode only.
# After installing Termux and cloning the repo
cd Nmap_Scaner
# Create a simple CLI wrapper
cat > nmap_cli.py << 'EOF'
#!/usr/bin/env python3
import sys
from scanner.nmap_wrapper import NmapScanner
from scanner.parser import NmapParser
def main():
if len(sys.argv) < 2:
print("Usage: python3 nmap_cli.py <target> [scan_type] [port_range]")
print("Scan types: 'Quick Scan', 'Intense Scan', 'Ping Scan', 'Port Scan', 'Service Detection'")
return
target = sys.argv[1]
scan_type = sys.argv[2] if len(sys.argv) > 2 else "Quick Scan"
port_range = sys.argv[3] if len(sys.argv) > 3 else None
scanner = NmapScanner()
parser = NmapParser()
print(f"\nπ Starting {scan_type} of {target}...")
results = scanner.scan(target, scan_type, port_range)
formatted_results = parser.format_results(results, target, scan_type)
print(formatted_results)
if __name__ == "__main__":
main()
EOF
# Make it executable
chmod +x nmap_cli.py
# Usage examples
python3 nmap_cli.py 192.168.1.1 # Quick scan
python3 nmap_cli.py 192.168.1.1 "Intense Scan" # Intensive scan
python3 nmap_cli.py 192.168.1.1 "Port Scan" "1-1000" # Port range scan- π± Mobile-optimized: Designed for touch interfaces
- π Battery-aware: Efficient scanning to preserve battery
- πΆ Network-aware: Adapts to mobile vs WiFi connections
- π Root detection: Enhanced features when device is rooted
- β No GUI: Terminal interface only
β οΈ Limited permissions: Some scan types require root- π Battery drain: Intensive scans can drain battery quickly
- π± Screen space: Limited terminal real estate
# Verify nmap installation
nmap --version
# Add to PATH if needed (Linux/macOS)
export PATH=$PATH:/usr/local/bin
# Windows: Add nmap directory to system PATH# Run with sudo for privileged scans
sudo python3 main.py
# Or add user to netdev group (Ubuntu)
sudo usermod -a -G netdev $USER# Install tkinter
sudo apt install python3-tk # Ubuntu/Debian
sudo yum install tkinter # CentOS/RHEL
# Set DISPLAY variable for SSH
export DISPLAY=:0.0# Upgrade pip and reinstall
pip install --upgrade pip
pip install --force-reinstall -r requirements.txt
# Virtual environment (recommended)
python3 -m venv nmap_env
source nmap_env/bin/activate # Linux/macOS
nmap_env\Scripts\activate # Windows
pip install -r requirements.txtImportant: This tool is intended for authorized testing only. Users are responsible for complying with all applicable laws and regulations. Only scan networks and systems you own or have explicit permission to test.
Contributions are welcome! Here's how you can help:
- π΄ Fork the repository
- πΏ Create a feature branch (
git checkout -b feature/AmazingFeature) - π» Commit your changes (
git commit -m 'Add some AmazingFeature') - π€ Push to the branch (
git push origin feature/AmazingFeature) - π Open a Pull Request
Found a bug? Have a feature request? Please create an issue:
- Go to Issues
- Click "New Issue"
- Provide detailed information
- β Initial release
- β Modern GUI interface
- β Multiple scan types
- β Real-time progress tracking
- β Export functionality
- β Cross-platform support
If you find this project helpful:
- β Star the repository
- π΄ Fork and contribute
- π’ Share with others
- π Report issues
This project is licensed under the MIT License - see the LICENSE file for details.
GitHub: @mdnoyon9758
nmap gui network scanner port scanner nmap frontend network security tools penetration testing cybersecurity tools network discovery vulnerability scanner nmap python gui ethical hacking tools network analysis security assessment nmap interface network mapping python network tools
β Star this repository if you find it useful!