- ---
- - name: 'install openvpn-openssl package'
- opkg:
- name: 'openvpn-openssl'
- state: 'present'
- tags:
- - 'packages'
-
- # Shouldn't be required for TLSv1.3
- #
- #- name: create openvpn dh2048
- # shell: 'openssl dhparam -out /etc/openvpn/dh2048.pem 2048'
- # args:
- # creates: /etc/openvpn/dh2048.pem
- # notify: reload openvpn
-
- - name: 'upload server ca'
- copy:
- content: '{{ openvpn_tls_server_ca }}{{ tls_root_ca }}'
- dest: '/etc/openvpn/server_ca.crt'
- tags:
- - 'tls_int'
-
- - name: 'upload user ca'
- copy:
- content: '{{ openvpn_tls_user_ca }}{{ tls_root_ca }}'
- dest: '/etc/openvpn/user_ca.crt'
- notify: 'reload openvpn'
- tags:
- - 'tls_int'
-
- - name: 'generate and sign server certificate'
- import_role: name='ca_cert'
- vars:
- ca_cert_common_name: '{{ host_fqdn }}'
- ca_cert_proto: 'tls'
- ca_cert_tls_ca_path: '/etc/openvpn/server_ca.crt'
- ca_cert_tls_key_path: '/etc/openvpn/openvpn.key'
- ca_cert_tls_csr_path: '/etc/openvpn/openvpn.csr'
- ca_cert_tls_cert_path: '/etc/openvpn/openvpn.crt'
-
- - name: 'write openvpn configuration'
- template:
- dest: '/etc/config/openvpn'
- src: 'openvpn.j2'
- owner: 'root'
- group: 'root'
- mode: '0400'
- register: config_updated
- notify: 'reload openvpn'
-
- - name: 'commit openvpn configuration to uci'
- shell: 'uci commit openvpn'
- notify: 'reload openvpn'
- when: config_updated.changed
- ...
|