Manual installation on Linux

System requirements

  • At least 1GB of RAM
  • Distributions with Kernel >= 4.15
  • ARM32 or AMD64 architecture
  • An internet connection

Installing

To install Ctfreak as a service, we will rely on systemd which is present on most distributions.

Copy downloaded ctfreak binary to /usr/local/bin.

Make the file executable:

$ chmod +x /usr/local/bin/ctfreak

Create systemd service file:

$ sudo touch /etc/systemd/system/ctfreak.service
$ sudo chmod 664 /etc/systemd/system/ctfreak.service

Create/Choose a user account to run ctfreak, we’ll call it myuser for now

Edit /etc/systemd/system/ctfreak.service (replace myuser with your real user):

[Unit]
Description=Run CtFreak server
After=network.target

[Service]
Type=simple
Restart=on-failure
ExecStart=/usr/local/bin/ctfreak run
User=myuser
Group=myuser
LimitNOFILE=100000
LimitNOFILESoft=100000

[Install]
WantedBy=multi-user.target

Enable & start Ctfreak:

$ sudo systemctl daemon-reload
$ sudo systemctl enable ctfreak
$ sudo systemctl start ctfreak

Navigate to http://localhost:6700.

Log in with the default user: admin / password: ctfreak.

To complete this installation, we encourage you to configure a reverse proxy.

Uninstall

Execute:

$ sudo systemctl stop ctfreak
$ sudo systemctl disable ctfreak
$ sudo systemctl daemon-reload
$ sudo rm /etc/systemd/system/ctfreak.service

Upgrading

Copy new downloaded ctfreak binary to /usr/local/bin.

Make the file executable:

$ sudo chmod +x /usr/local/bin/ctfreak

Execute:

$ sudo systemctl restart ctfreak

Backup and restore

Configuration file, embedded database, log files are all saved into Ctfreak config folder $HOME/.config/ctfreak.