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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
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
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 ipset i modułu bitmap:ip:mac. przykładowo:
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
http://ipset.netfilter.org/ipset.man.html#lbAU
Użycie w FW?
np:
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)
Offline
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
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 radvd.
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 net-misc/dhcp-4.3.4:
U I
+ + client : Install the dhclient program
+ + ipv6 : Add support for IP version 6
- - 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
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.
https://wiki.freeradius.org/guide/FAQ#how-do-i_does … -support-ipv6
https://freeradius.org/rfc/rfc6911.html
Pozdro
Ostatnio edytowany przez Jacekalex (2017-04-14 22:34:00)
Offline
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
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,
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:
/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)
Offline
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
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)
Offline
Jacekalex napisał(-a):
Retencja?
Albo jak robi my isp - wielka DB z ostatnimi dwoma latkami.
Albo statyczna adresacja w dhcp.
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
Wrzuciłem sobie to kea, na razie mam tylko Ip4 ale chodzi grzecznie, jako user dhcp.
Odpalam przez daemontoolsa (moja ulubiona metoda):
#!/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 6to4, 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)
Offline