Awesome Open Source
Awesome Open Source

➑️ Discord | Installation Guide | Usage Guide ⬅️

The Modern Port Scanner.
Fast, smart, effective.

AUR version GitHub All Releases Discord Actions

πŸ‹ Docker (Recommended)

πŸ‘©β€πŸ’» Kali / Debian

πŸ—οΈ Arch

πŸ”§ Homebrew

docker pull rustscan/rustscan:2.0.0


Read the install guide yay -S rustscan brew install rustscan

πŸ€” What is this?


The Modern Port Scanner. Find ports quickly (3 seconds at its fastest). Run scripts through our scripting engine (Python, Lua, Shell supported).

✨ Features

  • Scans all 65k ports in 3 seconds.
  • Full scripting engine support. Automatically pipe results into Nmap, or use our scripts (or write your own) to do whatever you want.
  • Adaptive learning. RustScan improves the more you use it. No bloated machine learning here, just basic maths.
  • The usuals you would expect. IPv6, CIDR, file input and more.
  • Automatically pipes ports into Nmap.

‼️ Important Links

Installation Guide Documentation Discord
πŸ“– Installation Guide πŸ“š Documentation 🦜 Discord

πŸ™‹ Table of Contents

πŸ”­ Why RustScan?

RustScan is a modern take on the port scanner. Sleek & fast. All while providing extensive extendability to you.

Not to mention RustScan uses Adaptive Learning to improve itself over time, making it the best port scanner for you.

πŸ§‹ Speed


Speed is guaranteed via RustScan. However, if you want to run a slow scan due to stealth that is possible too.

Firstly, let's talk code.

We have tests that check to see if RustScan is significantly slower than the previous version. If it is, the continuous integration fails and we can't commit code to master unless we make it faster.

HyperFine is used to monitor RustScan's performance over time to answer the question "Are we getting faster? Are we getting slower?".

Every pull request is reviewed by 1 person, but more often than not 2 people review it. We test it manually and make sure the code doesn't affect performance negatively.

Read more here.

βš™οΈ Extensible


RustScan piping results into the custom Python script

RustScan has a new scripting engine which allows anyone to write scripts in most languages. Python, Lua, Shell are all supported.

Want to take your found ports and pipe them into Nmap for further analysis? That's possible. Want to run smb-enum if SMB is found open? Possible.

The possibilities are endless -- and you can write scripts in whatever language you feel comfortable with.

Read more here.

🌊 Adaptive


RustScan automatically fine-tuning itself to match the host OS.

RustScan has a cool set of features called "Adaptive Learning". These features "learn" about the environment you are scanning and how you use RustScan to improve itself over time.

This is an umbrella term we use for any feature that fits this criteria. The list is constantly changing, so check out our wiki for more information.

πŸ‘©β€πŸ¦― Accessible


RustScan is one of the first penetration testing tools that aims to be entirely accessible.

Most penetration testing tools are not accessible, which negatively affects the whole industry.

RustScan has continuous integration testing that aims to make sure it is accessible, and we are constantly working on ways to improve our accessibility and make sure everyone can use RustScan.

πŸ“– Full Installation Guide

You can find our guide here.

🦊 Community Distributions

Here are all of RustScan's community distributions.

If you maintain a community distribution and want it listed here, leave an issue / pull request / Discord message or however you want to let us know.

Packaging status

🀸 Usage

We have 2 usage guides. Basic Usage and Things you may want to do.

We also have documentation about our config file here.

πŸŽͺ Community

Read this to learn how to contribute.

Contributors ✨

All Contributors

Thanks goes to these wonderful people (emoji key):


πŸš‡ ⚠️ πŸ’» 🎨


πŸ’» πŸ›


πŸ€” πŸ’‘

Bernardo Araujo

πŸ’» πŸ› 🎨

Izzy Whistlecroft



πŸ› 🚧


πŸ€” 🎨

Atul Bhosale


Thomas Gotwig


RΓ©mi Gourdon

πŸ“– πŸ’»

Ben (CMNatic)

πŸ’» πŸ“– 🎨

Alessandro Ferrari





πŸ–‹ πŸ› πŸ’»


πŸ“¦ πŸ’» πŸ›

Niklas Mohrin

πŸ“– πŸ’» πŸ›

Artem Polishchuk





πŸ’» πŸ› 🎨

Dmitry Savintsev


Sebastian Andersson


Matt Corbin









πŸ’» ⚠️

This project follows the all-contributors specification. Contributions of any kind welcome!

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Rust (63,395)Β 
Hacktoberfest (36,020)Β 
Docker (33,967)Β 
Security (8,738)Β 
Networking (2,631)Β 
Hacking (2,446)Β 
Security Tools (1,683)Β 
Pentesting (1,357)Β 
Port (404)Β 
Nmap (381)Β 
Scanning (241)Β 
Related Projects
Advertising πŸ“¦Β 9
All Projects
Application Programming Interfaces πŸ“¦Β 120
Applications πŸ“¦Β 181
Artificial Intelligence πŸ“¦Β 72
Blockchain πŸ“¦Β 70
Build Tools πŸ“¦Β 111
Cloud Computing πŸ“¦Β 79
Code Quality πŸ“¦Β 28
Collaboration πŸ“¦Β 30
Command Line Interface πŸ“¦Β 48
Community πŸ“¦Β 81
Companies πŸ“¦Β 60
Compilers πŸ“¦Β 60
Computer Science πŸ“¦Β 74
Configuration Management πŸ“¦Β 39
Content Management πŸ“¦Β 167
Control Flow πŸ“¦Β 197
Data Formats πŸ“¦Β 77
Data Processing πŸ“¦Β 266
Data Storage πŸ“¦Β 132
Economics πŸ“¦Β 60
Frameworks πŸ“¦Β 198
Games πŸ“¦Β 122
Graphics πŸ“¦Β 103
Hardware πŸ“¦Β 148
Integrated Development Environments πŸ“¦Β 47
Learning Resources πŸ“¦Β 147
Legal πŸ“¦Β 28
Libraries πŸ“¦Β 119
Lists Of Projects πŸ“¦Β 21
Machine Learning πŸ“¦Β 336
Mapping πŸ“¦Β 61
Marketing πŸ“¦Β 15
Mathematics πŸ“¦Β 55
Media πŸ“¦Β 228
Messaging πŸ“¦Β 97
Networking πŸ“¦Β 304
Operating Systems πŸ“¦Β 84
Operations πŸ“¦Β 120
Package Managers πŸ“¦Β 52
Programming Languages πŸ“¦Β 229
Runtime Environments πŸ“¦Β 96
Science πŸ“¦Β 42
Security πŸ“¦Β 375
Social Media πŸ“¦Β 26
Software Architecture πŸ“¦Β 70
Software Development πŸ“¦Β 68
Software Performance πŸ“¦Β 57
Software Quality πŸ“¦Β 127
Text Editors πŸ“¦Β 45
Text Processing πŸ“¦Β 131
User Interface πŸ“¦Β 310
User Interface Components πŸ“¦Β 465
Version Control πŸ“¦Β 29
Virtualization πŸ“¦Β 68
Web Browsers πŸ“¦Β 38
Web Servers πŸ“¦Β 25
Web User Interface πŸ“¦Β 194