97 lines
3.6 KiB
YAML
97 lines
3.6 KiB
YAML
- name: load media private key into var
|
|
set_fact:
|
|
vpn_media_server_key: '{{ lookup("file", "files/wireguard/media/server.key" ) }}'
|
|
|
|
- name: load media public key into var
|
|
set_fact:
|
|
vpn_media_server_public_key: '{{ lookup("file", "files/wireguard/media/server.pub" ) }}'
|
|
|
|
# this should eventually be replaced with using the
|
|
# PrivateKeyFile/PresharedKeyFile options
|
|
- name: load preshared media keys into variables
|
|
set_fact:
|
|
vpn_media_peers: '{{ vpn_media_peers | combine({item.key: item.value|combine({"preshared_key": lookup("file", item.value.preshared_key_source_path )})})}}'
|
|
with_dict: '{{ vpn_media_peers }}'
|
|
|
|
- name: load external media private_keys
|
|
set_fact:
|
|
vpn_media_peers: '{{ vpn_media_peers | combine({item.key: item.value|combine({"private_key": lookup("file", item.value.private_key_source_path )})})}}'
|
|
with_dict: '{{ vpn_media_peers }}'
|
|
when: item.key in ['mobile_peer_1', 'mobile_peer_2', 'tv']
|
|
|
|
- name: copy wireguard media configuration files
|
|
become: true
|
|
template:
|
|
src: '{{ item.src }}'
|
|
dest: '{{ item.dest }}'
|
|
owner: root
|
|
group: systemd-network
|
|
mode: '0640'
|
|
loop:
|
|
- { src: 'templates/network/wireguard/media/wg1.netdev.j2', dest: '/etc/systemd/network/wg1.netdev' }
|
|
- {
|
|
src: 'templates/network/wireguard/media/wg1.network.j2',
|
|
dest: '/etc/systemd/network/wg1.network',
|
|
}
|
|
notify: restart systemd-networkd
|
|
|
|
- name: copy external media configurations
|
|
template:
|
|
src: '{{ item.src }}'
|
|
dest: '{{ item.dest }}'
|
|
mode: '0600'
|
|
loop:
|
|
- { src: 'templates/network/wireguard/media/mobile_1.wireguard.j2', dest: '/tmp/mobile_1.conf' }
|
|
- { src: 'templates/network/wireguard/media/mobile_2.wireguard.j2', dest: '/tmp/mobile_2.conf' }
|
|
- { src: 'templates/network/wireguard/media/tv.wireguard.j2', dest: '/tmp/tv.conf' }
|
|
when: copy_vpn_media_configurations
|
|
|
|
- name: create wireguard media directories
|
|
become: true
|
|
file:
|
|
path: '{{ item | dirname }}'
|
|
owner: root
|
|
group: systemd-network
|
|
mode: '0640'
|
|
state: directory
|
|
loop:
|
|
- '{{ vpn_media_server_key_path }}'
|
|
- '{{ vpn_media_server_public_key_path }}'
|
|
|
|
- name: copy wireguard media credentials
|
|
become: true
|
|
copy:
|
|
src: '{{ item.src }}'
|
|
dest: '{{ item.dest }}'
|
|
owner: root
|
|
group: systemd-network
|
|
mode: '0640'
|
|
loop:
|
|
- { src: 'files/wireguard/media/server.pub', dest: '{{ vpn_media_server_public_key_path }}' }
|
|
- { src: 'files/wireguard/media/server.key', dest: '{{ vpn_media_server_key_path }}' }
|
|
|
|
- name: copy mobile media wireguard credentials
|
|
become: true
|
|
copy:
|
|
src: '{{ item.src }}'
|
|
dest: '{{ item.dest }}'
|
|
owner: root
|
|
group: systemd-network
|
|
mode: '0640'
|
|
loop:
|
|
- { src: 'files/wireguard/media/mobile-1.pub', dest: '{{ vpn_media_server_public_key_path|dirname }}/mobile_1.pub' }
|
|
- { src: 'files/wireguard/media/mobile-1.key', dest: '{{ vpn_media_server_key_path|dirname }}/mobile_1.key' }
|
|
- { src: 'files/wireguard/media/mobile-2.pub', dest: '{{ vpn_media_server_public_key_path|dirname }}/mobile_2.pub' }
|
|
- { src: 'files/wireguard/media/mobile-2.key', dest: '{{ vpn_media_server_key_path|dirname }}/mobile_2.key' }
|
|
- { src: 'files/wireguard/media/tv.pub', dest: '{{ vpn_media_server_public_key_path|dirname }}/tv.pub' }
|
|
- { src: 'files/wireguard/media/tv.key', dest: '{{ vpn_media_server_key_path|dirname }}/tv.key' }
|
|
|
|
- name: copy wireguard media preshared keys
|
|
become: true
|
|
copy:
|
|
src: '{{ item.value.preshared_key_source_path }}'
|
|
dest: '{{ item.value.preshared_key_path }}'
|
|
owner: root
|
|
group: systemd-network
|
|
mode: '0640'
|
|
with_dict: '{{ vpn_media_peers }}'
|