Решено: pppd. Подскажите, тонкости. (pppd, pptpd)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Привет, всем.

Есть VPN сервер клиенты подключаются к нему. Дальше билинг считает трафик этих клиентов.
Все хорошо, но вот не задача. Как можно задать:
1. максимальное кол-во сессии?
2. максимальное кол-во времени простоя, до разрыва соединения?
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.

Прошу особо не ругать. :unsure:
Спасибо сказали:
BIgAndy
Сообщения: 1923

Re: Решено: pppd. Подскажите, тонкости.

Сообщение BIgAndy »

Voler писал(а):
19.04.2010 21:58
Есть VPN сервер клиенты подключаются к нему. Дальше билинг считает трафик этих клиентов.

Поподробнее о сервере. Что это? embedded- сервер (ака железный) какя-нть версия pptp на обычном компьютере и т.д.

1. максимальное кол-во сессии?

Не помню точно как, но параметр зависит от версии PPPD. Коренные изменения произошли в PPTPD 1.7.0
2. максимальное кол-во времени простоя, до разрыва соединения?

maxfail

Код: Выделить всё

 maxconnect n
              Terminate the connection when it has been available for network traffic for n seconds (i.e. n seconds after the first network control proto-
              col comes up).

       maxfail n
              Terminate after n consecutive failed connection attempts.  A value of 0 means no limit.  The default value is 10.

Это man.
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.

OS зависимо.
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Есть сервер на Ubuntu or Fedora

pptpd.conf

Код: Выделить всё

###############################################################################
# $Id: pptpd.conf,v 1.10 2006/09/04 23:30:57 quozl Exp $
#
# Sample Poptop configuration file /etc/pptpd.conf
#
# Changes are effective when pptpd is restarted.
###############################################################################

# TAG: ppp
# Path to the pppd program, default '/usr/sbin/pppd' on Linux
#
#ppp /usr/sbin/pppd

# TAG: option
# Specifies the location of the PPP options file.
# By default PPP looks in '/etc/ppp/options'
#
option /etc/ppp/options.pptpd

# TAG: debug
# Turns on (more) debugging to syslog
#
#debug

# TAG: stimeout
# Specifies timeout (in seconds) on starting ctrl connection
#
# stimeout 10

# TAG: noipparam
# Suppress the passing of the client's IP address to PPP, which is
# done by default otherwise.
#
#noipparam

# TAG: logwtmp
# Use wtmp(5) to record client connections and disconnections.
#
#logwtmp

# TAG: bcrelay <if>
# Turns on broadcast relay to clients from interface <if>
#
#bcrelay eth1
# TAG: delegate
# Delegates the allocation of client IP addresses to pppd.
#
# Without this option, which is the default, pptpd manages the list of
# IP addresses for clients and passes the next free address to pppd.
# With this option, pptpd does not pass an address, and so pppd may use
# radius or chap-secrets to allocate an address.
#
#delegate

# TAG: connections
# Limits the number of client connections that may be accepted.
#
# If pptpd is allocating IP addresses (e.g. delegate is not
# used) then the number of connections is also limited by the
# remoteip option.  The default is 100.
#connections 100

# TAG: localip
# TAG: remoteip
# Specifies the local and remote IP address ranges.
#
# These options are ignored if delegate option is set.
#
# Any addresses work as long as the local machine takes care of the
# routing.  But if you want to use MS-Windows networking, you should
# use IP addresses out of the LAN address space and use the proxyarp
# option in the pppd options file, or run bcrelay.
#
# You can specify single IP addresses seperated by commas or you can
# specify ranges, or both. For example:
#
# 192.168.0.234,192.168.0.245-249,192.168.0.254
#
# IMPORTANT RESTRICTIONS:
#
# 1. No spaces are permitted between commas or within addresses.
#
# 2. If you give more IP addresses than the value of connections,
#   it will start at the beginning of the list and go until it
#   gets connections IPs.  Others will be ignored.
#
# 3. No shortcuts in ranges! ie. 234-8 does not mean 234 to 238,
#   you must type 234-238 if you mean this.
# 4. If you give a single localIP, that's ok - all local IPs will
#   be set to the given one. You MUST still give at least one remote
#   IP for each simultaneous client.
#
# (Recommended)
localip 192.168.0.1
remoteip 192.168.0.10-200
# or
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245


options.pptpd

Код: Выделить всё

###############################################################################
# $Id: options.pptpd,v 1.11 2005/12/29 01:21:09 quozl Exp $
#
# Sample Poptop PPP options file /etc/ppp/options.pptpd
# Options used by PPP when a connection arrives from a client.
# This file is pointed to by /etc/pptpd.conf option keyword.
# Changes are effective on the next connection.  See "man pppd".
#
# You are expected to change this file to suit your system.  As
# packaged, it requires PPP 2.4.2 and the kernel MPPE module.
###############################################################################


# Authentication

# Name of the local system for authentication purposes
# (must match the second field in /etc/ppp/chap-secrets entries)
#name pptpd

# Strip the domain prefix from the username before authentication.
# (applies if you use pppd with chapms-strip-domain patch)
#chapms-strip-domain


# Encryption
# (There have been multiple versions of PPP with encryption support,
# choose with of the following sections you will use.)


# BSD licensed ppp-2.4.2 upstream with MPPE only, kernel module ppp_mppe.o
# {{{
#refuse-pap
#refuse-chap
#refuse-mschap
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
#require-mschap-v2
# Require MPPE 128-bit encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
#require-mppe-128
# }}}
# OpenSSL licensed ppp-2.4.1 fork with MPPE only, kernel module mppe.o
# {{{
#-chap
#-chapms
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
#+chapms-v2
# Require MPPE encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
#mppe-40   # enable either 40-bit or 128-bit, not both
#mppe-128
#mppe-stateless
# }}}


# Network and Routing

# If pppd is acting as a server for Microsoft Windows clients, this
# option allows pppd to supply one or two DNS (Domain Name Server)
# addresses to the clients.  The first instance of this option
# specifies the primary DNS address; the second instance (if given)
# specifies the secondary DNS address.
#ms-dns 10.0.0.1
#ms-dns 10.0.0.2
ms-dns 87.240.1.1
ms-dns 87.240.1.2

# If pppd is acting as a server for Microsoft Windows or "Samba"
# clients, this option allows pppd to supply one or two WINS (Windows
# Internet Name Services) server addresses to the clients.  The first
# instance of this option specifies the primary WINS address; the
# second instance (if given) specifies the secondary WINS address.
#ms-wins 10.0.0.3
#ms-wins 10.0.0.4

# Add an entry to this system's ARP [Address Resolution Protocol]
# table with the IP address of the peer and the Ethernet address of this
# system.  This will have the effect of making the peer appear to other
# systems to be on the local ethernet.
# (you do not need this if your PPTP server is responsible for routing
# packets to the clients -- James Cameron)
#proxyarp
# Normally pptpd passes the IP address to pppd, but if pptpd has been
# given the delegate option in pptpd.conf or the --delegate command line
# option, then pppd will use chap-secrets or radius to allocate the
# client IP address.  The default local IP address used at the server
# end is often the same as the address of the server.  To override this,
# specify the local IP address here.
# (you must not use this unless you have used the delegate option)
#192.168.0.237
#192.168.1.1:192.168.1.2

# Logging

# Enable connection debugging facilities.
# (see your syslog configuration for where pppd sends to)
debug

# Print out all the option values which have been set.
# (often requested by mailing list to verify options)
dump


# Miscellaneous

# Create a UUCP-style lock file for the pseudo-tty to ensure exclusive
# access.
lock

# Disable BSD-Compress compression
nobsdcomp

# Disable Van Jacobson compression
# (needed on some networks with Windows 9x/ME/XP clients, see posting to
# poptop-server on 14th April 2005 by Pawel Pokrywka and followups,
# http://marc.theaimsgroup.com/?t=111343175400006&r=1&w=2 )
#novj
#novjccomp

# turn off logging to stderr, since this may be redirected to pptpd,
# which may trigger a loopback
nologfd
# put plugins here
# (putting them higher up may cause them to sent messages to the pty)
name pptp
+pap
-chap
plugin ./billin.so


# и если не будет трафика, то соединение будет разрываться так?
maxconnect 1200
# Максимальное кол-во ошибок?
maxfail 10
man прочел, но решил спросить у людей.

BIgAndy писал(а):
19.04.2010 22:40
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.

OS зависимо.

Интересно как проверить?
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Alex2ndr »

Voler писал(а):
19.04.2010 21:58
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.

Знаю как сделать это для клиента -
Выдержка из man pppd

Код: Выделить всё

unit num
Sets the ppp unit number (for a ppp0 or ppp1 etc interface name)
for outbound connections.

Но для входящих такой опции нету... Может есть иной путь?
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Да это я видел, но вот еще вопрос. Как избежать повторяющихся адресов? Т.е. разным клиентам иногда выдается один и тот же адрес.
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение arkhnchul »

ipp.txt
ЗЫ сори, вру.
Losing is fun!
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
19.04.2010 21:58
1. максимальное кол-во сессии?
2. максимальное кол-во времени простоя, до разрыва соединения?
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.
1 и 3 пунктвполне традиционно решается radius-ом.
2-й пункт: параметр idle. и, кажется, radius-у он тоже может быть передан. а, значит, модифицирован персонально для клиента.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

sash-kan писал(а):
20.04.2010 18:28
Voler писал(а):
19.04.2010 21:58
1. максимальное кол-во сессии?
2. максимальное кол-во времени простоя, до разрыва соединения?
3. И можно указать номер интерфейса pppX? Т.е. чтобы начался с ppp1 например.
1 и 3 пунктвполне традиционно решается radius-ом.
2-й пункт: параметр idle. и, кажется, radius-у он тоже может быть передан. а, значит, модифицирован персонально для клиента.


А если без радиус?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
21.04.2010 08:53
А если без радиус?
как реализуете — напишите сюда, не сочтите за труд. может быть кому-то ещё это понадобится.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Так разобрался, но остался еще один вопрос.
unit пишем в конфиг option /etc/ppp/pptpd-options тут у меня лежат настройки для pppd
maxconnect пишем /etc/pptpd.conf

Но есть вопрос, следующий. Может ли передавать клиентам определенные маршруты?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
21.04.2010 16:13
unit пишем в конфиг option /etc/ppp/pptpd-options тут у меня лежат настройки для pppd
параметр unit для серверного pppd теряет всякий смысл.

Voler писал(а):
21.04.2010 16:13
maxconnect пишем /etc/pptpd.conf
вы man pppd смотрели на предмет смысла этой опции?

Voler писал(а):
21.04.2010 16:13
Может ли передавать клиентам определенные маршруты?
а смысл? это же туннель, а не бродкастовая среда. всё равно все до одного пакета дойдут только до второго конца туннеля. и промазать у них нет физической возможности.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

sash-kan писал(а):
21.04.2010 20:13
Voler писал(а):
21.04.2010 16:13
unit пишем в конфиг option /etc/ppp/pptpd-options тут у меня лежат настройки для pppd
параметр unit для серверного pppd теряет всякий смысл.


Нет не теряет, если на сервере есть pppd и серверная часть и сам сервер подключается к прову.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
21.04.2010 20:43
Нет не теряет, если на сервере есть pppd и серверная часть и сам сервер подключается к прову.
у вас в первом посте написано про pptp-сервер. я в этом ключе и пишу. если вы уже переключились на клиентские настройки, так предупреждайте заранее (лучше отдельной темой).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Я просто указал вам, на разницу. Первый пост подправлю, и укажи тогда в чем я не прав maxconnect?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
21.04.2010 22:05
и укажи тогда в чем я не прав maxconnect?

man pppd:

Код: Выделить всё

maxconnect n
              Terminate the connection when it has been available for network traffic for n seconds
              (i.e. n seconds after the first network control  protocol comes up).
по-моему, вполне ясно и недвусмысленно. translate.google.com только с толку сбивает в этом конкретном случае.
всё ещё непонятно? вольное корявое изложение:
разорвать соединение, когда пройдёт n секунд его доступности для сетевого трафика (т.е. через n секунд после первого обмена контрольной информацией).

если вам нужна именно такая реакция, прошу прощения, значит я невнимательно следил за развитием топика.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Изначально, нужно был разрыв при простое. Но так, как не нашел нужного параметра, то решил пойти этим путем. Значит man я понял и безе перевода правильно.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
22.04.2010 08:39
Но так, как не нашел нужного параметра
sash-kan писал(а):
20.04.2010 18:28
2-й пункт: параметр idle.
или я опять чего-то не понимаю?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

sash-kan писал(а):
22.04.2010 10:52
Voler писал(а):
22.04.2010 08:39
Но так, как не нашел нужного параметра
sash-kan писал(а):
20.04.2010 18:28
2-й пункт: параметр idle.
или я опять чего-то не понимаю?

Спасибо.

Но вот по поводу маршрутов, что скажете. Реально или нет?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
22.04.2010 14:30
Но вот по поводу маршрутов, что скажете. Реально или нет?
скажите, чего вы хотите добиться, а я попробую подсказать, как это можно было бы решить.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Если использовать при поднятии VPN подключения, его же для выхода в интернет то маршруты писать не нужно. А если снять галку, и использовать для выхода в интернет основное подключение, то если я хочу пустить через VPN канал нужный мне трафик. То я пишу маршрут
route -p add ресурс mask 255.255.255.252 ip_vpn

Вопрос в том, могу я передавать маршрут клиенту при подключении к VPN серверу?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
22.04.2010 16:10
Вопрос в том, могу я передавать маршрут клиенту при подключении к VPN серверу?
нет, конечно.
а совет вам и не нужен. вы сами знаете, как это должно быть реализовано:
Voler писал(а):
22.04.2010 16:10
route -p add ресурс mask 255.255.255.252 ip_vpn
всё правильно, сложной маршрутизацией клиент должен заниматься сам. в соответствии с point-to-point-протоколом сервер не может даже повлиять на решение клиента, делать или не делать маршрут через туннель дефолтным. что уж говорить про более сложные вещи?

вопрос ваш возник, видимо, в связи с существованием rfc3442. помимо всего прочего флейма, который можно по этому поводу развести, взаимодействие dhcp-сервера с клиентом — это несколько иные взаимоотношения, нежели между туннельными клиентом и сервером.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Спасибо. За все разъяснения.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: pppd. Подскажите, тонкости.

Сообщение sash-kan »

Voler писал(а):
22.04.2010 18:34
Спасибо. За все разъяснения.
пожалуйста. надеюсь, что хоть в чём-то смог помочь.

p.s. по поводу практики применения idle:
вы-то, как провайдер, разрываете соединение из лучших побуждений. вот только многим клиентам это видится несколько с иной точки зрения.
и они довольно быстро вычисляют, что, например, ping чего-нибудь помогает сохранению жизни сессии.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
Voler
Сообщения: 498
ОС: Fedora

Re: Решено: pppd. Подскажите, тонкости.

Сообщение Voler »

Пинг или любые другие пакеты icmp можно запретить с определенной подсети или устройства. :blush:
Но это не нужно.

Еще раз спасибо.
Топик можно закрыть.
Спасибо сказали: