Построение VPN шлюза на FreeBSD

Цель этой статьи - описать установку VPN сервера на шлюзе работающем под OS FreeBSD.
Круг задач, выполняемых VPN сервером достаточно широк - от подсчёта траффика, до контроля за работой пользователей в локальной сети.
Описанная система успешно работает в нескольких домашних сетях. Я постараюсь подробно описать шаги необходимые для построения VPN шлюза.

Основная идея

Пользователи локальной сети могут свободно работать в пределах сети, в случае необходимости получения доступа к внешнему трафику, пользователь подключается к VPN серверу и авторизируется использую свой логин/пароль.
Все необходимы средства для этого процесса имеются в наличии в ОС Window 98 и старше. Авторизация пользователей производится через CHAP, что обеспечивает должную безопастнось в локальных сетях.

Необходимы компоненты на шлюзовой машине

Для запуска VPN сервера необходимы следующие компоненты:

SQL сервер - PostgreSQL - хранение информации о пользователях
Radius сервер - GNU-Radius - авторизация и аккаунтинг пользователей
VPN демон - poptop - обеспечение подключения через VPN туннель
ppp - модифицированая версия ppp, с поддержкой спецефичный средств

Обсуждение и предложения по этой статье: здесь