mirror of
https://github.com/trailofbits/algo
synced 2024-11-04 06:00:21 +00:00
78 lines
2.1 KiB
YAML
78 lines
2.1 KiB
YAML
- name: Configure the server
|
|
hosts: localhost
|
|
tags: algo
|
|
vars_files:
|
|
- config.cfg
|
|
|
|
pre_tasks:
|
|
- name: Local pre-tasks
|
|
include: playbooks/local.yml
|
|
tags: [ 'always' ]
|
|
|
|
- name: Local pre-tasks
|
|
include: playbooks/local_ssh.yml
|
|
become: false
|
|
when: Deployed_By_Algo is defined and Deployed_By_Algo == "Y"
|
|
tags: [ 'local' ]
|
|
|
|
roles:
|
|
- { role: cloud-digitalocean, tags: ['digitalocean'] }
|
|
- { role: cloud-ec2, tags: ['ec2'] }
|
|
- { role: cloud-gce, tags: ['gce'] }
|
|
- { role: cloud-azure, tags: ['azure'] }
|
|
- { role: local, tags: ['local'] }
|
|
|
|
post_tasks:
|
|
- name: Local post-tasks
|
|
include: playbooks/post.yml
|
|
become: false
|
|
tags: [ 'cloud' ]
|
|
|
|
- name: Configure the server and install required software
|
|
hosts: vpn-host
|
|
gather_facts: false
|
|
tags: algo
|
|
become: true
|
|
vars_files:
|
|
- config.cfg
|
|
|
|
pre_tasks:
|
|
- name: Common pre-tasks
|
|
include: playbooks/common.yml
|
|
tags: [ 'digitalocean', 'ec2', 'gce', 'azure', 'local', 'pre' ]
|
|
|
|
- set_fact:
|
|
cloud_deployment: true
|
|
tags: ['cloud']
|
|
|
|
roles:
|
|
- { role: security, tags: [ 'security' ] }
|
|
- { role: proxy, tags: [ 'proxy', 'adblock' ] }
|
|
- { role: dns_adblocking, tags: ['dns', 'adblock' ] }
|
|
- { role: ssh_tunneling, tags: [ 'ssh_tunneling' ] }
|
|
- { role: vpn, tags: [ 'vpn' ] }
|
|
|
|
post_tasks:
|
|
- debug:
|
|
msg:
|
|
- "{{ congrats.common.split('\n') }}"
|
|
- " {{ congrats.p12_pass }}"
|
|
- " {% if Store_CAKEY is defined and Store_CAKEY == 'N' %}{% else %}{{ congrats.ca_key_pass }}{% endif %}"
|
|
- " {% if cloud_deployment is defined %}{{ congrats.ssh_access }}{% endif %}"
|
|
tags: always
|
|
|
|
- name: Save the CA key password
|
|
local_action: >
|
|
shell echo "{{ easyrsa_CA_password }}" > /tmp/ca_password
|
|
become: no
|
|
tags: tests
|
|
|
|
- name: Delete the CA key
|
|
local_action:
|
|
module: file
|
|
path: "configs/{{ IP_subject_alt_name }}/pki/private/cakey.pem"
|
|
state: absent
|
|
become: no
|
|
tags: always
|
|
when: Store_CAKEY is defined and Store_CAKEY == "N"
|