120547b1b8
Add community.openwrt collection, dlink host to inventory, openwrt role with system/network/firewall tasks, and two playbooks: dlink-init.yml for one-time bootstrap from factory IP, and openwrt.yml for ongoing idempotent configuration. Network: MGMT untagged + LAN (vlan2) tagged on WAN port trunk to MikroTik ether3. Firewall zones replace factory WAN/LAN with mgmt (input ACCEPT) and lan (forward ACCEPT, AP mode).
31 lines
738 B
YAML
31 lines
738 B
YAML
---
|
|
- name: Set hostname
|
|
community.openwrt.uci:
|
|
command: set
|
|
key: system.@system[0].hostname
|
|
value: "{{ openwrt_hostname }}"
|
|
|
|
- name: Set timezone
|
|
community.openwrt.uci:
|
|
command: set
|
|
key: system.@system[0].timezone
|
|
value: "{{ openwrt_timezone }}"
|
|
|
|
- name: Configure NTP servers
|
|
community.openwrt.uci:
|
|
command: set
|
|
key: system.ntp.server
|
|
value: "{{ openwrt_ntp_servers }}"
|
|
|
|
- name: Commit system config
|
|
community.openwrt.uci:
|
|
command: commit
|
|
key: system
|
|
|
|
- name: Set SSH authorized keys
|
|
community.openwrt.uci:
|
|
command: set
|
|
key: "dropbear.@dropbear[0].authorized_keys"
|
|
value: "{{ openwrt_ssh_authorized_keys | join('\n') }}"
|
|
when: openwrt_ssh_authorized_keys | length > 0
|