Контактная информация

По всем интересующим вас вопросам связывайтесь при помощи контактной информации приведенной на этой странице!

skype: metsof
email: accusser@gmail.com

В социальных сетях...

Форма обратной связи

Авторизация

Статьи об операционной системе Linux

Сайдбар

Подробный анализ туннельного протокола точка-точка (PPTP)

22 марта 2014

Протокол точка-точка (РРР) обеспечивает соединение TCP/IP между двумя компьютерами через последовательный интерфейс. Протокол применяется при работе с аналоговыми модемами, а также модемами ISDN, ADSL и UMTS. В Linux за соединение по протоколу РРР отвечает программа pppd. Она может использоваться как на клиентском компьютере, так и на сервере, но здесь будет рассмотрена только работа с клиентом. В данном разделе делается введение в основы РРР. В следующих разделах мы рассмотрим конкретные способы применения РРР при различных видах доступа к Интернету.

Варианты РРР



Программа pppd предназначена только для работы с РРР-соединениями, устанавливаемыми через последовательную телефонную линию, то есть через аналоговый модем. Для работы с ADSL-соединениями применяется три усовершенствованных варианта протокола: РРРоЕ, РРРоА или РРТР.

РРРоЕ.

Протокол двухточечного соединения через Ethernet — общедоступный документированный протокол, данные по которому содержатся в RFC 2516. Его основной недостаток заключается в том, что он ограничивает максимальный размер пакетов.

РРРоА.

Протокол туннелирования типа точка-точка по ATM — альтернатива РРРоЕ. Здесь ATM означает «асинхронный режим передачи» (Asynchronous Transler Mode).

РРТР.

Туннельный протокол типа точка-точка — протокол Microsoft, развитый из других стандартов, документация по которому также имеется в свободном доступе (RFC 2637). Первоначально он предназначался для обеспечения работы виртуальныхчастных сетей.

Аутентификация



Построение любого РРР-соединения начинается с аутентификации: это означает, что ваш компьютер должен быть опознан провайдером Интернета по логину и соответствующему паролю. Эта операция может осуществляться одним из двух способов: РАР и CHAP. CHAP, в свою очередь, имеет различные варианты (например, MS-CHAPv2), повышающие надежность соединения.

РАР.

Применяя протокол аутентификации пароля, клиент (то есть ваш компьютер) обычно передает логин и пароль в незашифрованном виде (также есть вариант РАР и с шифрованием).

CHAP.

При использовании протокола аутентификации по квитированию вызова сервер (то есть провайдер) при аутентификации отсылает клиенту так называемый «пакет challenge». Программа pppd использует эти данные, чтобы рассчитать из пароля хэш-значение. Затем pppd отсылает логин и хэш-значение обратно провайдеру (таким образом, необходимость передачи самого пароля отпадает).

Конфигурационные файлы и сценарии pppd



/etc/ppp/options. В /etc/ppp/options содержатся глобальные параметры pppd. Они устанавливаются по умолчанию для всех соединений, создаваемых pppd.

Если вы используете pppd для создания различных интернет-соединений (например, через аналоговый модем или ADSL-модем), в options должно содержаться как можно меньше настроек. Чтобы настраивать параметрами, пользуйтесь специальными файлами для работы с соединениями, находящиеся в /etc/ppp/peers/! Таким образом, вы будете избавлены от проблемы, когда параметр, подходящий

для варианта соединения А, может заблокировать соединение, создаваемое по варианту В.

/etc/ppp/peers/name. В /etc/ppp/peers/name содержатся параметры, касающиеся конкретного типа соединения. Чтобы запустить pppd с применением этих параметров, выполните следующую команду:

root# pppd call имя

Настройки в /etc/ppp/peers/name имеют приоритет перед /etc/ppp/options.



/etc/ppp/pap-secrets и chap-secrets. Эти файлы содержат список всех логинов и паролей для аутентификации РАР и CHAP. Если вы не знаете точно, как осуществляется аутентификация —через РАР или через CHAP, просто вставьте одну и ту же запись и в ap-secrets, и в chap-secrets. Значительно более надежны и поэтому шире распространены варианты CHAP (CHAP, MS-CHAP или MSCHAPv2).

<code>Записи для клиентских соединений выглядят так:</p><p></p>

<p>#/etc/ppp/pap-secrets и /etc/ppp/chap-secrets

#логин IP-адрес сервера Пароль IP-адрес клиента

"hofer" * "qwe44trE" *</code>

Вместо символа * между логином и паролем можно указать IP-адрес того РРР-сервера, с которым необходимо установить соединение. В таком случае информация о пароле действительна только для данного IP-адреса. Это дополнительный механизм защиты от злонамеренного использования, но применить его можно лишь в том случае, если IP-номер известен и не изменяется (при использовании ADSL-соединений по протоколу РРТР вы можете указать IP-адрес ANT).

Вместо второй звездочки вы можете указать, какому клиентскому IP-адресу должна соответствовать данная комбинация логина и пароля. Как правило, этот адрес неизвестен, так как при каждом новом соединении сервер присваивает клиенту новый IP-адрес — тот, что свободен в настоящий момент. Поэтому в предыдущем примере звездочка (которую можно и опустить) означает, что клиент может иметь любой IP-адрес.

Если pppd применяется не на клиенте, а на сервере, то в pap-secrets и chap-secrets не указываются и логины внешних клиентов.

/etc/ppp/ip-up и /etc/ppp/ip-down. Сценарные файлы /etc/ppp/ip-up и /etc/ ppp/ip-down выполняются сразу же после установления либо завершения соединения. Они могут применяться для настройки /etc/resolv.conf или создания и изменения функций роутинга и маскарадинга, а также настроек брандмауэра.

Обоим сценариям сообщается по шесть параметров. Первый параметр содержит название интерфейса (например, рррО), второй и третий не используются; четвер-тый включает локальный IP-адрес, пятый — IP-адрес партнера по РРР, шестой — последовательность символов, используемую для идентификации РРР-соединения (параметр ipparam).

Если при установлении соединения передаются адреса DNS (параметр usepeerdns), то оба адреса также предоставляются в переменных DNS1 и DNS2.

СОВЕТ



Обратите внимание, что сценарные файлы являются исполняемыми (chmod u+х)! Почти со всеми дистрибутивами поставляются заранее сконфигурированные файлы ip-up и ip-down. В зависимости от дистрибутива некоторые изменения потребуется внести в каталогах ip-up.local и ip-down.local или в дополнительных сценарных файлах из каталогов ip-up.d и ip-down.d.

Параметры pppd



Программе pppd известны десятки параметров, настройка которых обычно производится в файлах /etc/ppp/options и /etc/ppp/peers/name. Полная справка по параметрам дается в файле man pppd. Ниже в алфавитном порядке перечислены и кратко описаны только самые важные параметры — и даже их набралось немало.

connect команда — выполняется перед запуском pppd. При работе с аналоговыми модемами в данном случае обычно вызывается команда chat, предназначенная для того, чтобы набрать телефонный номер провайдера. Этот параметр применяется и в тех случаях, когда используется коммутируемое соединение по запросу (параметр demand). При ADSL-соединениях в качестве команды connect может использоваться просто /bin/true.

crtscts — поток данных, идущий через последовательный интерфейс, контролируется RTS/CTS. Параметр crtscts применяется только при установлении соединений через модем. debug — процесс установления соединения подробно протоколируется посредством программы syslogd (то есть в файлах /var/log/ххх в зависимости от конфигурации syslogd).

defaultroute — когда РРР-соединение установлено, IP-адрес задается как конечный адрес для пересылаемых пакетов. Этот параметр требуется почти всегда (если вы не настраиваете функции роутинга сами, например с помощью сценария ip-up).

demand — соединение устанавливается не сразу, а лишь тогда, когда на самом деле необходимо передать данные. В таком случае выполняется сценарий, указанный в connect (demand также автоматически активизирует persist, если вы специально не отмените эту операцию параметром nopersist).

idle n — соединение должно автоматически завершаться, если в течение n секунд не передаются никакие данные. Эта функция полезна на случай, если вы забыли отключить соединение, и экономит вам немало денег за телефон!

ipparam — с помощью этого параметра можно указать последовательность символов. После установления соединения pppd передает эту последовательность символов сценарию /etc/ppp/ip-up. В некоторых дистрибутивах эта дополнительная информация используется для выбора нужного файла конфигурации сети (/etc/sysconfig/network-scripts/ifcfg-ipparam).

ktune — позволяет pppd изменять настройки ядра. Такие изменения могут быть нужны при использовании коммутируемого соединения по запросу, чтобы пакет данных, инициирующий сетевое соединение, не потерялся.

lcp-echo-interval n — каждые n секунд посылает провайдеру эхо-запрос. Таким образом проверяется, работает ли еще соединение.

lcp-echo-failure n — указывает, после какого количества неудачных запросов pppd должна завершить соединение. В зависимости от настроек persist/nopersist работа pppd может быть завершена либо может быть предпринята новая попытка соединения.

linkname имя — благодаря этому параметру в качестве файла идентификации процесса (PID-файла) используется имя /var/run/ppp-rntf.pid. Иногда бывает нужно завершить определенный процесс из нескольких, работающих одновременно. В таком случае номер нужного процесса можно с легкостью считать из PID-файла (по умолчанию название PID-файла — /var/run/pppn.pid).

lock pppd — создает блокирующий файл для интерфейса передачи данных (например, последовательного интерфейса при использовании модема). Таким образом, исключается ситуация, в которой к интерфейсу могут одновременно обратиться две и более программ.

mru n и mtu n — устанавливает желаемые значения для максимальной длины получаемых пакетов (MRU) и максимальной длины передаваемых пакетов (MTU). Величины MRU и MTU указывают размер блока пакета с файлами. Обычно для MRU действует настройка, задаваемая по умолчанию и равная 1500. При работе с РРРоЕ это значение необходимо снизить до 1492. Текущее значение можно проверить с помощью ifconfig после установления РРР-соединения.


name «abc» — если pppd используется на клиентском компьютере, то он использует логин, например abc (соответствующий пароль можно узнать из файла РАР/СНАР).

Если же pppd применяется на сервере, то abc — это имя локальной системы. Оно должно соответствовать данным, указанным в правом столбце файла РАР/ CHAP .

noauth — удаленная станция pppd, то есть провайдер, также называемый в документации по pppd «peer» (одноранговый узел) в аутентификации не нуждается. Этот параметр требуется почти всегда. Однако вы сами (как клиент) обязательно должны аутентифицироваться!

noaccomp, nopcomp, novj, novjccomp, nobsdcomp, nodeflate, noccp — деактивизируют всевозможные механизмы сжатия. При работе со многими провайдерами необходимо указать как минимум nopcomp. Зачастую рекомендуется применять и другие параметры. Если возникают проблемы, эти параметры не помешает как минимум опробовать.

nodetach — РРР, в отличие от многих собратьев, запускается не как фоновый процесс. Вся информация об управлении выводится в окно терминала, в котором была запущена программа. Этот параметр хорошо подходит для тестирования системы.

noipdefault — благодаря этому параметру провайдер (а не компьютер) назначает IP-адрес для РРР-соединения. Поскольку почти все интернет-провайдеры распределяют IP-адреса динамически, этот параметр, как правило, должен применяться (иными словами, при каждом входе в систему вы получаете другой IP-адрес, а точнее первый IP-адрес, свободный в данный момент; метод аналогичен тому, что применяется при работе с DHCP-сервером в локальной сети).

nopersist — параметр, обратный persist. Программа pppd завершает работу, если соединение обрывается (или по истечении срока, заданного параметром idle). О persist — при ненамеренном обрыве соединения pppd автоматически пытается восстановить соединение. При использовании demand этот параметр применяется автоматически.

plugin имя .so — программа pppd при запуске загружает РРР-модуль имя .so. Дополнительные модули РРР обычно находятся в каталоге /usr/lib/pppd/n/. Параметр задействуется в том случае, если используются специальные РРР-функции, реализованные в виде РРР-плагина (например, протоколы РРРоЕ, РРРоА и РРТР или специальные механизмы аутентификации и шифрования).

pty сценарий — указывает сценарий или программу, которые используются для обмена информацией вместо устройства. Параметр необходим в том случае, если pppd должен использовать внешнюю программу, поддерживающую дополнительный протокол обмена информацией (например, РРРоЕ, РРРоА или РРТР).

refuse-pap, -chap, -mschap-v2 — благодаря этим параметрам не допускаются указанные методы аутентификации. О require-pap, -chap, -mschap-v2, -mppe, -mppe-128 — определяют, какой метод аутентификации будет применяться (РАР, СНАРТ, Microsolt-CHAP Version 2) и как должны шифроваться данные (МРРЕ — протокол Microsoft шифрования двухточечного соединения). Если не указать ни один из этих параметров, то pppd сама выберет наилучший метод (в зависимости от требования удаленной станции).

usepeerdns — многие РРР-серверы при установлении соединения передают два DNS-адреса. Благодаря параметру usepeerdns программа pppd узнает эти адреса при установлении соединения и передает сценарию ip-up. Во многих дистрибутивах конфигурация этого сценария такова, что адреса DNS автоматически заносятся в файл /etc/resolv.conf.
Читайте так же:
Внутренняя организация UMTS






Подпишитесь на рассылку! Никакого спама, только обновления!!!

Комментарии (0)


    Услуги по MODX Revolution

    Посмотреть все услуги

    Техническая оптимизация сайта

    Подробнее & Заказать

    Создание сайта на MODX Revolution

    Подробнее & Заказать

    Перенос сайта на MODX Revolution

    Подробнее & Заказать

    Продвижение сайта на MODX

    Подробнее & Заказать