pptpd.conf − конфигурация демона PPTP VPN
pptpd(8) читает опции из этого файла, обычно /etc/pptpd.conf. Большинство опций могут быть изменены из командной строки. Локальный и удалённый IP−адреса для клиентов должны выбираться из конфигурационного файла или из конфигурационных файлов pppd(8).
option файл−опций
Имя файла опций, который будет передан в pppd(8) вместо файла по умолчанию /etc/ppp/options, в котором могут быть заданы опции специфичные для PPTP. Равнозначно опции командной строки −−option.
stimeout секунды
Количество секунд для ожидания PPTP−пакетов перед отделением программы pptpctrl(8) управляющей клиентом. По умолчанию − 10 секунд. Эта возможность защищает от отказа в обслуживании. Равнозначно опции командной строки −−stimeout.
logwtmp
Обновить wtmp(5) при подключении или отключении пользователей. Обратитесь к wtmp(1).
debug |
Включает отладочный режим, отправку отладочной информации в syslog(3). Не влияет на отладку pppd(8). Равнозначно опции командной строки −−debug. |
bcrelay внутренний−интерфейс
Включает широковещательный режим, отправляя клиентам все широковещательные пакеты принятые на внутреннем интерфейсе сервера. Равнозначно опции командной строки −−bcrelay.
connections n
Ограничение на количество клиентских подключений, которые могут быть приняты. Если pptpd выделяет IP−адреса самостоятельно (то есть опция delegate не используется), тогда количество подключений также ограничивается опцией remoteip. Значение по умолчанию − 100.
delegate
Делегирует pppd(8) выделение IP−адресов клиентов. Без этой опции, используемой по умолчанию, pptpd управляет списком IP−адресов клиентов и передаёт следующий свободный адрес в pppd. При указании этой опции pptpd не передаёт адрес в pppd, поэтому pppd может воспользоваться RADIUS−сервером или файлом chap−secrets для выделения адресов.
localip указание−IP
Один или несколько IP−адресов для использования на локальном конце туннелей PPP−каналов между сервером и клиентом. Если задан только один адрес, этот адрес используется для всех клиентов. Иначе, должен быть задан один адрес на каждого клиента, а если свободные адреса отсутствуют, то любые новые клиенты будут отброшены. Опция localip будет проигнорирована, если используется опция delegate.
remoteip указание−IP
Список IP−адресов для назначения удалённым PPTP−клиентам. Каждый подключенный клиент должен иметь разный адрес, поэтому в списке должно быть по меньшей мере столько адресов, сколько одновременных клиентов. Предпочтителен некоторый запас, поскольку вы не сможете изменить этот список без перезапуска pptpd. Если пул IP−адресов будет исчерпан, в syslog(3) будет отправлено предупреждение. Опция remoteip будет проигнорирована, если используется опция delegate.
noipparam
По умолчанию, в сценарий ip−up с помощью опции pppd(8) ipparam передаётся исходный IP−адрес клиента. Опция noipparam предотвращает это поведение. Равнозначно опции командной строки −−noipparam.
listen IP−адрес
IP−адрес локального интерфейса для прослушивания входящих PPTP−соединений (TCP−порт 1723). Равнозначно опции командной строки −−listen.
vrf имя−vrf
VRF для ожидания TCP−подключений и пакетов GRE. Равнозначно опции командной строки −−vrf.
pidfile PID−файл
Указывает альтернативное место расположения файла с идентификатором процесса (по умолчанию /var/run/pptpd.pid). Равнозначно опции командной строки −−pidfile.
speed скорость
Указывает скорость (в битах в секунду) для передачи PPP−демону в качестве скорости интерфейса для пары tty/pty. Она игнорируется некоторыми PPP−демонами, такими как pppd(8) в Linux. По умолчанию это 115200 байт в секунду, некоторые реализации интерпретируют это значение как означающие "без ограничений". Равнозначно опции командной строки −−speed.
Вышеуказанные указания−IP (для опций localip и remoteip) могут быть списком IP−адресов (например 192.168.0.2,192.168.0.3), диапазоном (например 192.168.0.1−254 или 192.168.0−255.2) или их сочетанием (например 192.168.0.2,192.168.0.5−8). Правильными парами могут быть (в зависимости от использования VPN):
localip 192.168.0.1
remoteip 192.168.0.2−254
или
localip 192.168.1.2−254
remoteip 192.168.0.2−254
Выделите диапазон адресов вашей локальной сети для использования клиентами.
В /etc/ppp/options.pptpd установите опцию proxyarp. В pptpd.conf не задавайте опцию localip, но установите remoteip для выделенного диапазона адресов. Включите продвижение пакетов в ядре (например, с помощью /proc/sys/net/ipv4/ip_forward).
Сервер будет объявлять клиентов в локальную сеть используя ARP, предоставляя свой собственный Ethernet−адрес. bcrelay(8) не требуется.
Выделите для клиентов подсеть которая маршрутизируются из вашей локальной сети, но не является частью вашей локальной сети.
В pptpd.conf установите localip в единственный адрес или диапазон IP−адресов выделенной подсети, установите remoteip в диапазон IP−адресов выделенной подсети. Включите продвижение пакетов ядром (например, с помощью /proc/sys/net/ipv4/ip_forward). Локальная сеть должна иметь маршрут к клиентам используя сервер в качестве шлюза.
Сервер буден передавать пакеты в неизменном виде между клиентами и локальной сетью. Для поддержки широковещательных протоколов, таких как NETBIOS, может потребоваться bcrelay(8).
Выделите подсеть для клиентов, которые не маршрутизируются из вашей локальной сети, и к которой нет других маршрутов с сервера (например 10.0.0.0/24).
Установите в localip один IP−адрес из подсети (например, 10.0.0.1), установите в remoteip диапазон IP−адресов из подсети (например, 10.0.0.2−200). Включите продвижение пакетов ядром (например, с помощью /proc/sys/net/ipv4/ip_forward). Включите трансляцию адресов на eth0 (например, iptables −t nat −A POSTROUTING −o eth0 −j MASQUERADE).
Сервер будет транслировать пакеты между клиентами и локальной сетью. Клиенты будут обращаться к локальной сети как имеющие адрес, принадлежащий серверу. Локальной сети не потребуется явный маршрут к клиентам. Для поддержки широковещательных протоколов, таких как NETBIOS, потребуется bcrelay(8).
pptpd(8) принимает управляющие соединения на TCP−порту 1723, и затем использует GRE (протокол 47) для обмена пакетами данных. Добавьте эти правила к вашей конфигурации iptables(8), или используйте их как основу для ваших собственных правил:
iptables −−append INPUT −−protocol 47 −−jump ACCEPT
iptables −−append INPUT −−protocol tcp −−match tcp \
−−destination−port 1723 −−jump ACCEPT
pppd(8), pptpd(8), pptpd.conf(5).
Перевод на русский язык выполнил Владимир Ступин <vladimir@stupin.su>.