From cb1061b10a9b62109558288b74f3a341b8d643c5 Mon Sep 17 00:00:00 2001 From: Lobsiinvok Date: Thu, 16 Jun 2016 05:05:30 +0800 Subject: [PATCH] Add FBCTF template (#145) --- templates/fbctf/0/docker-compose.yml | 31 + templates/fbctf/0/rancher-compose.yml | 39 + templates/fbctf/README.md | 30 + templates/fbctf/catalogIcon-fbctf.svg | 1212 +++++++++++++++++++++++++ templates/fbctf/config.yml | 7 + 5 files changed, 1319 insertions(+) create mode 100644 templates/fbctf/0/docker-compose.yml create mode 100644 templates/fbctf/0/rancher-compose.yml create mode 100644 templates/fbctf/README.md create mode 100644 templates/fbctf/catalogIcon-fbctf.svg create mode 100644 templates/fbctf/config.yml diff --git a/templates/fbctf/0/docker-compose.yml b/templates/fbctf/0/docker-compose.yml new file mode 100644 index 0000000..b58adf3 --- /dev/null +++ b/templates/fbctf/0/docker-compose.yml @@ -0,0 +1,31 @@ +fbctf: + image: 'qazbnm456/dockerized_fbctf:multi_containers' + links: + - mysql + - memcached + restart: always + ports: + - ${http_port}:80 + - ${https_port}:443 + environment: + MYSQL_HOST: mysql + MYSQL_PORT: 3306 + MYSQL_DATABASE: ${mysql_database} + MYSQL_USER: ${mysql_user} + MYSQL_PASSWORD: ${mysql_password} + MEMCACHED_PORT: 11211 + SSL_SELF_SIGNED: ${ssl} + +mysql: + image: 'mysql:5.5' + restart: always + environment: + MYSQL_ROOT_PASSWORD: root + MYSQL_USER: ${mysql_user} + MYSQL_PASSWORD: ${mysql_password} + container_name: mysql + +memcached: + image: 'memcached:latest' + restart: always + container_name: memcached diff --git a/templates/fbctf/0/rancher-compose.yml b/templates/fbctf/0/rancher-compose.yml new file mode 100644 index 0000000..13061ec --- /dev/null +++ b/templates/fbctf/0/rancher-compose.yml @@ -0,0 +1,39 @@ +.catalog: + name: "fbctf" + version: "0.1-beta-rancher1" + description: "(Experimental) The Facebook CTF is a platform to host Jeopardy and “King of the Hill” style Capture the Flag competitions." + minimum_rancher_version: v0.46.0 + questions: + - variable: "http_port" + label: "HTTP PORT" + description: "Your HTTP Listen Port" + required: true + type: "string" + default: 80 + - variable: "https_port" + label: "HTTPS PORT" + description: "Your HTTPS Listen Port" + required: false + type: "string" + - variable: "ssl" + label: "SSL" + description: "SSL Termination Option" + required: true + type: "string" + default: true + - variable: "mysql_database" + label: "MYSQL DATABASE" + description: "Your Mysql DATABASE" + required: true + type: "string" + default: fbctf + - variable: "mysql_user" + label: "MYSQL USER" + description: "Your Mysql User" + required: true + type: "string" + - variable: "mysql_password" + label: "MYSQL PASSWORD" + description: "Your Mysql Password" + required: true + type: "string" diff --git a/templates/fbctf/README.md b/templates/fbctf/README.md new file mode 100644 index 0000000..961328d --- /dev/null +++ b/templates/fbctf/README.md @@ -0,0 +1,30 @@ +## What is FBCTF? + +The Facebook CTF is a platform to host Jeopardy and “King of the Hill” style Capture the Flag competitions. + +
+ +## How do I use FBCTF? + +* Organize a competition. This can be with as few as two participants, all the way up to several hundred. The participants can be physically present, active online, or a combination of the two. +* Enter challenges into admin page +* Have participants register as teams + * If running a closed competition: + * In the admin page, generate and export tokens to be shared with approved teams, then point participants towards the registration page + * If running an open competition: + * Point participants towards the registration page +* Enjoy! + +## Instructions + +Once you've started the container, the password for the user admin will be printed in the console. + +You can go to the URL/IP of the server, click the "Login" link at the top right, enter the admin credentials, and you'll be redirected to the admin page. + +## Have more questions? + +Check out the [wiki pages] (https://github.com/facebook/fbctf/wiki) attached to this repo. + +## License + +The original source code is licensed under the Creative Commons Attribution-NonCommercial 4.0 International license found in the LICENSE file in the root directory of this source tree. diff --git a/templates/fbctf/catalogIcon-fbctf.svg b/templates/fbctf/catalogIcon-fbctf.svg new file mode 100644 index 0000000..000690d --- /dev/null +++ b/templates/fbctf/catalogIcon-fbctf.svg @@ -0,0 +1,1212 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/templates/fbctf/config.yml b/templates/fbctf/config.yml new file mode 100644 index 0000000..41ee020 --- /dev/null +++ b/templates/fbctf/config.yml @@ -0,0 +1,7 @@ +name: fbctf +description: | + (Experimental) The Facebook CTF is a platform to host Jeopardy and “King of the Hill” style Capture the Flag competitions. +version: 0.1-beta-rancher1 +category: Applications +maintainer: "Lobsiinvok Su " +license: CC BY-NC 4.0