SkillAgentSearch skills...

Nmap

nmap is a PHP wrapper for Nmap.

Install / Use

/learn @willdurand/Nmap
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

nmap

nmap is a PHP wrapper for Nmap, a free security scanner for network exploration.

Build Status

Usage

use Nmap\Nmap;

$hosts = Nmap::create()->scan([ 'williamdurand.fr' ]);

$ports = $hosts->getOpenPorts();

You can specify the ports you want to scan:

$nmap = new Nmap();

$nmap->scan([ 'williamdurand.fr' ], [ 21, 22, 80 ]);

OS detection and Service Info are disabled by default, if you want to enable them, use the enableOsDetection() and/or enableServiceInfo() methods:

$nmap
    ->enableOsDetection()
    ->scan([ 'williamdurand.fr' ]);

$nmap
    ->enableServiceInfo()
    ->scan([ 'williamdurand.fr' ]);

// Fluent interface!
$nmap
    ->enableOsDetection()
    ->enableServiceInfo()
    ->scan([ 'williamdurand.fr' ]);

Turn the verbose mode by using the enableVerbose() method:

$nmap
    ->enableVerbose()
    ->scan([ 'williamdurand.fr' ]);

For some reasons, you might want to disable port scan, that is why nmap provides a disablePortScan() method:

$nmap
    ->disablePortScan()
    ->scan([ 'williamdurand.fr' ]);

You can also disable the reverse DNS resolution with disableReverseDNS():

$nmap
    ->disableReverseDNS()
    ->scan([ 'williamdurand.fr' ]);

You can define the process timeout (default to 60 seconds) with setTimeout():

$nmap
    ->setTimeout(120)
    ->scan([ 'williamdurand.fr' ]);

Installation

The recommended way to install nmap is through Composer:

{
    "require": {
        "willdurand/nmap": "@stable"
    }
}

Or:

composer require willdurand/nmap

Protip: you should browse the willdurand/nmap page to choose a stable version to use, avoid the @stable meta constraint.

License

nmap is released under the MIT License. See the bundled LICENSE file for details.

Related Skills

View on GitHub
GitHub Stars157
CategoryDevelopment
Updated5mo ago
Forks53

Languages

PHP

Security Score

92/100

Audited on Oct 10, 2025

No findings