Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2017-04-13 10:38:10

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

debian i funkcjonalość IP source Guard

Witam
Próbuję znaleźć sensowne rozwiązanie podobne co ciscowego IP Source Guard na debianie.

Mianowicie, chcę forwardować ruch tylko urządzeniom/klientom, którzy dostaną adres z DHCP, fajnie było by statycznie bindować tablicę arp na podstawie zapytań DHCP. Niestety nie mogę znaleźć jak na interfejsie wyłączyć dynamiczne bindowanie arp by tylko karta odpowiadała na apr a nie bindowała sieci. w pewnym sensie jest to jakieś "zabezpieczenie" przed arp spoofingiem.
W mikrotiku taką funkcjonalość uzyskuje się przez ustawienie na ethernecie tylko odpowiadania ARP (reply-only) oraz w DHCP "arp lease" gdzie dhcp wstawia do tablicy arp maci, które pytają i tylko Ci mają net :)

Jak coś takiego osiągnąć na debianie?

Z góry dzięki za pomoc.

Offline

 

#2  2017-04-13 22:49:07

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: debian i funkcjonalość IP source Guard

Filtrować pacjentów tylko takich, którzy dostali adres z DHCP, można, o ile masz statycznie ożenione adresy mac z IP pacjentów i nie ma w sieci urządzeń z random mac (jak np Iphone).

Możesz użyć programu [b]ipset[/b] i modułu [b]bitmap:ip:mac[/b]. przykładowo:

Kod:

 ipset create pacjenci bitmap:ip,mac range 192.168.0.0/16

              ipset add pacjenci 192.168.1.1,12:34:56:78:9A:BC

              ipset test pacjenci 192.168.1.1

[url]http://ipset.netfilter.org/ipset.man.html#lbAU[/url]

Użycie w FW?
np:

Kod:

iptables -t raw -I PREROUTING -m set --match-set pacjenci src:src -j DROP

Jeżeli ma się to odbywać dynamicznie, to trzeba jakoś oskrypcić DHCP, żeby dodawał dynamicznie adresy do tablic  ipeseta.

Inny wyjściem byłoby zastosowanie freeradiusa zamiast serwera DHCP, FreeRadius ma wbudowany serwer DHCP i potrafi autoryzować pacjentów po źródłowym mac-adresie połączonym z klasyczną autoryzacją w innych standardach WPA i Radiusa.

Sznurek:
https://wiki.freeradius.org/guide/dhcp-for-static-ip-allocation

Ostatnio edytowany przez Jacekalex (2017-04-14 00:04:35)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2017-04-14 08:28:38

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

Re: debian i funkcjonalość IP source Guard

Dzięki za podpowiedź, też myślałem o ipset i dynamicznym jego karmieniu. isc-dhcp może uruchamiać skrypty przy akcjach więc byłoby to dynamiczne.
Nie mogę tylko namierzyć by wyłączyć dynamiczne wpisywanie hsotów do tablicy arp, by debian na interfejsie tylko odpowiadał na zapytania arp ale nie bindował tego co z etheru przyjdzie.

Freeradius też byłby dobrym rozwiązaniem jako serwer DHCP ale muszę też po woli uruchamiać IPv6 a ten, zarówno jak i isc-dhcp, nie obsługują IPv6 :/ Znalazłem kea-dhcp-server ale właśnie czytam dokumentację i nie znalazłem jeszcze czy obsługuje skrypty przy zdarzeniach bo byłby to dobry serwer DHCP dla obu protokołów.

Offline

 

#4  2017-04-14 21:53:39

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: debian i funkcjonalość IP source Guard

Ipv6?

https://wiki.gentoo.org/wiki/IPv6_router_guide

Zawsze mnie się zdawało (jak na idiotę przystało :P), że w IPv6 nie używa się NATu i DHCP, tylko uruchamia [b]radvd[/b].

Problematyczne chyba w dalszym ciągu  jest rozszerzenie prywatności RFC4941 (w różnych systemach), ale za to zawsze można względnie łatwo włączyć losowy mac-adres już chyba w każdym współczesnym systemie.

A poza tym kto Tobie wbił do głowy, że ISC DHCP nie obrabia IPv6?
https://www.sixxs.net/wiki/Configuring_ISC_DHCPv6_Server

equery u net-misc/dhcp
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
* Found these USE flags for [b]net-misc/dhcp-4.3.4[/b]:
U I
+ + client     : Install the dhclient program
[b] + + ipv6       : Add support for IP version 6[/b]
- - ldap       : Add LDAP support (Lightweight Directory Access Protocol)
+ + libressl   : Use dev-libs/libressl as SSL provider (might need ssl USE
                  flag), packages should not depend on this USE flag
+ + server     : Install the dhcpd and dhcrelay programs
+ + ssl        : Add support for Secure Socket Layer connections
- - vim-syntax : Pulls in related vim syntax script[/quote]
Co do Freeradiusa, to on tylko wypluwa pytanie-odpowiedź z bazy SQL, także nie wykluczam, że da się to jakoś zaimplementować metodą hakera-partyzanta. xD


PS:

FreeRADIUS Server 2.0.0 and greater has full support for both IPv6 attributes and IPv6 network packets.[/quote]
https://wiki.freeradius.org/guide/FAQ#how-do-i_does-freeradius-support-ipv6
https://freeradius.org/rfc/rfc6911.html

Pozdro

Ostatnio edytowany przez Jacekalex (2017-04-14 22:34:00)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2017-04-14 23:24:55

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

Re: debian i funkcjonalość IP source Guard

NAT dla ipv6? Po co? radvd to chyba tylko router advertisment i chba nic wiecej. Jak sie chce mieć "bałagan" albo nie potrzeba danych do retencji to można na tym poprzestać inaczej trzeba użyć czegoś do zarządzania prefixami.
isc-dhcp nie jest rozwijane, samo isc zaleca migracje na kea. Isc-dhcpv6 chyba nie robi routingu dla PD i trzeba kombinowac.
W kea można trzymać lease jak i rezerwacje w DB.

Freeradius nie ma serwera DHCPv6, v4 owszem ale nie ip6.
Owszem odpowiada atrybutami dla IPv6 ale to NAS musi to wspierac. Nie znalazłem serwera DHCPv6 ktorego można "karmić " z radiusa (chyba w cisco to działa). W mikrotiku to dziala dla dhcp v4.

Ostatnio edytowany przez Nicram (2017-04-14 23:35:35)

Offline

 

#6  2017-04-14 23:41:56

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: debian i funkcjonalość IP source Guard

ISC-dhcp nie jest rozwijane?

Nie za bardzo rozumiem, co tam miałoby być rozwijane.

Zalecają migrację do Kea?
To radzę zastosować się do zalecenia... xD

DHCPv6 nie było zbyt intensywnie rozwijane, bo w IPv6 pierwotnie miało go nie być,  najpierw plany dotyczyły autokonfiguracji - 64 bity prefix IPv6+mac, potem pojawiły się pytania o inwigilacje po unikalnym mac-adresie i wreszcie rozszerzenie prywatności RFC4941.

Czyli docelowo IPv6 ma się obyć bez DHCP, wielki problem jest tylko w sieci, gdzie IPv6 dodajesz do istniejącego IPv4.

Co się tyczy FreeRadiusa, to nie ma co dyskutować, co on wspiera, bo DHCP jest tam zorganizowane troszkę inaczej, aniżeli w klasycznym serwerze DHCP,

Kod:

qlist freeradius | grep dhcp
/etc/raddb/sites-available/dhcp.relay
/etc/raddb/sites-available/dhcp
/etc/raddb/modules/dhcp_sqlippool
/etc/raddb/sql/mysql/ippool-dhcp.conf
/usr/share/freeradius/dictionary.dhcp
/usr/include/freeradius/dhcp.h

Cały moduł dhcp Freeradiusa sprowadza się do tego pliku:

Kod:

/usr/share/freeradius/dictionary.dhcp

Jak przejrzysz jego zawartość, to lepiej zrozumiesz, co maiłem na myśli pisząc o metodzie hakera-partyzanta.

Freeradius nie wspiera DHCPv6  nie oznacza, że nie da się tego zrobić zmieniając zawartość dictionary.dhcp.

Proponuję popatrzeć przez chwilkę na Freeradiusa jak na kondon do SQLa, wtedy mogą pojawić się różne nowe możliwości, których formalnie Freeradius nie potrafi.

Ostatnio edytowany przez Jacekalex (2017-04-14 23:56:51)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#7  2017-04-14 23:55:39

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

Re: debian i funkcjonalość IP source Guard

Nie jest rozwijanie właśnie pod względem m.in. IPv6, nie będzie backendu bazodanowego czy radiusowego.
Zalecają i dla tego zaczynam testować właśnie ten soft, z resztą Ci sami programiści to piszą co starego poczciwego isc :)

Problem nie jest w dual-stack'u tylko w utrzymaniu porządku. Oczywiście mogę użyć autokonfiguracji, ale nie będę wiedział, który klient ma jaki adres i by to ustalić trzeba by robić "dochodzenie" :) nie wspomnę już o retencji na rok do tyłu :/

Offline

 

#8  2017-04-15 00:14:24

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: debian i funkcjonalość IP source Guard

Retencja?

Albo jak robi my isp - wielka DB z ostatnimi dwoma latkami.
Albo statyczna adresacja w dhcp.

ISC-dhcp ma backend tylko do swojego konfigu, i tak było zawsze, nie rozumiem, co rozwijać w programie, w którym nic nie miało się rozwijać.

W ISC w ogóle żyją w świecie, gdzie do korpobiura idzie router Cisco czy Juniper z różnymi backendami, a ISC-dhcp ma być na małe domowe routerki,
i potrafi wszystko, co się da w typowym, domowym  routerku za $49 zrobić.
Tam można rozwijać tylko papier toaletowy. xD

Ostatnio edytowany przez Jacekalex (2017-04-15 00:18:44)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#9  2017-04-15 10:45:39

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

Re: debian i funkcjonalość IP source Guard

[quote=Jacekalex]Retencja?

Albo jak robi my isp - wielka DB z ostatnimi dwoma latkami.
Albo statyczna adresacja w dhcp.[/quote]
Jak dwoma? już od kilku lat jest rok :)
No właśnie statyczna adresacja w dużym stopniu ułatwia identyfikację a w połączeniu z option 82 to nawet w logi nie trzeba zaglądać :)

Ostatnio edytowany przez Nicram (2017-04-15 10:45:58)

Offline

 

#10  2017-04-15 13:35:55

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: debian i funkcjonalość IP source Guard

Wrzuciłem sobie to kea, na razie mam tylko Ip4 ale chodzi grzecznie, jako user dhcp.
Odpalam przez daemontoolsa (moja ulubiona metoda):

Kod:

#!/bin/sh

exec 2>&1
KEA4="/usr/sbin/kea-dhcp4"
getcap $KEA4 | grep cap_net_raw 2>&1>/dev/null || setcap cap_net_raw,cap_net_bind_service+ep $KEA4

exec /usr/bin/setuidgid dhcp $KEA4 -c /etc/kea/kea.conf

W święta się pobawię podłączeniem jej do Mysqla i adresacją IPv6 Unique Local Address, IPv6 mam w ramach [url=https://dug.net.pl/drukuj/331/automatyczne_wlaczenie_ipv6___tunel_6to4_przy_starcie_pppoe_/]6to4[/url], także NATu nie uniknę.

Przy okazji spróbuję na kompie zrobić NAT64/DNS64 i puścić tablet z Andkiem po samym IPv6, zobaczę, co wybuchnie. xD

Ostatnio edytowany przez Jacekalex (2017-04-15 13:37:58)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)

[ Generated in 0.010 seconds, 10 queries executed ]

Informacje debugowania

Time (s) Query
0.00013 SET CHARSET latin2
0.00005 SET NAMES latin2
0.00115 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.117.103.185' WHERE u.id=1
0.00078 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.117.103.185', 1732744570)
0.00057 SELECT * FROM punbb_online WHERE logged<1732744270
0.00079 DELETE FROM punbb_online WHERE ident='3.139.108.48'
0.00090 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=29498 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00176 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=29498 ORDER BY p.id LIMIT 0,25
0.00083 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=29498
Total query time: 0.00701 s