change router role

This commit is contained in:
2026-08-28 11:11:42 +00:00
parent 4e6aace464
commit 6e248bb709
3 changed files with 3 additions and 107 deletions
+3 -2
View File
@@ -1,2 +1,3 @@
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.wg0.rp_filter = 0
net.ipv4.conf.lo.rp_filter=0
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.wg0.rp_filter=0
-3
View File
@@ -1,6 +1,3 @@
---
- name: include network configuration
include_tasks: network.yml
- name: include xray-lists configuration
include_tasks: xray_lists.yml
-102
View File
@@ -1,102 +0,0 @@
---
- name: install required system packages
apt:
name:
- python3-venv
- git
state: present
update_cache: yes
- name: ensure base directories exist
file:
path: "{{ item }}"
state: directory
owner: root
group: root
mode: '0755'
loop:
- /opt/xray-lists
- /var/lib/xray-lists
- name: clone xray-lists repository
git:
repo: 'https://gitea.oyacoi.ru/pyrschtjag/xray-lists'
dest: /opt/xray-lists-src
version: main
force: yes
- name: check if xray-lists is installed
command: /opt/xray-lists/venv/bin/pip show xray-lists
register: pip_check
changed_when: false
failed_when: false
- name: install xray-lists package into venv
command: /opt/xray-lists/venv/bin/pip install -e /opt/xray-lists-src[socks]
when: pip_check.rc != 0
- name: deploy update helper script
copy:
dest: /var/lib/xray-lists/update.sh
owner: root
group: root
mode: '0755'
content: |
#!/bin/sh
set -e
out=$(/opt/xray-lists/venv/bin/xray-lists)
echo "$out"
dns_changed=0
elements_changed=0
if echo "$out" | grep -A 10 "changed:" | grep -q "nftsets.conf"; then dns_changed=1; fi
if echo "$out" | grep -A 10 "changed:" | grep -q "\.elements\.nft"; then elements_changed=1; fi
if [ "$dns_changed" -eq 1 ] && [ "$elements_changed" -eq 1 ]; then exit 12;
elif [ "$dns_changed" -eq 1 ]; then exit 10;
elif [ "$elements_changed" -eq 1 ]; then exit 11;
fi
exit 0
- name: deploy systemd service unit
copy:
dest: /etc/systemd/system/xray-lists.service
owner: root
group: root
mode: '0644'
content: |
[Unit]
Description=Update Xray lists
[Service]
Type=oneshot
ExecStart=/bin/sh -c '\
/var/lib/xray-lists/update.sh; \
rc=$$?; \
case "$$rc" in \
10) systemctl restart dnsmasq ;; \
11) nft -f /etc/nftables.conf ;; \
12) nft -f /etc/nftables.conf && systemctl restart dnsmasq ;; \
esac'
- name: deploy systemd timer unit
copy:
dest: /etc/systemd/system/xray-lists.timer
owner: root
group: root
mode: '0644'
content: |
[Unit]
Description=Run xray-lists update daily and on boot
[Timer]
OnBootSec=5min
OnUnitActiveSec=12h
Persistent=true
[Install]
WantedBy=timers.target