Scheduler

To start a Scheduler run the scnr_scheduler CLI executable.

To see all available options run:

bin/scnr_scheduler -h

The main role of the Scheduler is to:

  1. Queue scans based on their assigned priority.
  2. Run them if there is an available slot.
  3. Monitor their progress.
  4. Grab and store reports once scans complete.

Default

By default, scans will run on the same machine as the Scheduler.

With Agent

When a Agent has been provided, spawn calls are going to be issued in order to acquire Instances to run the scans.

Grid

In the case where the given Agent is a Grid member, scans will be load-balanced across the Grid according the the configured strategy.

Examples

Server

In one terminal run:

bin/scnr_scheduler

Client

Pushing

In another terminal run:

bin/scnr_scheduler_push --scheduler-url=localhost:7331 http://testhtml5.vulnweb.com

Then you should see something like:

 [~] Pushed scan with ID: 5fed6c50f3699bacb841cc468cc97094

Monitoring

To see what the Scheduler is doing run:

bin/scnr_scheduler_list localhost:7331

Then you should see something like:

 [~] Queued [0]


 [*] Running [1]

[1] 5fed6c50f3699bacb841cc468cc97094: 127.0.0.1:3390/070116f5e2c0acaa0a6432acdcc7230a

 [+] Completed [0]


 [-] Failed [0]

If you run the same command after a while and the scan has completed:

 [~] Queued [0]


 [*] Running [0]


 [+] Completed [1]

[1] 5fed6c50f3699bacb841cc468cc97094: /home/username/.cuboid/reports/5fed6c50f3699bacb841cc468cc97094.crf

 [-] Failed [0]