= bubbalog =Дневникът на моето стадо

FreeBSD и mpd VPN server

Saturday 20.12.2008 15:16 EEST · Публикувано от в = FreeBSD =

Както вече писах и с вдна предишна статия, отдавна зарязах FreeBSD като чист вариант на операционна система за външен за мрежата рутер, тъй като намерих по-лек, оптимален и елегантен начин, но мисля няма да е излишно да се спомене и тази възможност на операционната система. След дълго пробване на разни варианти и сървъри, най-накрая се спрях на mpd – доста малък, лесен за инсталиране и настройка VPN сървър. Честно да си призная, това със сигурност е работело на FreeBSD 6.1, пробвах после и на 7.0 да го подкарвам, но беше за много малко време и нямам спомен дали беше успешно или остана само един красив опит. Така че – не се сърдете, ако не тръгне.

Първата стъпка разбира се е инсталирането на mpd от портовете:

#cd /usr/ports/net/mpd && make install clean

Следващата стъпка е копирането на конфигурационните файлове на техните места с техните работни имена:

#cp /usr/local/etc/mpd/mpd.conf.sample /usr/local/etc/mpd/mpd.conf
#cp /usr/local/etc/mpd/mpd.links.sample /usr/local/etc/mpd/mpd.links
#cp /usr/local/etc/mpd/mpd.secret.sample /usr/local/etc/mpd/mpd.secret

От тук натам е конфигурацията на самоя сървър. Като начало – конфигурационния mpd.conf фѝйл. Напишете следните редове, като редовете с коментар трябва да се коридират според вашите нужди и мрежа:

default:
load vpn0
vpn0:
new -i ng0 vpn0 vpn0
set iface disable on-demand
set iface enable proxy-arp
set bundle disable multilink
set bundle enable encryption
set link yes acfcomp protocomp
set link disable pap
set link enable chap
set link keep-alive 10 180
set ipcp yes vjcomp
set ipcp ranges (Server_IP) (client_IP) # да се сменят с конкретни адреси
set ipcp dns (DNS_IP_for_client) # да се смени с конкретен адрес на DNS
set bundle enable compression
set ccp yes mppc
set ccp yes mpp-e40
set ccp yes mpp-e128
set ccp yes mpp-stateless

След това се редактира mpd.links, като се добавят следните редове:

vpn0:
set link type pptp
set pptp enable incoming
set pptp disable originate

Въвеждат се имената и паролите на потребителите в mpd.secret файла по посочения по-долу начин. Реално, няма нужда теси имена и пароли да съществъват като реални потребители регистрирани на системата. Имената и паролите са само за пред VPN сървъра.

“user_login_name”    “user_password”

Задължително направете mpd.secret четим и работен само за root потребителя, все пак съдържа имена и пароли.

#chmod 600 mpd.secret

Накрая – добавете ред в /etc/rc.conf с който да стартирате mpd заедно със стартирането на системата.

mpd_enable=”YES”

С това инсталирането и настройката на VPN сървъра е приключена. След рестарт трябва да можете да се логнете безпроблемно (тук няма да засягам въпроса как се прави клиентската част на нещата). Другото останало за споменаване е, че това е настройка само за един клиент, т.е. – ако един се върже останалите чакат. Ако искате повече клиенти едновременно да се логват – просто размножете както са окомплектовани секциите от mpd.conf и mpd.links и сменете разбира се идентификаторите vpn0 и ng0 съответно с 1, 2, 3 и т.н.

Остави коментар

Писането на кирилица е задължително!
Коментари, които не са на кирилица ще бъдат изтрити без предупреждение.
Всеки коментари съдържащи 1 или повече линка, ще бъдат публикувани след одобрение.