mpd – vpn сервер на FreeBSD

Решено было поднять VPN-сервер на шлюзе с FreeBSD, дабы иметь полный, удобный доступ к ресурсам домашней сети. Компьютерный зоопарк довольно велик, да и не понятно за какой ОСью окажусь завтра, поэтому решил опробовать mpd. Так же одной из причин, по которой был выбран сервер mpd – это возможность подключения w!nd0w$-клиентов, без использования сторонних приложений.
Приступим. Всё происходит на:

# uname -a
FreeBSD имя_сервера 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Mon May 7 11:24:18 MSK 2012 root@имя_сервера:/usr/obj/usr/src/sys/конфиг_ядра i386
Сначала собираем ядро, добавив туда строки:

options NETGRAPH 
options NETGRAPH_ETHER 
options NETGRAPH_NETFLOW 
options NETGRAPH_SOCKET 
options NETGRAPH_TEE 
options NETGRAPH_BPF 
options NETGRAPH_IFACE 
options NETGRAPH_KSOCKET 
options NETGRAPH_PPP 
options NETGRAPH_PPTPGRE 
options NETGRAPH_TCPMSS 
options NETGRAPH_VJC 
options NETGRAPH_ONE2MANY 
options NETGRAPH_RFC1490 
options NETGRAPH_TTY 
options NETGRAPH_UI 
options NETGRAPH_MPPC_ENCRYPTION 
options NETGRAPH_MPPC_COMPRESSION 

Перед сборкой надо ещё положить «Alternative MPPC compression/decompression library» в /usr/src/sys/net/ (или с офф сайта), иначе сборка ядра закончится сообщением:

cc: /usr/src/sys/net/mppcc.c: No such file or directory
 cc: /usr/src/sys/net/mppcd.c: No such file or directory
 /usr/src/sys/netgraph/ng_mppc.c:84:22: error: net/mppc.h: No such file or directory
 mkdep: compile failed
 *** Error code 1

поэтому делаем:

cd /usr/src/sys/net/
 fetch /downloads/mppc-1.0.tgz
 tar -xvf mppc-1.0.tgz
 ee /usr/src/sys/modules/netgraph/mppc/Makefile

Меняем строку:
NETGRAPH_MPPC_COMPRESSION?= 0
на
NETGRAPH_MPPC_COMPRESSION?= 1
Ставим:

cd /usr/src/sys/modules/netgraph/mppc
 make
 make install
 make clean

И только теперь собираем ядро.
После того как ядро на FreeBSD собрали без ошибок и загрузили его, переходим непосредственно к нашему VPN-серверу mpd5.
Не забываем обновить порты. Потом устанавливаем mpd5:

cd /usr/ports/net/mpd5
 make install clean
 rehash

Опции не менял:
Options for mpd 5.6

 [ ] NG_CAR Use ng_car kernel module from port (< 7.0 only)
 [ ] NG_IPACCT Use ng_ipacct kernel module from port

Установилось быстро, далее переходим к настройке.
В /etc/rc.conf добавляем строки, необходимые для автоматического старта mpd в фоновом режиме:

mpd_enable="YES"
 mpd_flags="-b"

Сами конфигурационные файлы md5 лежат в /usr/local/etc/mpd5/
Конфиг /usr/local/etc/mpd5/mpd.conf приводим к такому виду

Для просмотра скрытой части статьи вы должны авторизироваться [Login] или зарегистрироваться [Register] на сайте.

Теперь переходим к файлу, в котором хранятся учётные записи для VPN-клиентов ( /usr/local/etc/mpd5/mpd.secret ).
Туда вписываем учётные записи, для авторизации при подключении по ВПН. Файл выглядит примерно так

Для просмотра скрытой части статьи вы должны авторизироваться [Login] или зарегистрироваться [Register] на сайте.

где
user1..3 -это логины
password1..3 -это соответственно пароли
10.36.1.100..102 -это адреса, которые будут выданы клиентам

стартуем наш сконфигурированный mpd:

/usr/local/etc/rc.d/mpd5 start

Всё, можно пробовать подключаться.

Настраиваем клиента vpn на windows 7 (она только под рукой у меня)

Идём в Панель управления – Все элементы панели управления – Центр управления сетями и общим доступом и
выбираем «Настройка нового подключения или сети»

Далее «Подключение к рабочему месту»

«Использовать мое подключение к Интернету (VPN)»

заполняем поля

указываем логин и пароль, которые мы вписывали в /usr/local/etc/mpd5/mpd.secret

и «Подключить»
Готово, мы соединились по vpn.

Источник mediaunix.com/2012/07/25/mpd-vpn-server-na-freebsd/

Запись опубликована в рубрике *Lan&Wan, *Unix,*Linux. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Я не спамер This plugin created by Alexei91