{ "info": { "author": "Aur\u00e9lien Hugues", "author_email": "me@aurelienhugues.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# port-eye\n\n[![Build Status](https://travis-ci.org/aHugues/port-eye.svg?branch=master)](https://travis-ci.org/aHugues/port-eye)\n[![codecov](https://codecov.io/gh/aHugues/port-eye/branch/master/graph/badge.svg)](https://codecov.io/gh/aHugues/port-eye)\n[![code style](https://img.shields.io/badge/code_style-black-black)](https://github.com/psf/black)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nSimple CLI wrapper around nmap to perform port scanning in Python\n\n**Note:** This software is indended for legitimate use only.\n\n## Features\n\n- Scanning of IPV4, IPV6 hosts and CIDR blocks.\n- Parsing of hosts from input file.\n- Automated generation of reports in HTML format.\n- Parallel scanning for increased performance.\n- Optional Docker-based execution.\n\nExample command:\n```bash\n$ port-eye -t 127.0.0.1 -o report.html\n```\n\nOutput html file example: \n\n![Example output](images/example_output.png)\n\n## Installation\n\nThis application is compatible with Python 2.7 and Python 3.5+.\n\n### Docker installation\n\nIf you have Docker installed, you can pull the image from Docker-Hub:\n\n```bash\ndocker pull ahugues/port-eye\n````\n\nYou can also build the image by cloning the repository and running: \n\n```bash\ndocker build -t port-eye .\n```\n\n\n### Prerequisites\n\nYou need to install `nmap` on your machine for the application to work (unless you choose the Docker install.)\n\nExample on Ubuntu: \n\n```bash\nsudo apt update\nsudo apt install nmap\n```\n\nExample on Arch\n\n```bash\nsudo pacman -S nmap\n``` \n\nExample on Mac with Homebrew\n\n```bash\nbrew install nmap\n```\n\n### Install with pypi\n\nIf you have Python 2.7 or 3.5+ installed, you can install `port-eye` from PyPI:\n\n```bash\npip install port-eye\n```\n\nor locally by clonning the repository and running:\n\n```bash\npip install .\n```\n\n\n## Usage\n\n### General notes\n\n`port-eye` exposes a command line executable named `port-eye`\n\nWhen run without any option, `port-eye` will simply display the help message.\n\nInput hosts can be inputed from the CLI with the option `-t` or `--target`. Inputted hosts \ncan be IPV4 and 6 as well as CIDR blocks. \n\nHosts can be added from an input file in which hosts are put line by line. Example: \n```\n127.0.0.1\n::1\n8.8.8.8\n```\n\nIf using Docker, and assuming you are working in a certain directory, you can run a `port-eye` container using:\n\n```bash\ndocker run -v \"$(pwd)\":/files port-eye \n```\n\nOr if built locally\n\n```bash\ndocker run -v \"$(pwd)\":/files port-eye \n```\n\n### CLI reference\n\n```\nUsage: port-eye [OPTIONS]\n\n Run the main application from arguments provided in the CLI.\n\nOptions:\n -t, --target TEXT Target host (IPV4, IPV6 or CIDR\n -f, --file PATH File containing the hosts to check\n -o, --output PATH Output HTML file into which the results must be stored\n [required]\n -s, --sudo Run nmap as privileged user for more accurate scanning\n -d, --debug Display debug information to the terminal\n -m, --mock Use mock API instead of really running nmap\n -j, --jobs INTEGER Max number of concurrent scans (default 4)\n -h, --help Show this message and exit.\n```\n\n## Contributing\n\nContributions are closed at the moment.\n\n## License\n\nMIT\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/aHugues/port-eye.git", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "port-eye", "package_url": "https://pypi.org/project/port-eye/", "platform": "", "project_url": "https://pypi.org/project/port-eye/", "project_urls": { "Homepage": "https://github.com/aHugues/port-eye.git" }, "release_url": "https://pypi.org/project/port-eye/0.2.1/", "requires_dist": [ "click (>=7)", "python-nmap (>=0.6)", "jinja2 (>=2.10)", "blessings (>=0.7)", "pyfiglet (>=0.8)", "pytest ; extra == 'dev'", "pytest-cov ; extra == 'dev'", "codecov ; extra == 'dev'", "black ; extra == 'dev'", "pylint ; extra == 'dev'", "pytest ; extra == 'test'", "pytest-cov ; extra == 'test'", "codecov ; extra == 'test'" ], "requires_python": ">=2.7", "summary": "Simple CLI port scanner", "version": "0.2.1" }, "last_serial": 5852494, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "fe073fd989f7cf4f6edc716794daec30", "sha256": "d5f879ff04a1123c0c4284996655c7f83e017a11d65b62926df87730fb019c08" }, "downloads": -1, "filename": "port_eye-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "fe073fd989f7cf4f6edc716794daec30", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 14506, "upload_time": "2019-09-08T22:16:43", "url": "https://files.pythonhosted.org/packages/b0/1b/2f0630d292e5f6fb61e80586bdead01ad4720781ce1f934d2157e403626e/port_eye-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5157fb64333f8f3dd45aa71de1923dad", "sha256": "4203892b5e0014eb19cab3a25f198edbe24330e5d8cd6d34abc414015b609824" }, "downloads": -1, "filename": "port-eye-0.0.1.tar.gz", "has_sig": false, "md5_digest": "5157fb64333f8f3dd45aa71de1923dad", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 13083, "upload_time": "2019-09-08T22:16:45", "url": "https://files.pythonhosted.org/packages/1c/c1/2b1adecd5df447b135d6e5ec30b0f9e69d6c56f8c62072a191c056508824/port-eye-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "48996779775e9848f4dee26d37e46540", "sha256": "1b5c9159d54b58e18289ce473996ebcde9391d37107a615a1007e8b22908ebda" }, "downloads": -1, "filename": "port_eye-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "48996779775e9848f4dee26d37e46540", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 14896, "upload_time": "2019-09-15T15:03:40", "url": "https://files.pythonhosted.org/packages/37/43/f8b14dd4682559c0f6da1fd8ffef7d704a9ae2f398ded51751699acf35a5/port_eye-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bedc9a1da1107274c8ca5135b28e683a", "sha256": "c30d9e65968a842ee2da94a560e264bcdfe326b522bcd6b82402dc7825db92f9" }, "downloads": -1, "filename": "port-eye-0.0.2.tar.gz", "has_sig": false, "md5_digest": "bedc9a1da1107274c8ca5135b28e683a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 13582, "upload_time": "2019-09-15T15:03:41", "url": "https://files.pythonhosted.org/packages/ed/83/18b5230be83431b684be13c933092675e14928bd626aebd31cd2c8a72069/port-eye-0.0.2.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "0c28ae314e9e89aade94df7b49ae01d6", "sha256": "e3831a933df6fdc235fe3f3bb21c5b7d821a48a356e306d18c6ebed66452f857" }, "downloads": -1, "filename": "port_eye-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0c28ae314e9e89aade94df7b49ae01d6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 24309, "upload_time": "2019-09-17T22:33:48", "url": "https://files.pythonhosted.org/packages/62/b9/2fd84733b5bad3f87b8611f21b8234ac1b6c13e7c9e4de1902368c581f3a/port_eye-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b9210a93d17ccc8c5eee888f8720afd7", "sha256": "f508511aa17ce7f7dbfb9191851817d5733da2fe91983610c34470d9e42c7b86" }, "downloads": -1, "filename": "port-eye-0.1.0.tar.gz", "has_sig": false, "md5_digest": "b9210a93d17ccc8c5eee888f8720afd7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 18089, "upload_time": "2019-09-17T22:33:49", "url": "https://files.pythonhosted.org/packages/9f/21/5001df3843673b74bb21b00ef3bb86a943f141b27959ff74c0ffa16cd0e5/port-eye-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "0ad7db1f78290f9b8f8cbf297d7f27b8", "sha256": "93de06d0a1fa63581c1810720ad31c793e9bc400c7e02b0c2db80ab68f04a740" }, "downloads": -1, "filename": "port_eye-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0ad7db1f78290f9b8f8cbf297d7f27b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 25697, "upload_time": "2019-09-18T19:43:54", "url": "https://files.pythonhosted.org/packages/23/83/d90aaf1adca34b469ca2a1c615cadce0553f1bcf41fe3abce13edd26826e/port_eye-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ccefa1c389884051113616d99cf3a5f", "sha256": "35a06b56d8543437bee151c55c49e4f4553ab9b690173ca5377ee602d018d139" }, "downloads": -1, "filename": "port-eye-0.2.0.tar.gz", "has_sig": false, "md5_digest": "3ccefa1c389884051113616d99cf3a5f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 19287, "upload_time": "2019-09-18T19:43:56", "url": "https://files.pythonhosted.org/packages/a8/f6/4140aa58cc00337c263a4a137495c78fd060a1e823becb63dac6842a1064/port-eye-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "6de39502b1a7ea84288aa7be6a6c8f6e", "sha256": "41ba441f28f79d71b7f92d0affa21af8f5079dafef77e02977323a63ee27497a" }, "downloads": -1, "filename": "port_eye-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6de39502b1a7ea84288aa7be6a6c8f6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 25974, "upload_time": "2019-09-18T21:00:45", "url": "https://files.pythonhosted.org/packages/fd/ba/050deaf7a1a1f76357c9fc752e0e7e84f6df02207c99291eb912f25ced1a/port_eye-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "95505c0fe5406cbd8cb8359c07bbc7d5", "sha256": "090a6012fbbfeac1306e75b523d7c1c73b2348fdbf03d2d4e46b165238c01ce4" }, "downloads": -1, "filename": "port-eye-0.2.1.tar.gz", "has_sig": false, "md5_digest": "95505c0fe5406cbd8cb8359c07bbc7d5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 19625, "upload_time": "2019-09-18T21:00:47", "url": "https://files.pythonhosted.org/packages/b7/01/830ccb0bbf528bf3a9fb56ca81e4ccf00272149717ce227878de7ffb1b31/port-eye-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6de39502b1a7ea84288aa7be6a6c8f6e", "sha256": "41ba441f28f79d71b7f92d0affa21af8f5079dafef77e02977323a63ee27497a" }, "downloads": -1, "filename": "port_eye-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6de39502b1a7ea84288aa7be6a6c8f6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7", "size": 25974, "upload_time": "2019-09-18T21:00:45", "url": "https://files.pythonhosted.org/packages/fd/ba/050deaf7a1a1f76357c9fc752e0e7e84f6df02207c99291eb912f25ced1a/port_eye-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "95505c0fe5406cbd8cb8359c07bbc7d5", "sha256": "090a6012fbbfeac1306e75b523d7c1c73b2348fdbf03d2d4e46b165238c01ce4" }, "downloads": -1, "filename": "port-eye-0.2.1.tar.gz", "has_sig": false, "md5_digest": "95505c0fe5406cbd8cb8359c07bbc7d5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 19625, "upload_time": "2019-09-18T21:00:47", "url": "https://files.pythonhosted.org/packages/b7/01/830ccb0bbf528bf3a9fb56ca81e4ccf00272149717ce227878de7ffb1b31/port-eye-0.2.1.tar.gz" } ] }