Как связать kernel NAT и фильтрацию по MAC

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
UsCr
мл. сержант
Сообщения: 77
Зарегистрирован: 2010-09-01 12:16:57

Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение UsCr » 2010-10-24 14:25:23

Здравствуйте. У меня настроем ядерный НАТ. Проброшен порт для ssh. Как разрешить ходить на ssh хостам с определённым МАС адресом?

Вот мой конфиг:
#!/usr/local/bin/bash

Progress_service=\
"redirect_port tcp 10.44.44.215:22 43358 \
redirect_port tcp 10.44.44.215:51413 51413"

add="ipfw add"
allow="ipfw add allow"
deny="ipfw add deny"
wan="rl0"
lan="rl1"
tun="ng0"

ks="keep-state"
cs="ipfw add check-state"

deny_host=`cat /var/ipfw/host.deny`

ipfw -f flush
#$allow all from any to any

##################Bad boys:########################
for i in $deny_host
do
$deny ip from $i to any
$deny ip from any to $i
done
###################################################

$allow ip from any to any via lo0
$allow ip from any to any via $lan

$deny ip from 127.0.0.0/8 to any
$deny ip from any to 127.0.0.8/8

#$deny ip from any to 192.168.0.0/16 in recv $wan
#$deny ip from 192.168.0.0/16 to any in recv $wan
$deny ip from any to 172.16.0.0/12 in recv $wan
$deny ip from 172.16.0.0/12 to any in recv $wan
#$deny ip from any to 10.0.0.0/8 in recv $wan
#$deny ip from 10.0.0.0/8 to any in recv $wan
$deny ip from any to 169.254.0.0/16 in recv $wan
$deny ip from 169.254.0.0/16 to any in recv $wan

$deny ip from any to 192.168.0.0/16 in recv $tun
$deny ip from 192.168.0.0/16 to any in recv $tun
$deny ip from any to 172.16.0.0/12 in recv $tun
$deny ip from 172.16.0.0/12 to any in recv $tun
$deny ip from any to 10.0.0.0/8 in recv $tun
$deny ip from 10.0.0.0/8 to any in recv $tun
$deny ip from any to 169.254.0.0/16 in recv $tun
$deny ip from 169.254.0.0/16 to any in recv $tun

ipfw nat 1 config log if $wan deny_in
ipfw nat 2 config log if $tun deny_in $Progress_service
$add nat 1 all from any to any via $wan
$add nat 2 all from any to any via $tun
В голову приходит только убрать проброс портов и добавить правило со skip to 1000 для пакетов, пришедших от нужного хоста. Где правило №1000 это ещё один НАТ на интерфейсе ng0 с проброшенным портом.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Ыть
проходил мимо

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение Ыть » 2010-10-24 17:44:42

Если не трудно - объясните, зачем вам нужет этот arpnet.
Вообще есть вариант такой, что прописать статикой соответствие mac-ip, а на файрволле прописать ip тем, кому можно ходить.

UsCr
мл. сержант
Сообщения: 77
Зарегистрирован: 2010-09-01 12:16:57

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение UsCr » 2010-10-24 18:59:57

Ыть писал(а):Если не трудно - объясните, зачем вам нужет этот arpnet.
Хочу успокоить свою параноидальную часть разума. Вообще я хочу потом ещё ходить на веб-интерфейс трансмиссии и ещё много куда, ssh - просто пример. Мне кажеться, фильтрация по макам гораздо секурнее фильтра по АйПи.
Ыть писал(а):Вообще есть вариант такой, что прописать статикой соответствие mac-ip, а на файрволле прописать ip тем, кому можно ходить.
Локалке я доверяю. В локалке только я :) Мне нужно пускать к себе снаружи. Сейчас внезапно понял, что мой конфиг - гавно. Через НАТ нужно пускать только локалку, тогда проблема отпадёт сама собой.

Ыть
проходил мимо

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение Ыть » 2010-10-24 19:44:45

Из вне - интересный подход обезопасить себя. :) Если кто-то из промежуточных провов пользует нат, то вся безопасность летит коту под хвост. Проще тогда ssh на порт 22222 перевесить. Если нужен web, то так же. А с чего вы взяли, что можно сменить постоянный ip в инете? или вы думаете, что его могут подделать? :)
Кстати, а как вы отнесетесь к тому, что у клиента, смотрящего из инета, поменяется сетевая карта? :-D

Вообще, если в локалке только Вы, я не понимаю смысл NAT'а.
Или у вас BSD aka NAS ? ;)

UsCr
мл. сержант
Сообщения: 77
Зарегистрирован: 2010-09-01 12:16:57

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение UsCr » 2010-10-24 20:00:49

Ыть писал(а):Из вне - интересный подход обезопасить себя. :) Если кто-то из промежуточных провов пользует нат, то вся безопасность летит коту под хвост.
Хм. Действительно. Об этом не подумал.
Ыть писал(а): Если нужен web, то так же. А с чего вы взяли, что можно сменить постоянный ip в инете? или вы думаете, что его могут подделать? :)
А разве не могут? Просто подсмотреть\угадать нужный адрес проще, чем МАС.
Ыть писал(а): Кстати, а как вы отнесетесь к тому, что у клиента, смотрящего из инета, поменяется сетевая карта? :-D
Изменю правило :)
Ыть писал(а): Или у вас BSD aka NAS ? ;)
Именно.

Ыть
проходил мимо

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение Ыть » 2010-10-24 21:15:44

UsCr писал(а):А разве не могут? Просто подсмотреть\угадать нужный адрес проще, чем МАС.
Не думаю. :) во-первых нужно угадать какие ip у вас разрешены. Если в подсети /16 доступно 65534 варианта - представьте какова вероятность в /0 :-D
Во-вторых - каким образом будет происходить подмена? Сейчас все провадеры и пользователи помещаются в vlan'ы, в которых даже если указать нужный вилан (что может RADIUS/DIAMETR не дать) то ничего полезного не сделать.
Я бы с этим не парился. Если на то пошло - можно сделать авторизацию по ssl сертификатам на сервере или на худой конец kerberos :-D

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение terminus » 2010-10-24 22:01:44

"Ыть" и UsCr!
Вы, оба два - скорее разберитесь с тем на каких участках сети при передаче трафика используются MAC адреса (адресация протоколов Канального уровня), а на каких IP адреса (адресация протоколов Сетевого уровня).

А нито я так чувствую счас сюда придет куча народа и начнет тролить над вами обеими, и над вашим желанием "фильтровать по МАС через интернет".

Подсказка уже была. Еще даю один цынк напочитать на досуге http://forum.lissyara.su/viewtopic.php?f=53&t=27386
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

snorlov
подполковник
Сообщения: 3681
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение snorlov » 2010-10-25 8:49:24

terminus писал(а):"Ыть" и UsCr!
Вы, оба два - скорее разберитесь с тем на каких участках сети при передаче трафика используются MAC адреса (адресация протоколов Канального уровня), а на каких IP адреса (адресация протоколов Сетевого уровня).
А нито я так чувствую счас сюда придет куча народа и начнет тролить над вами обеими, и над вашим желанием "фильтровать по МАС через интернет".
Подсказка уже была. Еще даю один цынк напочитать на досуге http://forum.lissyara.su/viewtopic.php?f=53&t=27386
Может они не знают волшебное слово "VPN"...

Ыть
проходил мимо

Re: Как связать kernel NAT и фильтрацию по MAC

Непрочитанное сообщение Ыть » 2010-10-25 9:52:53

У парня вопрос о фильтрации маков. На каком уровне маки, на каком ip работают я знаю.
Он спрашивал как отфильтровать маки - я его отбалтывал от этой идеи. :)