Перейти к содержимому
Калькуляторы

Народ! Вопрос таков: есть ли такая прога, чтоб по FreeBSD привязывала IP к MAC адресу.. чтоб при несоответствии пользователя не пускала, или, хотя бы в лог писала...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Гость

Сам как-то делал, уже не помню. Просто создаешь статическую таблицу arp в скрипте на запуск, скрипт размещай в /usr/local/etc/rc.d/staticarp.sh

Поподробнее пошукай на www.opennet.ru

 

что-то вроде того

 

#!/bin/sh

#

#Очистка arp

/usr/sbin/arp -d -a

#создаем стат. таблицу

/usr/sbin/arp -s 192.168.1.5 00:90:27:40:00:00

.......

 

 

Должно работать

 

Ну можно, в принципе.

arp -f <filename>

а в файле filename прописать соответствия, по одному в строке:

192.168.1.2 0:60:52:b:28:b1

(и так далее)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

пробовал статически указывать... и толку нет... при изменении IP просто создается еще одна запись....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ne mozhet byt'.. esli deleash

arp -s 192.168.1.1 00:00:00:00:00:00

to nikakoj drugoj host s drugim mac'om ne budet imet' dostupa k kompu....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не работает! приписываю arp -s 192.168.112.2 00:00:00:00:00:00

ага, теперь при при наборе arp -n -a пишет что 192.168.112.2 at 00:00:00:00:00:00 on rl0 permanent [ethernet]..

Теперь меняю у себя на машине 192.168.112.2 на 192.168.112.20, вхожу в сеть, опять пишу arp -n -a и.... оно пишет что:

192.168.112.2 at 00:00:00:00:00:00 on rl0 permanent [ethernet]

192.168.112.20 at 00:00:00:00:00:00 on rl0 [ethernet]

 

И че с ним делать теперь????

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Меня же более интересует как можно предотвратить подмен IP либо MAC.. как сделать чтоб доступ к серверу имели те компы, IP и MAC адреса которых прописаны в файле... и при изменении одного из них, сервер не его пускал...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Меня же более интересует как можно предотвратить подмен IP либо MAC.. как сделать чтоб доступ к серверу имели те компы, IP и MAC адреса которых прописаны в файле... и при изменении одного из них, сервер не его пускал...

 

Не понятно, в чем проблема. На нужные сервисы и в файрволе ставишь доступ только для зарегестированных адресов (allow hosts в самбе, например или acl в ipfw). Левые не пролезут (про подделку mac уже много сказано).

 

Если уж совсем не хочешь видеть нерегестренных адресов - можно попробовать команду ifconfig ethX -arp она должна отключить arp протокол на интерфейсе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А вот еще. Добавляем в usr/local/etc/ rc.d/staticarp.sh

 

 

# Запрещаем присвоение свободных IP.

/usr/sbin/arp -s 192.168.1.2 0:0:0:0:0:0 pub

 

где 192.168.1.2 - неиспользуемый адрес, т.е. сервер никогда не "увидит" хост с таким адресом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

т.е. запретить присвоение свободныйх IP.. это если у меня в сетке 15 компов, то надо прописыать:

arp -s 192.168.112.16 0:0:0:0:0:0 pub

arp -s 192.168.112.17 0:0:0:0:0:0 pub

..................

arp -s 192.168.112.255 0:0:0:0:0:0 pub

Я правильно понял?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

da pravilno..

ps. a zachem dopisyva't v konce PUB ?

ili mozhno tak zdelat'..

for i in `seq 15 255`; do

arp -s 192.168.1.$i 00:00:00:00:00:00

done

 

have fun ;) esli koneshno subnet 255.255.255.0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А нельзя ли этот процесс прописывания запретов на присвоение свободных IP как-нибудь автоматизировать? Потому что вручную 240 строчек это и запарится можно..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ja zhe tebe napisal, blin!

for i in `seq 16 254`;do

arp -s 192.168.1.$i 00:00:00:00:00:00

done

 

a 15 zapishi v ruchnuju, i zakin eto vsio v startup

simple

udachi

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Лучше сразу VPN строй. http://ettercap.sourceforge.net/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В MikroTik-е это проще реализовано.

Прописываешь в ARP таблице IP и MAC пользователей и меняешь ARP аргумент интерфейса на "reply only".

Всё.

Роутер будет отвечать только тем, кто прописан в таблице.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для Фри есть замечаетльный патч который заставляет корректно обрабатывать -arp флаг на интерфейсе.

А именно чтоб рутер его отдавал сам а не приходилось статиком писать.

Я не фанат забивать всю подсеть левыми маками.

поэтому накладывается патч прописывается ethers и всё.

в связке с DHCPD и динамичемкой обновлением зон + VPN для инета.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для Фри есть замечаетльный патч который заставляет корректно обрабатывать -arp флаг на интерфейсе.

А именно чтоб рутер его отдавал сам а не приходилось статиком писать.

Я не фанат забивать всю подсеть левыми маками.

поэтому накладывается патч прописывается ethers и всё.

в связке с DHCPD и динамичемкой обновлением зон + VPN для инета.

Ты адреса через DHCP раздаешь? А что делаешь, если очередной юный куль хацкер поднимает в чисто экспериментальных целях собственный DHCP сервер?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Идёт постоянный опрос по портам раз в 10 минут.

опрос на 80 21 25 110 143 53 67. всё что зафильтровано тоже валится в отдельный лог.

если обнаруживается открытый 67 udp то делается snmp set port DOWN и мыло мне. Для разбирательств и раздачи люлей.

Жестоко. Другого варианта не видел.

За потора года прецендентов небыло.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не знаю, как в BSD, а в Linux можно все сделать красиво и жестоко:

 

iptables -P FORWARD DROP

iptables -A FORWARD -i eth1 -s 192.168.0.5 -m mac --mac-source 00:80:AD:90:B7:1A -p ALL -j ACCEPT

 

Ну, если очень много адресов, то можно читать из файла:

 

#accept all from host, listed in $ACCEPT_FILE

while read iface ip mac

do

if [ "${iface:0:1}" != "#" ] && [ "$iface" ]

then

CMDLINE="$IPTABLES -A FORWARD -p ALL"

CMDLINE="$CMDLINE -i $iface"

if [ "$ip" ]

then

CMDLINE="$CMDLINE -s $ip"

fi

if [ "$mac" ]

then

CMDLINE="$CMDLINE -m mac --mac-source $mac"

fi

CMDLINE="$CMDLINE -j ACCEPT"

$CMDLINE

fi

done < $ACCEPT_FILE

 

C DHCP, естественно, придется мудрить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

незнаю как на линуксе а фря фильтровать по макам с детства умеет.

а мы здесь говорим о arp таблице и непосредственном блокировании arp таблицы.

это несколько друго что вы написали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Почему бы не поискать в портах ?

/usr/ports/net/arpwatch

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Извиняюсь за глупый вопрос, но как получить от arpwatch ожидаемый результат? Какие именно функции он выполняет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Извиняюсь за глупый вопрос, но как получить от arpwatch ожидаемый результат? Какие именно функции он выполняет?

 

Отправлят по e-mail и в syslog оповещения о различных событиях.

События описаны в man-е в разделе "REPORT MESSAGES" и "SYSLOG MESSAGES" соответственно.

 

e-mail можно скармливать обработчику через .forward.

сообщения syslog через "|/bin/prg" в syslogd.conf.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Желательно запускать arpwatch на конкретном интерфейсе со своей базой.

 

0 0.0 9.8 2544 1960 ?? S Wed06PM 0:10.55 /usr/local/sbin/arpwatch -f /usr/local/arpwatch/arp1.dat -i rl0 -m arp

root 192 0.0 9.5 2544 1908 ?? S Wed06PM 0:10.76 /usr/local/sbin/arpwatch -f /usr/local/arpwatch/arp2.dat -i rl1 -m arp

root 194 0.0 9.6 2544 1928 ?? S Wed06PM 0:10.37 /usr/local/sbin/arpwatch -f /usr/local/arpwatch/arp3.dat -i ep0 -m arp

 

как пример

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.