name: "rustscan" command: "rustscan" enabled: true short_description: "超快速端口扫描(Rust);可选 greppable、批量与脚本级别" description: | RustScan 2.x:快速端口发现,可选再调 Nmap 脚本。 **与 `rustscan -h` 对应关系:** - `-a` / `--addresses`:扫描目标列表(逗号分隔或文件) - `-p`:逗号分隔端口;`-r`:端口范围 `start-end`(二选一或与 `-p` 配合以 CLI 为准) - `-g` / `--greppable`:只输出端口,便于 grep/管道 - `--scripts`:**官方默认是 default**(会跑 Nmap);设为 **none** 可只做端口发现、更快 - `-b` batch-size、`-t` timeout、`--scan-order` 等可微调速度与顺序 **使用建议:** - 快速扫端口、不要 Nmap:`scripts` 用 `none`,必要时加 `-g` - 需要服务识别/脚本:用 `default` 或 `custom`,并确保本机有 nmap parameters: # -a, --addresses - name: "target" type: "string" description: | 对应 `-a`:逗号分隔的 CIDR、IP 或主机名;也可为含换行/列表的文件路径。 示例:`192.168.1.1`、`10.0.0.1,10.0.0.2`、`192.168.0.0/24` required: true flag: "-a" format: "flag" # -p, --ports;范围请用 range (-r),勿把 1-1000 填进 ports - name: "ports" type: "string" description: | 要扫描的端口,**仅**逗号分隔列表,对应 `-p`。 示例:`22,80,443`、`80,443,8080`。 若要范围如 `1-1000`,请用参数 **range**(`-r`),不要写在本参数。 required: false flag: "-p" format: "flag" # -r, --range(与 ports 列表二选一或按官方说明组合) - name: "range" type: "string" description: | 端口范围,格式 start-end,对应 `-r`。 示例:`1-1000`、`1-65535`(全端口很慢)。 离散端口如 `22,80,443` 请用 **ports**(`-p`),不要写在本参数。 required: false flag: "-r" format: "flag" # -u, --ulimit - name: "ulimit" type: "int" description: "提升扫描用的 ulimit;依系统 fd 限制调整" required: false flag: "-u" format: "flag" default: 5000 # --scripts:none | default | custom(CLI 默认 default) - name: "scripts" type: "string" description: | 脚本级别;**必须**传字符串,勿传 true/false。 - **none**:不跑 Nmap,仅端口发现(最快) - **default**:与 rustscan 官方默认一致,会调 Nmap - **custom**:自定义脚本,常需配合 additional_args required: false flag: "--scripts" format: "flag" default: "none" options: - "none" - "default" - "custom" # -g, --greppable:仅端口列表,无 Nmap 输出 - name: "greppable" type: "bool" description: "Greppable 模式:只输出端口,适合脚本解析或写入文件" required: false flag: "-g" format: "flag" default: false # -b, --batch-size [default: 4500] - name: "batch_size" type: "int" description: "每批并发端口数;越大越快,受 OS 打开文件数限制。官方默认 4500" required: false flag: "-b" format: "flag" # -t, --timeout ms [default: 1500] - name: "timeout_ms" type: "int" description: "单端口超时(毫秒)。官方默认 1500" required: false flag: "-t" format: "flag" # --scan-order serial | random [default: serial] - name: "scan_order" type: "string" description: "扫描顺序:serial 升序;random 随机" required: false flag: "--scan-order" format: "flag" options: - "serial" - "random" # --top:top 1000 端口 - name: "top_ports" type: "bool" description: "使用内置 top 1000 端口(等价于传 `--top`)" required: false flag: "--top" format: "flag" default: false # -e, --exclude-ports - name: "exclude_ports" type: "string" description: "排除端口,逗号分隔。示例:`80,443`" required: false flag: "-e" format: "flag" # -x, --exclude-addresses - name: "exclude_addresses" type: "string" description: "排除地址,逗号分隔 CIDR/IP/主机" required: false flag: "-x" format: "flag" # --tries [default: 1] - name: "tries" type: "int" description: "判定关闭前的重试次数;0 会被纠正为 1" required: false flag: "--tries" format: "flag" - name: "additional_args" type: "string" description: | 未列在上面的选项可写在这里,空格分隔。 示例:`--no-banner`、`--udp`、`-n`(忽略配置文件)、`-c /path/config.toml`、`--resolver 8.8.8.8` required: false format: "positional"