Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Firewall *nix: iptables, ipfw, pf etc...

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Открыть новую тему     Написать ответ в эту тему

Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iptables
   
Linux

 
  • настройка iptables (крупные статьи переехали на wikibooks)
  • настройка iptables (opennet)
  • Easy Firewall Generator for IPTables Online
  • l7-filter - дополнения для netfilter, позволяющее создавать правила основываясь на данных прикладного уровня.
  • ipset - модуль для ядра Linux к фаерволу netfilter для создания и управления наборами адресов, портов, связок ip+mac.
     
  • схема прохождения пакета через netfilter (или более сложно и подробно)
     
    Так же может быть интересным
  • Перевод руководства по iproute2 и управлению трафиком в Linux (оригинал LARTC) -- внимательно читать оглавление - тема содержит уйму всего!!!
  • Введение в управление трафиком, дисциплины обработки очередей (теория) (opennet) - aka Повесть о Linux и управлении трафиком.
  • QoS в Linux - iproute2 и u32 селектор (хабр)
  • QoS в Linux - iproute2, издеваемся над трафиком (хабр)
     


    ipfw
       
    FreeBSD

  • русский MAN (opennet)
  • настройка ipfw (opennet)
  • настройка ipfw (lissyara)
     
    Достаточно частый вопрос
  • Балансировка и резервирование канала (samag.ru)
     


    pf
       
    OpenBSD

  • начальная настройка pf (lissyara)
  • настройка pf как шлюза (lissyara)

  • Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 23:50 19-08-2010 | Исправлено: Alukardd, 11:42 20-05-2022
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Как так получается???
    при любых вопросах о маршрутизации и wireguard, смотрим на вывод трёх команд:
    Код:
    iptables -t mangle -vnL или iptables-save -t mangle
    ip ru
    ip r # тут лучше ещё захватить wg таблицу, но номер её заранее не известен обычно (мы с 200 игрались последний раз), но можно посмотреть на все ip r s t all | grep -vE '^(broadcast|local)'
    Полагаю, что от бесконечных попыток, где-то остались какие-то правила.

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 18:13 19-05-2022 | Исправлено: Alukardd, 18:15 19-05-2022
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Блин! А я счас что-то вообще не понял!!!
    Даже так:
     
    Код:
    Table = 200
    #PostUP = ip rule del not from all lookup 200
    #PostUp = ip route del default dev %i table 200
    #PostUp = ip rule add from 10.8.1.5 table 200 prio 1
    #PostUp = ip route add default dev %i table 200
    #PostDown = ip rule del from 10.8.1.5 table 200 prio 1
    #PostDown = ip route add default dev %i table 200
     
    [Peer]
    #AllowedIPs = 10.8.1.0/24
    AllowedIPs = 0.0.0.0/0
     
     
    Трассировка идёт через 192.168.1.1  
    Хотя по всей логике должна идти через 10.8.1.1  
    Как так получается???

     
    Похоже это всё какие-то артефакты были. Т.к. в итоге с таким конфигом не то, что весь трафик в туннель не шёл, но и мученный нами доступ не работал.  
     
     
    В итоге на данный момент вроде всё работает адекватно с таким конфигом

    Код:
     
    Table = 200
    #PostUP = ip rule del not from all lookup 200
    PostUp = ip route del default dev %i table 200
    PostUp = ip rule add from 10.8.1.5 table 200 prio 1
    PostUp = ip route add default dev %i table 200
    PostDown = ip rule del from 10.8.1.5 table 200 prio 1
    PostDown = ip route add default dev %i table 200
     
    [Peer]
    #AllowedIPs = 10.8.1.0/24
    AllowedIPs = 0.0.0.0/0

     

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 18:32 19-05-2022
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Цитата:
    В итоге на данный момент вроде всё работает адекватно с таким конфигом  
    КАК?!

    Цитата:
    PostDown = ip route add default dev %i table 200  
    это точно лишнее и вообще ошибку должно выдавать при выключении туннеля.
     
    Я всё ещё считаю, что
    Цитата:
    #PostUP = ip rule del not from all lookup 200
    PostUp = ip route del default dev %i table 200  
    rule del должно быть раскоменчено, а route del удалено, какой в нём смысл если строкой ниже этоже самое добавляется?..
     
    Можете показать что там сейчас когда оно "работает как надо"?
    ip ru и ip r хочу посмотреть

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 18:57 19-05-2022
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    rule del должно быть раскоменчено

    с ним ошибка при запуске туннеля:

    Цитата:
    мая 19 19:26:48 NAS-Deb wg-quick[32713]: RTNETLINK answers: No such file or directory
    (на предыдущей странице)
     

    Цитата:
    ip ru и ip r хочу посмотреть


    Код:
    root@NAS-Deb:~# ip ru
    0:      from all lookup local
    1:      from 10.8.1.5 lookup wg
    32766:  from all lookup main
    32767:  from all lookup default
    root@NAS-Deb:~# ip r
    default via 192.168.1.1 dev enp6s0 proto dhcp metric 100
    10.8.0.0/24 dev tun0 proto kernel scope link src 10.8.0.1
    10.8.1.0/24 dev WG-Cl-Amigo proto kernel scope link src 10.8.1.5
    172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
    172.30.32.0/23 dev hassio proto kernel scope link src 172.30.32.1
    192.168.1.0/24 dev enp6s0 proto kernel scope link src 192.168.1.5 metric 100
    root@NAS-Deb:~#


    Код:
     
    root@NAS-Deb:~# iptables-save -t mangle
    # Generated by xtables-save v1.8.2 on Thu May 19 22:12:32 2022
    *mangle
    REROUTING ACCEPT [0:0]
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    UTPUT ACCEPT [0:0]
    OSTROUTING ACCEPT [0:0]
    COMMIT
    # Completed on Thu May 19 22:12:32 2022
    root@NAS-Deb:~# iptables -t mangle -vnL
    Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     
    Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     
    Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     
    Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
    root@NAS-Deb:~#

     

    Код:
     
    root@NAS-Deb:~# ip r s t all | grep -vE '^(broadcast|local)'
    default dev WG-Cl-Amigo table wg scope link
    default via 192.168.1.1 dev enp6s0 proto dhcp metric 100
    10.8.0.0/24 dev tun0 proto kernel scope link src 10.8.0.1
    10.8.1.0/24 dev WG-Cl-Amigo proto kernel scope link src 10.8.1.5
    172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
    172.30.32.0/23 dev hassio proto kernel scope link src 172.30.32.1
    192.168.1.0/24 dev enp6s0 proto kernel scope link src 192.168.1.5 metric 100
    ::1 dev lo proto kernel metric 256 pref medium
    fe80::/64 dev enp6s0 proto kernel metric 100 pref medium
    fe80::/64 dev tun0 proto kernel metric 256 pref medium
    fe80::/64 dev veth1adf448 proto kernel metric 256 pref medium
    fe80::/64 dev docker0 proto kernel metric 256 pref medium
    fe80::/64 dev vethe92df1b proto kernel metric 256 pref medium
    fe80::/64 dev hassio proto kernel metric 256 pref medium
    fe80::/64 dev vethaeaab8f proto kernel metric 256 pref medium
    fe80::/64 dev veth62d5648 proto kernel metric 256 pref medium
    fe80::/64 dev veth4bad3f6 proto kernel metric 256 pref medium
    fe80::/64 dev veth80d4f26 proto kernel metric 256 pref medium
    fe80::/64 dev veth155ce7f proto kernel metric 256 pref medium
    fe80::/64 dev veth6fbad64 proto kernel metric 256 pref medium
    fe80::/64 dev veth7c7a455 proto kernel metric 256 pref medium
    multicast ff00::/8 dev enp6s0 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev tun0 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth1adf448 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev docker0 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev vethe92df1b table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev hassio table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev vethaeaab8f table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth62d5648 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth4bad3f6 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth80d4f26 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth155ce7f table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth6fbad64 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev veth7c7a455 table local proto kernel metric 256 pref medium
    multicast ff00::/8 dev WG-Cl-Amigo table local proto kernel metric 256 pref medium
    root@NAS-Deb:~#

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 20:15 19-05-2022
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Я, кажется понял, как wg-quick устроен. Он не добавляет правила (ip rule) если явно указан какой-то номер таблицы (Table = 200). поэтому конечный вариант должен быть такой:
    Код:
    Table = 200
    PostUp = ip rule add from 10.8.1.5 table 200 prio 1
    PostDown = ip rule del from 10.8.1.5 table 200 prio 1
    усё из-за моей неосведомлённости от тонкостях wg-quick

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 21:47 19-05-2022
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    усё из-за моей неосведомлённости от тонкостях wg-quick

    Теперь Вы понимаете, как тяжело мне - я то не осведомлён не только в wg-quick, а ещё и в iptables и прочих tcpdump-ов и conntrack-ов
     

    Цитата:
    поэтому конечный вариант должен быть такой:

    Подтверждаю - работает!
     
    Давайте подытожим. Для перенаправления всего трафика с порта сервера WireGuard VPN на клиента необходимо:
    А. На сервере добавить правила:
        1. iptables -t nat -A PREROUTING -d {IP Интернет интерфейса сервера}/32 -p tcp -m tcp --dport {Внешний порт} -j DNAT --to-destination {IP назначения}:{Порт  назначения}
        В случае если адрес назначения находится за NAT (интерфейс WG-Клиент на роутере установлен) и весь трафик "Устройства назначения" идет через WG-Туннель, то добавляются ещё два правила:
        2. iptables -A FORWARD -i eth0 -o wg0 -d {IP назначения} -p tcp -m tcp --dport {Порт  назначения} -j ACCEPT
        3. iptables -A FORWARD -i wg0 -o eth0 -s {IP назначения} -p tcp -m tcp --sport {Порт  назначения} -j ACCEPT
     
    В. В случае если WG-Клиент устанавливается непосредственно на "устройстве назначения" то в конфигурационном файле WG-Клиента необходимо прописать следующие правила:
        1. Table = 200
        2. PostUp = ip rule add from {IP WG-Клиента} table 200 prio 1
        3. PostDown = ip rule del from {IP WG-Клиента} table 200 prio 1
     
    Всё верно?  

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 05:40 20-05-2022 | Исправлено: i81, 05:42 20-05-2022
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Цитата:
    В случае если адрес назначения находится  
    FORWARD правила нужны в любом случае, если адрес источника и назначения конечного пакета не сам хост.
     
    https://upload.wikimedia.org/wikipedia/commons/a/ad/Netfilter-diagram-rus.png
    или более сложно и подробно то вот — https://upload.wikimedia.org/wikipedia/commons/3/37/Netfilter-packet-flow.svg
     

    Цитата:
    Всё верно?
    ну, в целом всё так, да
    а вот правильно ли Вы ограничили случаи ("в случае если"), я не оценивал, всё наперёд не продумать

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 11:39 20-05-2022
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Коллеги, помогите пожалуйста разобраться. Сделал по этой статье https://habr.com/ru/company/xakep/blog/699000/ VPN.
    Всё работает.
    Теперь хочу закрыть трафик между клиентами VPN, оставить только части.  
    Делаю так

    Код:
    ##Интернет в мир
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.10/32 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.10/32 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.10/32 -d 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.10/32 -d 10.20.30.0/24 -j ACCEPT
     
    #Запрет трафика между клиентами
    PostUp = iptables -A FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP
    #Разрешение трафика для меня
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 10.20.30.0/28 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/28 -d 10.20.30.0/28 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/28 -p tcp --dport 80 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/28 -p tcp --dport 80 -j ACCEPT
    #Трафик для всех
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p tcp --dport 53 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p udp --dport 53 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p tcp --dport 5201 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p tcp --dport 53 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p udp --dport 53 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p tcp --dport 5201 -j ACCEPT  
     
    PostUp = iptables -A FORWARD -i %i -o ens3 -s 10.20.30.0/24 -j ACCEPT
    PostUp = iptables -A FORWARD -i ens3 -o %i -d 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o ens3 -s 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i ens3 -o %i -d 10.20.30.0/24 -j ACCEPT  
       
                                                                                         
     
    И не работает. Трафик, согласно маршрутам в ens3 идёт, а вот тот, который должен идти в 10.20.30.10 не проходит
     
    Стоит разрешить FORWARD все всему интерфейсу WG - трафик начинает ходить  

    Код:
    PostUp = iptables -A FORWARD -i %i -o %i -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -j ACCEPT  

     
    Подскажите пожалуйста, чего не хатает, что бы трафик, который согласно маршруту должен идти в 10.20.30.10 шёл туда и возвращался оттуда.

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 18:11 21-03-2023 | Исправлено: i81, 18:13 21-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Кто такой 10.20.30.10? И где описанные правила iptables применяются? В том плане что покажите схему включения с вашими адресами и вопросом. В статье вон красивые картинки есть, можете прям скопировать и заменить адреса на свои.

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 16:56 22-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Кто такой 10.20.30.10?

    Это клиент wg-external из статьи (в статье 10.20.30.2), тот, второй VPS, который в иностранном ЦОДе находится.
     
    В локальном сервере WG (wg-internal) у него прописал нулевой маршрут.  

    Код:
    #external node
    [Peer]
    PublicKey = FulnUTovyyfgn5kmgPkcj2OjKRFGeLkaTsHtAOy6HW8=
    AllowedIPs = 10.20.30.10/32, 0.0.0.0/0

     
    Схема включения 1 в 1 как с статье, только IP external node заменён с 10.20.30.2 на 10
     
    Даже больше - аналогичными правилами я разрешаю трафик между клиентами wg (те, которые 10.20.30.0/28) и ещё даже теми сетями которые находятся за точками подключения к серверу WG, почему-то только с интернетом не работает это
     
    Если нужно - могу приложить файлы конфигурации (/etc/wireguard/wg-internal.conf и /etc/wireguard/wg-external.conf)

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 17:23 22-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Ну конфиги я верю что у вас скопипащены из статьи правильно.
    Давайте лучше взглянем на ваш firewall, т.к. он первый под подозрением:
    iptables -t nat -vnL POSTROUTING
    iptables -vnL FORWARD

     
    p.s. вывод вставьте пжст в тэг [font=monospace][/font] внутри тэга [code][/code]

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 18:14 22-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    [code]
    [font=monospace]
    root@vd:~# iptables -t nat -vnL POSTROUTING
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     1967  122K MASQUERADE  all  --  *      ens3    0.0.0.0/0            0.0.0.0/0
    root@vd:~#
    [/font]
    [/code]
     

    Код:
     

    root@vd:~# iptables -vnL FORWARD
    Chain FORWARD (policy DROP 1 packets, 989 bytes)
     pkts bytes target     prot opt in     out     source               destination
    1148K  574M ACCEPT     all  --  wg-internal wg-internal  0.0.0.0/0            0.0.0.0/0
    47312   11M ACCEPT     all  --  wg-internal ens3    10.20.30.0/24        0.0.0.0/0
    40853   50M ACCEPT     all  --  ens3   wg-internal  0.0.0.0/0            10.20.30.0/24
    root@vd:~#

     

     
    Это вариант с статья, когда всё работает. Мои правки все закоментированы.
     
    Дальше когда раскоментированы мои правки, а закоментирован FORWARD
     

    Код:
     

    PostUp = iptables -A FORWARD -i %i -o %i -j ACCEPT

     

     
     

    Код:
     

    root@vd:~# iptables -t nat -vnL POSTROUTING
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
       13   873 MASQUERADE  all  --  *      ens3    0.0.0.0/0            0.0.0.0/0
    root@vd:~#
     

     

     

    Код:
     

    root@vd:~# iptables -vnL FORWARD
    Chain FORWARD (policy DROP 644 packets, 38519 bytes)
     pkts bytes target     prot opt in     out     source               destination
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.49
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.49          192.168.6.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.6.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.1.0/24       10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.1.0/24
     3052 2289K ACCEPT     all  --  wg-internal wg-internal  192.168.3.0/24       10.20.30.0/28
     3066  255K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.3.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.10          10.20.30.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.10
        0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.0/24
       58  5224 ACCEPT     all  --  wg-internal ens3    10.20.30.0/24        0.0.0.0/0
       60 18075 ACCEPT     all  --  ens3   wg-internal  0.0.0.0/0            10.20.30.0/24
    root@vd:~#
     

     

     
    В таком случае трафик через РФ сегмент (тот трафик, что скриптом из статьи отправляется в ens3 проходит. А тот трафик, который отправляется в 10.20.30.10 не проходит

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 18:38 22-03-2023 | Исправлено: i81, 04:20 23-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А как же monospace((( реально тяжело без него читать код/вывод
     
    Добавлено:
    Ну потому что трафик идущий в интернет не имеет в качестве destination ip external сервера (10.20.30.10), там в пакете указан IP назначения (сайта или куда вы там стремитесь попасть).

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 19:00 22-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Так вроде сделал monospace как Вы писали
     
     
    Добавлено:

    Цитата:
    там в пакете указан IP назначения

    Простите, не понимаю

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 19:07 22-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    С учётом того что wireguard сам фильтрует то что пришло в туннеле от клиента на основе AllowedIPs, то дальше Вам для запрета общения меду клиентами нужно только простое правило:
    Код:
    iptables -A FORWARD -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP

    По сути больше ни чего и не надо, ни доп разрешений для хождения на .10 ни уточнения в указанном правиле имён in и out интерфейсов.
     
    Добавлено:

    Цитата:
    Так вроде сделал monospace как Вы писали  
    нет. можете сравнить мой код в последнем сообщении и Ваш, и невооружённым взглядом видна разница.
    p.s. вижу что пытались исправить прошлое сообщение, так вот font внутри code надо

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 19:12 22-03-2023 | Исправлено: Alukardd, 19:16 22-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброе утро!

    Цитата:
    font внутри code надо

    Исправил, но что-то не увидел разницы
     

    Цитата:
    Вам для запрета общения меду клиентами нужно только простое правило

    Оно у меня есть и в конфиге WG сервера, и даже в выводе ptables -vnL FORWARD
     

    Код:
     

    root@vd:~# iptables -vnL FORWARD
    Chain FORWARD (policy DROP 644 packets, 38519 bytes)
     pkts bytes target     prot opt in     out     source               destination
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.49
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.49          192.168.6.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.6.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.1.0/24       10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.1.0/24
     3052 2289K ACCEPT     all  --  wg-internal wg-internal  192.168.3.0/24       10.20.30.0/28
     3066  255K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.3.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        10.20.30.0/28
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.10          10.20.30.0/24
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.10
       0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.0/24
       58  5224 ACCEPT     all  --  wg-internal ens3    10.20.30.0/24        0.0.0.0/0
       60 18075 ACCEPT     all  --  ens3   wg-internal  0.0.0.0/0            10.20.30.0/24
    root@vd:~#
     

     

     
    Но перед тем как обратиться сюда я проверил: создал клиента к WG-серверу с адресом 10.20.30.45/32 (не входит в 10.20.30.0/28) и у него трафик ходил в 192.168.3.0/24, 192.168.1.0/24, 192.168.6.0/24
    При этом, если я удаляю правило  

    Код:
     

    iptables -A FORWARD -i %i -o %i -j ACCEPT

     

    из конфига WG то трафик у 10.20.30.45 перестаёт ходить  в 192.168.3.0/24, 192.168.1.0/24, 192.168.6.0/24
     
    Добавлено:
    Постойте, а может мне тогда отдельно запрещать трафик в 192.168.3.0/24, 192.168.1.0/24, 192.168.6.0/24 и не парится?
     
    Добавлено:
    нет, не помогло как я подумал
    Добавил правило  

    Код:
     

    PostUp = iptables -A FORWARD -i %i -o %i -s 10.20.30.0/24 -d 192.168.0.0/16 -j DROP

     

    Но трафик от 10.20.30.45 идёт спокойно через WG Сервер в 192.168.3.0/24, 192.168.1.0/24, 192.168.6.0/24

    Код:
     

    root@vd:~# iptables -t nat -vnL POSTROUTING
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
      111  6816 MASQUERADE  all  --  *      ens3    0.0.0.0/0            0.0.0.0/0
    root@vd:~#

     

     

    Код:
     

    root@vd:~# iptables -vnL FORWARD
    Chain FORWARD (policy DROP 1294 packets, 76272 bytes)
     pkts bytes target     prot opt in     out     source               destination
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.49
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.49          192.168.6.0/24
       39 21088 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.0/28
       40  5263 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.6.0/24
        2   514 ACCEPT     all  --  wg-internal wg-internal  192.168.1.0/24       10.20.30.0/28
        5   336 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.1.0/24
     6782 4626K ACCEPT     all  --  wg-internal wg-internal  192.168.3.0/24       10.20.30.0/28
     7129  605K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.3.0/24
       27  2526 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        10.20.30.0/28
        3   360 ACCEPT     all  --  wg-internal wg-internal  10.20.30.10          10.20.30.0/24
        3   234 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.10
    23265   11M ACCEPT     all  --  wg-internal wg-internal  0.0.0.0/0            0.0.0.0/0
        0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.0/24
       0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        192.168.0.0/16
     2111  418K ACCEPT     all  --  wg-internal ens3    10.20.30.0/24        0.0.0.0/0
     1406 1216K ACCEPT     all  --  ens3   wg-internal  0.0.0.0/0            10.20.30.0/24
    root@vd:~#

     

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 04:27 23-03-2023 | Исправлено: i81, 04:58 23-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Цитата:
    Исправил, но что-то не увидел разницы
    спасибо, моноширинность, конечно, видна.
     
    Извиняюсь, я забыл написать как-то:
    Вам не хватает правила собственно разрешающего хождения в интернет через WG External с клиентов WG Internal (так ведь?):
    iptables -A FORWARD -i wg-internal -o wg-internal -s 10.20.30.0/24 -j ACCEPT
    iptables -A FORWARD -i wg-internal -o wg-internal -d 10.20.30.0/24 -j ACCEPT

    Эти два правила нужны что бы отправлять и получать ответы В/ИЗ интернета. Они нужны потому что у Вас прописана POLICY DROP в цепочке FORWARD.
    Обратите внимание, что эти правила должны идти после Вашего запрещающего правила DROP для общения между клиентами.
    В целом можно уточнить приведённые мною правила для их ясности и полноты условиями что ! -d 10.20.30.0/24 для первого и соответственно ! -s 10.20.30.0/24 для второго.

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 13:32 23-03-2023 | Исправлено: Alukardd, 13:35 23-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Вам не хватает правила собственно разрешающего хождения в интернет через WG External с клиентов WG Internal (так ведь?):

    Именно так.

    Цитата:
    Эти два правила нужны что бы отправлять и получать ответы В/ИЗ интернета.

    А чем они отличаются от  

    Код:
     

    iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.10/32 -j ACCEPT
    iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.10/32 -d 10.20.30.0/24 -j ACCEPT

     

    Я так понимаю Вашими правилами разрешается весь FORWARD в интерфейсе wg-internal в пределах ip 10.20.30.0/24 и при этом мы его же и блокируем правилом  

    Код:
     

    iptables -A FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP

     

    Как-то вообще не понятно
     
    Ну и по факту ничего не изменилось.  
    Что сделал:
    1. Закоментировал правило

    Код:
     

    iptables -A FORWARD -i %i -o %i -j ACCEPT

     

    2. Добавил  

    Код:
     

    PostUp = iptables -A FORWARD -i wg-internal -o wg-internal -s 10.20.30.0/24 -j ACCEPT
    PostUp = iptables -A FORWARD -i wg-internal -o wg-internal -d 10.20.30.0/24 -j ACCEPT

     

     
    Вообще набор правил сейчас вот так выглядит

    Код:
     

    root@vd:~# iptables -t nat -vnL POSTROUTING
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
       53  3462 MASQUERADE  all  --  *      ens3    0.0.0.0/0            0.0.0.0/0
    root@vd:~# iptables -vnL FORWARD
    Chain FORWARD (policy DROP 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
        0     0 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.49
        0     0 ACCEPT     all  --  wg-internal wg-internal  10.20.30.49          192.168.6.0/24
       38 21048 ACCEPT     all  --  wg-internal wg-internal  192.168.6.0/24       10.20.30.0/28
       39  5223 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.6.0/24
    10083  434K ACCEPT     all  --  wg-internal wg-internal  192.168.1.0/24       10.20.30.0/28
    14597  868K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.1.0/24
     6840 4245K ACCEPT     all  --  wg-internal wg-internal  192.168.3.0/24       10.20.30.0/28
     7784  707K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        192.168.3.0/24
      200 29362 ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/28        10.20.30.0/28
     8482 1395K ACCEPT     all  --  wg-internal wg-internal  10.20.30.0/24        0.0.0.0/0
    13150   10M ACCEPT     all  --  wg-internal wg-internal  0.0.0.0/0            10.20.30.0/24
        0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        10.20.30.0/24
        0     0 DROP       all  --  wg-internal wg-internal  10.20.30.0/24        192.168.0.0/16
      490 75002 ACCEPT     all  --  wg-internal ens3    10.20.30.0/24        0.0.0.0/0
      404  246K ACCEPT     all  --  ens3   wg-internal  0.0.0.0/0            10.20.30.0/24
    root@vd:~#
     

     

     
     
    Добавлено:

    Цитата:
    Обратите внимание, что эти правила должны идти после Вашего запрещающего правила DROP для общения между клиентами.

    Вот наверное в этом проблема? А как это реализовать?
     
    Добавлено:

    Цитата:
    Обратите внимание, что эти правила должны идти после Вашего запрещающего правила DROP для общения между клиентами.

    Заменил -А на -I  

    Код:
     

    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP

     

     
    Правило поднялось выше  

    Код:
     

    -A FORWARD -s 192.168.6.0/24 -d 10.20.30.49/32 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.49/32 -d 192.168.6.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.6.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.6.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.1.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.3.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.3.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/24 -d 10.20.30.0/24 -i wg-internal -o wg-internal -j DROP
    -A FORWARD -s 10.20.30.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -d 10.20.30.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/24 -d 192.168.0.0/16 -i wg-internal -o wg-internal -j DROP
    -A FORWARD -s 10.20.30.0/24 -i wg-internal -o ens3 -j ACCEPT
    -A FORWARD -d 10.20.30.0/24 -i ens3 -o wg-internal -j ACCEPT

     

    Но фактически изменилось только то, что в трассировке адреса 192.168.6.2 от клиента 10.20.30.45 вместо одного этапа (перехода из сети wg в сеть 192.168.6.0/24 появилась звёздочки (не отвечает узел) но трафик проходит дальше и до назначения доходит

    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 15:17 23-03-2023
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i81
    Ну глядя на приведённые Вами правила, которые сейчас применены и на их счётчики (первые 2 столбца), я могу сказать, что оно работает.
    Отсюда вАпрос, а что не работает-то?)

    Цитата:
    Я так понимаю Вашими правилами разрешается весь FORWARD в интерфейсе wg-internal в пределах ip 10.20.30.0/24 и при этом мы его же и блокируем правилом
    Они совсем про другое потому что. Отличаются восклицательным знаком, если заниматься буквоедством. Можете написать их без моих уточнений, что судя по выводу Вы и сделали.

    Цитата:
    Вот наверное в этом проблема? А как это реализовать?
    мы уже указали достаточные правила для того что бы WG Internal разрешал маршрутизацию пакетов от wg клиентов на WG External сервер.
     
    Если вот не трогать WG туннели и с той конфигурацией что я вижу как "последнюю" выполнить iptables -P FORWARD ACCEPT, то всё начнёт работать? (я не верю)
     
    После верните обратно запрещающую политику: iptables -P FORWARD DROP, и далее очистите счётчики: iptables -Z, после чего попробуйте с клиента открыть сайт и покажите -vnL вывод сюда.
     
    Добавлено:
    Можно сделать ещё один эксперимент, если всё ещё есть проблема:
    включаем все туннели, далее добавляем правило для логирования:
    iptables -A FORWARD -j LOG --log-prefix "DROP "
    после чего выполняем клиентом один пробный заход на любой сайт в интернет
    после удаляем правило, что бы не мусорило нам:
    iptables -D FORWARD -j LOG --log-prefix "DROP "
    и смотрим на то что же там поймалось в POLICY DROP чего мы забыли разрешить:
    grep DROP /var/log/syslog

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6553 | Зарегистр. 28-08-2008 | Отправлено: 15:37 23-03-2023 | Исправлено: Alukardd, 15:38 23-03-2023
    i81

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    а что не работает-то?)

    Так в том то и дело, что работает больше чем нужно.  
    Я наверное непонятно описал  свою задачу. мне нужно ЗАПРЕТИТЬ доступ части (всем кроме 10.20.30.0/28) в локальные сети 192.168.3.0/24, 192.168.1.0/24, 192.168.6.0/24, которые находятся за WG-Клиентами (10.20.30.3, 10.20.30.4 и 10.20.30.49).  
    Ранее я это всегда делал следующим образом:
    1. iptables -A FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP
    2. iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 10.20.30.0/28 -j ACCEPT
     
    Но после того как я решил добавить ещё WG External обычная блокировка мешала работе клиентов с WG External подключением.
     
    Но похоже с Вашей помощью  я победил проблему. Правда не совсем понимаю как это работает (хотя работает). Сейчас всё опишу ниже
     
    Добавлено:
    Вот поднятия вверх ещё и плавила блокировки трафика в локальную сеть 192.168.0.0/16 помогло

    Код:
     

    iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 192.168.0.0/16 -j DROP

     

    В итоге имею:
     

    Код:
     

    -A FORWARD -s 192.168.6.0/24 -d 10.20.30.49/32 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.49/32 -d 192.168.6.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.6.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.6.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.1.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.1.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 192.168.3.0/24 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 192.168.3.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/28 -d 10.20.30.0/28 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/24 -d 192.168.0.0/16 -i wg-internal -o wg-internal -j DROP
    -A FORWARD -s 10.20.30.0/24 -d 10.20.30.0/24 -i wg-internal -o wg-internal -j DROP
    -A FORWARD -s 10.20.30.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -d 10.20.30.0/24 -i wg-internal -o wg-internal -j ACCEPT
    -A FORWARD -s 10.20.30.0/24 -i wg-internal -o ens3 -j ACCEPT
    -A FORWARD -d 10.20.30.0/24 -i ens3 -o wg-internal -j ACCEPT

     

     
    Такой вид таблицы получилось достичь следующим набором правил в конфигурации сервера wg

    Код:
     

    PostUp = sysctl -w -q net.ipv4.ip_forward=1
    PostDown = sysctl -w -q net.ipv4.ip_forward=0
     
    PostUp = sysctl -w -q net.ipv6.conf.all.forwarding=1
    PostDown = sysctl -w -q net.ipv6.conf.all.forwarding=0
    PostUp = ip6tables -t nat -I POSTROUTING -o ens3 -j MASQUERADE
    PostDown = ip6tables -t nat -D POSTROUTING -o ens3 -j MASQUERADE
     
    PostUp = iptables -t nat -A POSTROUTING -o `ip route | awk '/default/ {print $5; exit}'` -j MASQUERADE
    PostUp = ip rule add from `ip addr show $(ip route | awk '/default/ { print $5 }') | grep "inet" | grep -v "inet6" | head -n 1 | awk '/inet/ {print $2}' | awk -F/ '{prin>
    PostDown = iptables -t nat -D POSTROUTING -o `ip route | awk '/default/ {print $5; exit}'` -j MASQUERADE
    PostDown = ip rule del from `ip addr show $(ip route | awk '/default/ { print $5 }') | grep "inet" | grep -v "inet6" | head -n 1 | awk '/inet/ {print $2}' | awk -F/ '{pr>
     
    #PostUp = iptables -A FORWARD -i %i -o %i -j ACCEPT
    #PostDown = iptables -D FORWARD -i %i -o %i -j ACCEPT
     
    #Интернет в мир
    PostUp = iptables -A FORWARD -i wg-internal -o wg-internal -s 10.20.30.0/24 -j ACCEPT
    PostUp = iptables -A FORWARD -i wg-internal -o wg-internal -d 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i wg-internal -o wg-internal -s 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i wg-internal -o wg-internal -d 10.20.30.0/24 -j ACCEPT
     
    ##Запрет трафика между клиентами
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/24 -d 10.20.30.0/24 -j DROP
     
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/24 -d 192.168.0.0/16 -j DROP
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/24 -d 192.168.0.0/16 -j DROP
     
     
    #Разрешение трафика для меня
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 10.20.30.0/28 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/28 -d 10.20.30.0/28 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/28 -p tcp --dport 80 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/28 -p tcp --dport 80 -j ACCEPT
    ##Мои VPN в деревню
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 192.168.3.0/24 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 192.168.3.0/24 -d 10.20.30.0/28 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/28 -d 192.168.3.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 192.168.3.0/24 -d 10.20.30.0/28 -j ACCEPT
    #Мои VPN в город
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 192.168.1.0/24 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 192.168.1.0/24 -d 10.20.30.0/28 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/28 -d 192.168.1.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 192.168.1.0/24 -d 10.20.30.0/28 -j ACCEPT
    #Мои VPN в офис
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.0/28 -d 192.168.6.0/24 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 192.168.6.0/24 -d 10.20.30.0/28 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 10.20.30.49/32 -d 192.168.6.0/24 -j ACCEPT
    PostUp = iptables -I FORWARD 1 -i %i -o %i -s 192.168.6.0/24 -d 10.20.30.49/32 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.0/28 -d 192.168.6.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 192.168.6.0/24 -d 10.20.30.0/28 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 10.20.30.49/32 -d 192.168.6.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o %i -s 192.168.6.0/24 -d 10.20.30.49/32 -j ACCEPT
     
    ########################################################################################################
    #Трафик для всех
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p tcp --dport 53 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p udp --dport 53 -j ACCEPT
    PostUp = iptables -I INPUT 2 -s 10.20.30.0/24 -p tcp --dport 5201 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p tcp --dport 53 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p udp --dport 53 -j ACCEPT
    PostDown = iptables -D INPUT -s 10.20.30.0/24 -p tcp --dport 5201 -j ACCEPT
    PostUp = iptables -A INPUT -i %i -p icmp --icmp-type echo-request -j ACCEPT
    PostDown = iptables -D INPUT -i %i -p icmp --icmp-type echo-request -j ACCEPT
     
     
    PostUp = iptables -A FORWARD -i %i -o ens3 -s 10.20.30.0/24 -j ACCEPT
    PostUp = iptables -A FORWARD -i ens3 -o %i -d 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i %i -o ens3 -s 10.20.30.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -i ens3 -o %i -d 10.20.30.0/24 -j ACCEPT
     
     
    #Тестовый пир
    [Peer]
    PublicKey =  
    AllowedIPs = 10.20.30.45/32, fd07:cab1:4eff::45/128
     
    #external node
    [Peer]
    PublicKey =  
    AllowedIPs = 10.20.30.10/32, fd07:cab1:4eff::10/128, 0.0.0.0/0
     
     
    [Peer]
    #igor mobile
    PublicKey =  
    AllowedIPs = 10.20.30.2/32, fd07:cab1:4eff::2/128
     
    [Peer]
    #Derevnya
    PublicKey =  
    AllowedIPs = 10.20.30.3/32, 192.168.3.0/24
     
    [Peer]
    #igor home
    PublicKey =  
    AllowedIPs = 10.20.30.4/32, 192.168.1.0/24
     
    [Peer]
    PublicKey =  
    AllowedIPs = 10.20.30.49/32, 192.168.6.0/24
     
     

     


    Всего записей: 329 | Зарегистр. 08-04-2006 | Отправлено: 15:57 23-03-2023
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

    Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Firewall *nix: iptables, ipfw, pf etc...


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru