Here is a desription of the bits of the YAML config file that can be used to build a ctf contest.
port: 31337
The port on which the client should connect to the flag server.
ssl_key: certs/client-key.pem
This configures the SSL key that the Scoring Client will use to connect to the contestant Flag Server. The value should be a file path.
ssl_cert: certs/client-cert.pem
This configures the SSL certificate that the Scoring Client will use to connect to the contestant Flag Server. The value should be a file path.
ssl_ca: certs/cacert.pem
Specifies the path to the CA certificate that the Scoring Client will use to verify the certificate supplied by the contestant Flag Server.
dbfile: ctf.db
Specifies the path to the sqlite database file in which the scoring system will store its data.
logfile: ctf.logfile
Specifies a file path to which the scoring system should log. Log messages are also displayed at the console.
outputdir: "/home/muncus/svnctf/scoring/teamdata/"
When bootstrapping a contest, the informational packets generated for each team are deposited in this directory, in a directory named after the team.
schemafile: "/home/muncus/svnctf/db/newschema.sql"
When bootstrapping a contest, the database schema is pulled from the file indicated by this configuration item.
include:
This allows the inclusion of arbitrary files in the team informational packets. This item expects a YAML-formatted list.
When bootstrapping a contest, the following items can be used to pre-seed the contest database with team information. Sample bootstrapping data is included below:
teams:
- name: Monkey Fun Time
passwd: secret
hosts:
- name: mft
ipaddr: 10.0.0.243
owner: Monkey Fun Time
comment: Monkey Fun Time's Initial Host.
services:
- name: http
validator: CTF::ServiceTest::HTTP
points: 2
- name: smb
validator: CTF::ServiceTest::Base
points: 3