From 1aef54b1b9d128e0bf7626647b1f2c43b27cf722 Mon Sep 17 00:00:00 2001 From: "Philip (a-0)" <@ph:a-0.me> Date: Fri, 29 Jul 2022 00:01:23 +0200 Subject: [PATCH] Initial cyberchef scripts --- roles/basic_packages/tasks/main.yml | 7 +++ roles/cyberchef/defaults/main.yml | 2 + roles/cyberchef/handlers/main.yml | 1 + roles/cyberchef/tasks/main.yml | 46 +++++++++++++++++++ .../cyberchef/templates/cyberchef.service.j2 | 11 +++++ setup.yml | 3 +- 6 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 roles/basic_packages/tasks/main.yml create mode 100644 roles/cyberchef/defaults/main.yml create mode 100644 roles/cyberchef/handlers/main.yml create mode 100644 roles/cyberchef/tasks/main.yml create mode 100644 roles/cyberchef/templates/cyberchef.service.j2 diff --git a/roles/basic_packages/tasks/main.yml b/roles/basic_packages/tasks/main.yml new file mode 100644 index 0000000..358c636 --- /dev/null +++ b/roles/basic_packages/tasks/main.yml @@ -0,0 +1,7 @@ +--- +- name: Install generally important packages + apt: + pkg: + - htop + update_cache: yes + \ No newline at end of file diff --git a/roles/cyberchef/defaults/main.yml b/roles/cyberchef/defaults/main.yml new file mode 100644 index 0000000..d2bcd4f --- /dev/null +++ b/roles/cyberchef/defaults/main.yml @@ -0,0 +1,2 @@ +--- +cyberchef_root_dir: /var/services/CyberChef/ \ No newline at end of file diff --git a/roles/cyberchef/handlers/main.yml b/roles/cyberchef/handlers/main.yml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/roles/cyberchef/handlers/main.yml @@ -0,0 +1 @@ +--- diff --git a/roles/cyberchef/tasks/main.yml b/roles/cyberchef/tasks/main.yml new file mode 100644 index 0000000..41c8515 --- /dev/null +++ b/roles/cyberchef/tasks/main.yml @@ -0,0 +1,46 @@ +- name: Install required packages + apt: + pkg: + - firejail + - npm + update_cache: yes + +- name: Create cyberchef user + user: + name: cyberchef + system: yes + +- name: Install grunt-cli + become_user: cyberchef + command: npm install -g grunt-cli + +- name: Clone CyberChef repo + git: + repo: https://github.com/gchq/CyberChef.git + dest: "{{ cyberchef_root_dir }}" + clone: yes + update: yes + +- name: Set permissions on repo + become: yes + file: + path: "{{ cyberchef_root_dir }}" + owner: cyberchef + recurse: yes + +- name: Install CyberChef + become_user: cyberchef + command: "cd {{ root_dir }}; npm install" + +- name: Set systemd service + become: yes + template: + src: cyberchef.service.j2 + dest: /etc/systemd/system/cyberchef.service + +- name: Enable & start cyberchef + service: + name: cyberchef + state: restarted + enabled: yes + daemon_reload: yes \ No newline at end of file diff --git a/roles/cyberchef/templates/cyberchef.service.j2 b/roles/cyberchef/templates/cyberchef.service.j2 new file mode 100644 index 0000000..5af8a5e --- /dev/null +++ b/roles/cyberchef/templates/cyberchef.service.j2 @@ -0,0 +1,11 @@ +[Unit] +Description=CyberChef hosting service + +[Service] +User=cyberchef +WorkingDirectory={{ cyberchef_root_dir }} +ExecStart=firejail grunt dev +SyslogIdentifier=cyberchef + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/setup.yml b/setup.yml index 8ae9a80..c201ba3 100644 --- a/setup.yml +++ b/setup.yml @@ -3,4 +3,5 @@ connection: local roles: - system_settings - - tor_gateway \ No newline at end of file + - tor_gateway + - basic_packages \ No newline at end of file