Настройка сервера :Part 1: NAS(mpd5) + freeradius + ng_car + Abills – раздаём инет
Автор: SHARK в FreeBSD 8 | Блог Связиста | Вторник 6 июля 2010Проблема : установить небольшой сервачек для раздачи инета в общаге . Для этого был закуплен за 200 гр. сервак Atlon 1.9 Гц , 40 гб жесткий , планка оперативы 256 мб , сетевуха 100 мбLAN. Долго искать готовый конфиг не пришлось …. огромное спасибо ……нужное решение нашел без проблем……однако возникало множество затруднений в процессе установки и настройки…..Вот я и решил написать для себя – ламера небольшую шпаргалку)))))…..итак поехали :
что нам нужно :
mpd5 – в качестве pppoe-сервера
radius – как сервер AAA
Abills – в качестве биллинговой системы
ng_car – шейпинг
Желательно чтобы у вас был уже установлен Apache+php+pma+mysql и пересобрано ядро :
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=1000
options IPFIREWALL_FORWARD
options NETGRAPH
options NETGRAPH_IPFW
options LIBALIAS
options NETGRAPH_NAT
options NETGRAPH_NETFLOW
options NETGRAPH_SPLIT
options NETGRAPH_ECHO
options NETGRAPH_ETHER
options NETGRAPH_TEE
options NETGRAPH_BPF
options NETGRAPH_IFACE
options NETGRAPH_KSOCKET
options NETGRAPH_MPPC_ENCRYPTION
options NETGRAPH_PPP
options NETGRAPH_PPTPGRE
options NETGRAPH_SOCKET
options NETGRAPH_TCPMSS
options NETGRAPH_VJC
либо загрузить модулем:
ipfw_nat.ko
ng_car.ko
Поддержку демона NATD в IPFW можно получить, загрузив аналогичной командой модуль ipdivert.ko
kldload ipdivert
Посмотреть подгружены ли модули можно по команде:
kldstat
Если их нет, то загружаем командами:
/sbin/kldload /boot/kernel/ipfw_nat.ko
/sbin/kldload /boot/kernel/ng_car.ko
Сразу выкладываю итоговый файл rc.conf должен выглядеть примерно так :
bsd# cat /etc/rc.conf
# -- sysinstall generated deltas -- # Mon Jul 5 03:41:07 2010
# Created: Mon Jul 5 03:41:07 2010
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
hostname="bsd.onat.in.ua"
ifconfig_em0="DHCP"
keymap="ru.koi8-r"
sshd_enable="YES"
mysql_enable="YES"
apache22_enable="YES"
firewall_enable="YES"
firewall_type="/etc/firewall"
defaultrouter="172.16.51.1"
inetd_enable="YES"
dummynet_enable="YES"
natd_interface="em0"
natd_enable="YES"
radiusd_enable="YES"
mpd_enable="YES"
А так же чтобы зайти по SSH пропишите в /etc/firewall :
bsd# cat /etc/firewall
add 1040 allow all from any to any via em0
add 1041 allow all from any to any via lo0
Разрешаем все чз интерфейс em0 -реальный и закольцованый -l0 .
bsd#ifconfig
em0: flags=8843 metric 0 mtu 1500
options=9b
ether 00:0c:29:94:f2:74
inet 172.16.51.167 netmask 0xffffff00 broadcast 172.16.51.255
media: Ethernet autoselect (1000baseT )
status: active
plip0: flags=8810 metric 0 mtu 1500
lo0: flags=8049 metric 0 mtu 16384
options=3
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
У меня появился еще один интерфейс (параллельный порт):
plip0: flags=8810 metric 0 mtu 1500
Кому интересно может почитать :
man plip
Убрать устройство можно и следующим способом:
в файле «/boot/loader.conf» или лучше «/boot/loader.conf.local» добавляем строчку :
hint.ppc.0.disabled="1"
Итак на сегодня приготовления завершены……продолжение : настройка Abills