{"id":21205869,"url":"https://github.com/ram001-code/port-scanner","last_synced_at":"2025-03-14T23:10:50.031Z","repository":{"id":263791001,"uuid":"891400344","full_name":"Ram001-code/port-scanner","owner":"Ram001-code","description":"A Simple Flask and Nmap based Port Scanner","archived":false,"fork":false,"pushed_at":"2024-11-20T10:35:18.000Z","size":45,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T15:31:29.796Z","etag":null,"topics":["cybersecurity","flask","python","python3","security","webapp"],"latest_commit_sha":null,"homepage":"https://ports.ramksites.site/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ram001-code.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-20T09:13:21.000Z","updated_at":"2024-12-19T05:12:58.000Z","dependencies_parsed_at":"2024-11-20T11:34:08.682Z","dependency_job_id":"06259c9f-f389-4fbb-8299-5cdedb5819af","html_url":"https://github.com/Ram001-code/port-scanner","commit_stats":null,"previous_names":["ram001-code/port-scanner"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ram001-code%2Fport-scanner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ram001-code%2Fport-scanner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ram001-code%2Fport-scanner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ram001-code%2Fport-scanner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ram001-code","download_url":"https://codeload.github.com/Ram001-code/port-scanner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243658270,"owners_count":20326467,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cybersecurity","flask","python","python3","security","webapp"],"created_at":"2024-11-20T20:53:20.922Z","updated_at":"2025-03-14T23:10:50.008Z","avatar_url":"https://github.com/Ram001-code.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Port Scanner with Flask and Nmap\n\n## 📖 Overview\n\nThe **Port Scanner** is a web-based tool that leverages **Nmap**, a powerful network scanning utility, to perform port scans on any given domain or IP address. Built with **Flask** and designed with a clean, user-friendly interface, this tool makes it easy to explore network services and open ports. Whether you're a network administrator or a security enthusiast, this tool simplifies port scanning for your needs.\n\n---\n\n## 🌐 Working WEB-APP [Link](https://ports.ramksites.site/)\n\n![Screenshot](./screenshot.png)\n\nYou can view my **Port Scanner** Project Live at this [here](https://ports.ramksites.site/).\n\n---\n\n## 📂 Project Structure\n\n```\nport_scanner/\n├── Dockerfile              # Dockerfile to containerize the application\n├── app.py                  # Flask application for handling requests and executing Nmap scans\n├── requirements.txt        # Python dependencies\n├── static/\n│   └── styles.css          # CSS for the front-end design\n└── templates/\n    └── index.html          # Front-end HTML for the web application\n```\n\n---\n\n## 🚀 Features\n\n1. **Web-Based Interface**:\n   - Input a domain or IP address to scan.\n   - Optionally provide custom Nmap flags for advanced scans.\n2. **Nmap Integration**:\n   - Executes Nmap commands directly from the Flask backend.\n   - Displays real-time scan results in the browser.\n3. **Lightweight and Responsive Design**:\n   - Built with minimal CSS for a sleek and modern interface.\n4. **Containerized**:\n   - Easily deployable using Docker.\n\n---\n\n## 🛠️ Technologies Used\n\n- **Backend**: Flask (Python)\n- **Frontend**: HTML, CSS, JavaScript\n- **Port Scanning**: Nmap\n- **Containerization**: Docker\n\n---\n\n## ⚙️ Prerequisites\n\nBefore running this project, ensure you have the following installed:\n\n- **Python 3.9 or higher**\n- **Docker** (if you want to containerize the app)\n- **Nmap** (if running locally, it’s already included in the Docker image)\n\n---\n\n## 🖥️ Setup Instructions\n\n### Local Setup\n\n1. **Clone the Repository**:\n   ```bash\n   git clone https://github.com/Ram001-code/port_scanner.git\n   cd port_scanner\n   ```\n\n2. **Install Dependencies**:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. **Run the Application**:\n   ```bash\n   python app.py\n   ```\n\n4. **Access the Application**:\n   Open your browser and visit:\n   ```\n   http://127.0.0.1:5000\n   ```\n\n### Docker Setup\n\n1. **Build the Docker Image**:\n   ```bash\n   docker build -t port_scanner .\n   ```\n\n2. **Run the Container**:\n   ```bash\n   docker run -d -p 5000:5000 --name port-scanner-container port_scanner\n   ```\n\n3. **Access the Application**:\n   Open your browser and visit:\n   ```\n   http://\u003cyour-ip\u003e:5000\n   ```\n\n---\n\n## 🧰 Usage\n\n1. **Enter the Target**: Input a domain or IP address in the provided field.\n2. **Customize with Flags (Optional)**:\n   - Example: `-sS -p 1-1000` for a stealth scan on the top 1000 ports.\n3. **Run the Scan**: Click \"Scan\" to initiate the process.\n4. **View Results**: The scan progress and results will appear in the output section.\n\n---\n\n## 📦 Docker Details\n\n- **Port Mapping**: The application listens on port `5000` inside the container. You can map it to any port on your host.\n- **Command to Run**:\n   ```bash\n   docker run -d -p 6666:5000 port_scanner\n   ```\n- **Access the Application**:\n   ```\n   http://\u003chost-ip\u003e:6666\n   ```\n\n\n## 📄 Example Output\n\n1. **Scan Summary**:\n   - Target: `example.com`\n   - Open Ports: `22, 80, 443`\n   - Scan Duration: `26 seconds`\n\n2. **Detailed Results**:\n   - **Port 22**: SSH (OpenSSH 9.2p1)\n   - **Port 80**: HTTP (nginx 1.22.1)\n   - **Port 443**: HTTPS (nginx 1.22.1)\n\n---\n\n## 🛡️ Security Considerations\n\n- Only use this tool for domains and IPs you are authorized to scan.\n- Misuse of Nmap for unauthorized scans is illegal and against ethical guidelines.\n\n---\n\n## 🤝 Contribution\n\nContributions are welcome! If you’d like to add features, fix bugs, or improve documentation:\n\n1. Fork the repository.\n2. Create a new branch for your feature:\n   ```bash\n   git checkout -b feature-name\n   ```\n3. Submit a pull request.\n\n---\n\n## 📧 Contact\n\nFor any inquiries or support, reach out to:\n\n- **Author**: Ram Kansal\n- **Email**: ramkansal9822@gmail.com\n- **GitHub**: [Ram001-code](https://github.com/Ram001-code)\n\n---\n\n## 🌟 Acknowledgments\n\nSpecial thanks to the creators of **Nmap** and the **Flask** framework for providing the tools to build this project.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fram001-code%2Fport-scanner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fram001-code%2Fport-scanner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fram001-code%2Fport-scanner/lists"}