Страница 1 из 1
Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-16 23:29:50
stufford
Всем доброе время суток! Я жутко извиняюсь что еще раз создал отдельную тему по поводу mpd + radius + mysql, но все же...
У меня есть несколько вопросов. Работаю с FreeBSD недолго, с такой задачей столкнулся впервые. Вот вопросы:
1. в сервере используются 2 сетевые карты. одна смотрит в локалку, другая в сеть провайдера. К провайдеру идет подключение через PPPOE.
ПОдскажите, пожалуйста, как вообще настроить PPPOE подключение, и.. как сделать так, что бы фаерволл пускал VPN клиентов в инет через это подключение. + резал им скорость. Заранее очень благодарен.
Сервак настроен по статье mpd + radius + mysql(что-то такое). VPN подключается, все нормалньо. но в инет не пускает даже по ethernet доступу к провайдеру(с этим тоже надо разобраться), Но важнее всего это PPPOE. Заранее спасибо.
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-16 23:32:41
schizoid
я конечно не телепат, но подозреваю, что НАТишь не через тот интерфейс
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-17 10:30:28
stufford
В общем. rc.conf:
Код: Выделить всё
defaultrouter="10.10.16.1"
hostname="stuffs"
ifconfig_dc0="inet 10.10.16.30 netmask 255.255.255.0" #смотрит в инет
ifconfig_rl0="inet 172.10.146.1 netmask 255.255.255.0" #смотрит в локалку
keymap="ru.koi8-r"
sshd_enable="YES"
usbd_enable="YES"
mysql_enable="YES"
mpd_enable="YES"
radiusd_enable="YES"
pf_enable="YES"
pf_rules="/etc/pf.rules"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
файл: pf.rules
Код: Выделить всё
ext_ip="10.10.16.30" # внешний ip-адрес сервера
int_if="rl0" # интерфейс смотрящий в локалку
int_net_vpn="10.10.16.0" # внутренняя VPN-сеть
local_net="172.10.146.0" # внутрення локалка
int_ip="172.10.146.1" # внутренний ип в локалке
nat on rl0 from $int_net_vpn to any -> $ext_ip # собсно NAT
pass quick on lo0 all # разрешаем все на lo0
pass quick from $ext_ip to any # Разрешаем траф
pass quick from any to $ext_ip # на внешнем ip
pass quick from $int_net_vpn to any # разрешаем любой траф
pass quick from any to $int_net_vpn # по впн-сети
block in quick on $int_if proto { tcp udp } from $local_net to $int_ip port { 25 110 143 3128 3306 } # блокируем платные сервисы из локалки
pass in quick on $int_if from $local_net to $int_ip
block in all # все осальное блокируем по умолчанию
листинг из ядра:
Код: Выделить всё
options NETGRAPH # собственно поддержка netgraph
options NETGRAPH_PPP # поддержка PPP в netgraph
options NETGRAPH_PPTPGRE # поддержка gre-туннелирования
options IPFIREWALL # включаем поддержку ipfw
options IPFIREWALL_DEFAULT_TO_ACCEPT # политика по умолчанию - ACCEPT
options IPDIVERT # включаем divert-сокеты (понадобится для статистики)
Подскажите что не так? или что еще показать надо?
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-17 11:02:06
schizoid
я с пф не работал, но
nat on rl0 from $int_net_vpn to any -> $ext_ip # собсно NAT
$ext_ip - я ж надеюсь ставишь тот, что тебе выдает пров при ВПНе?
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-17 12:45:19
stufford
Ну почти )) В данный момент я пытаюсь настроить хотя бы по Ethernet )).
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-17 14:49:55
stufford
Хелп плиз. очень нужно решить данную проблему до конца недели. Возмажно решение этой проблемы путём включения net.inet.ip.forwarding=1 ?
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2007-09-17 14:58:59
schizoid
ну или в рц.конф добавить gateway_enable="YES", что собсно и приводит к тому, что ип.форвард переходит в 1.
Re: Еще раз про mpd + radius + mysql.
Добавлено: 2008-05-14 18:40:20
Гость
1) В ядро вкомпилен ipfw (options ipfirewall), проверь загружен ли pf коммандой kldstat
2) Настройку pppoe смотри в хендбуке, там все легко делается встроенным ppp
3) Натить тебе придётся интерфейс Ethernet провайдера, если есть доступ к внешней локалке и потом сам интерфейс ppp, pf тебе здесь поможет больше, т.к. с ipfw и natd придётся изголиться.
Вообще, задачка изрядно сложная, попробуй её сначала упростить)))