Страница 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 придётся изголиться.

Вообще, задачка изрядно сложная, попробуй её сначала упростить)))