- name: Preparing non-containerized Crowdsec when: not crowdsec.containerized block: - name: Changing the address and port of the Crowdsec server become: true ansible.builtin.lineinfile: path: /etc/crowdsec/config.yaml insertafter: EOF regexp: "^ {4}listen_uri" line: " listen_uri: localhost:{{ crowdsec.port }}" owner: root group: root mode: "644" - name: Changing the address of the Crowdsec Prometheus server become: true ansible.builtin.lineinfile: path: /etc/crowdsec/config.yaml regexp: "^ {2}listen_addr" insertafter: EOF line: " listen_addr: localhost" owner: root group: root mode: "644" - name: Changing target or expected address for credentials of the Crowdsec local API become: true ansible.builtin.lineinfile: path: /etc/crowdsec/local_api_credentials.yaml insertafter: EOF regexp: "^url" line: "url: http://localhost:{{ crowdsec.port }}" owner: root group: root mode: "644" - name: Restarting SystemD service become: true ansible.builtin.systemd_service: name: crowdsec scope: system state: restarted - name: Adding remediation component or bouncer ansible.builtin.command: cmd: "cscli bouncers add {{ item }}" loop: "{{ crowdsec.bouncers }}" - name: Installing Crowdsec collections ansible.builtin.command: cmd: "cscli collections install {{ item }}" loop: "{{ crowdsec.colls }}" - name: Installing Crowdsec parsers ansible.builtin.command: cmd: "cscli parsers install {{ item }}" loop: "{{ crowdsec.parsers }}" - name: Installing Crowdsec scenarios ansible.builtin.command: cmd: "cscli scenarios install {{ item }}" loop: "{{ crowdsec.scenarios }}" - name: Installing Crowdsec postoverflows ansible.builtin.command: cmd: "cscli postoverflows install {{ item }}" loop: "{{ crowdsec.postoverflows }}" - name: Restarting SystemD service become: true ansible.builtin.systemd_service: name: crowdsec scope: system state: restarted