Как извлечь и заблокировать IP-адреса VPN из файлов конфигурации NetworkManager с помощью iptables и Python?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как извлечь и заблокировать IP-адреса VPN из файлов конфигурации NetworkManager с помощью iptables и Python?

Сообщение Anonymous »

Мне нужна помощь со сценарием для управления IP-адресами VPN в Linux NetworkManager.
Цель: извлечь IP-адреса из файлов конфигурации VPN и заблокировать их. с помощью iptables.
Сведения о среде:
  • Расположение: /etc/ NetworkManager/system-connections/
  • Тип файла: .nmconnection
  • Цель: только файлы конфигурации VPN
Текущая попытка:
ip=$(grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' /etc/NetworkManager/system-connections/*)

iptables -A INPUT -s "$ip" -j DROP
iptables -A OUTPUT -d "$ip" -j DROP


Мне нужна помощь со сценарием для управления IP-адресами VPN в Linux NetworkManager.
Цель: извлечь IP-адреса из файлов конфигурации VPN и заблокировать их. с помощью iptables.
Сведения о среде:
  • Расположение: /etc/ NetworkManager/system-connections/
  • Тип файла: .nmconnection
  • Цель: только файлы конфигурации VPN
Текущая попытка:
ip=$(grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' /etc/NetworkManager/system-connections/*)

iptables -A INPUT -s "$ip" -j DROP
iptables -A OUTPUT -d "$ip" -j DROP

Проблемы, которые необходимо решить:
  • Необходимо идентифицировать и обрабатывать только VPN файлы конфигурации
  • Извлечение отдельных IP-адресов (пример: 137.119.23.205)
  • Применить правила iptables для каждого IP отдельно
Вопрос
Что такое рекомендуемый метод фильтрации файлов конфигурации VPN?
Технические требования:
  • Решение должно быть реализовано на Python
  • Необходимо обрабатывать несколько файлов
  • Должны обрабатываться только действительные IP-адреса
I будем признательны за рекомендации по правильной и эффективной реализации этой функции.
** Файл .nmconnection**
[connection]
id=jp-free-840006.protonvpn.tcp
uuid=d9a1c788-db09-41a2-8884-9ee3024f
type=vpn
autoconnect=false

[vpn]
ca=/home/user/.cert/nm-openvpn/jp-free-840006.protonvpn.tcp-ca.pem
cipher=AES-256-GCM
connection-type=password
dev=tun
mssfix=0
password-flags=1
proto-tcp=yes
remote=138.199.22.103:7770, 138.199.22.103:443, 138.199.22.103:8443
remote-cert-tls=server
remote-random=yes
reneg-seconds=0
tls-crypt=/home/user/.cert/nm-openvpn/jp-free-840006.protonvpn.tcp-tls-crypt.pem
tunnel-mtu=1500
username=user
service-type=org.freedesktop.NetworkManager.openvpn

[ipv4]
method=auto

[ipv6]
addr-gen-mode=stable-privacy
method=auto

[proxy]


Подробнее здесь: https://stackoverflow.com/questions/792 ... ation-file
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»