Несмотря на то что соединение с PoPToP без поддержки кодирования позволяет проверить конфигурацию системы, это соединение нельзя использовать для реальной работы. Основная цель VPN состоит в том, чтобы обеспечить шифрование передаваемых данных, поэтому при отключении кодирования средства VPN будут бесполезны.
Работой PPTP управляют также опции, содержащиеся в файле options.pptp
, который обычно располагается в каталоге /etc
или /etc/ppp
. Некоторые из этих опций описаны ниже.
• debug
. Данная опция сообщает PoPToP о том, что в файл протокола должны быть записаны дополнительные данные. Они могут понадобиться в том случае, если при установлении соединения возникают проблемы.
• localip
. Клиент PPTP использует два IP-адреса: один — для локальной сети, второй — для удаленного клиента. Локальные IP-адреса можно задать с помощью опции localip
. В качестве значения опции задается список адресов, разделенных запятыми, или диапазон адресов. Например, опция localip 192.168.9.7, 192.168.9.100-150
задает адрес 192.168.9.7 и все адреса в диапазоне от 192.168.9.100 до 192.168.9.150. Убедитесь, что другие компьютеры в вашей локальной сети не используют эти адреса.
• remoteip
. Данная опция задает IP-адреса, используемые удаленными клиентами. Эти адреса обычно принадлежат диапазону адресов, используемых во внутренних сетях. IP-адреса задаются в таком же формате, как и для опции localip
.
• listen
. Указав в качестве значения данной опции IP-адрес, связанный с одним интерфейсом, можно сообщить программе pptpd
о том, что она должна принимать обращения только через этот интерфейс. По умолчанию PoPToP принимает обращения через все интерфейсы.
Обеспечение кодирования данных
PoPToP использует программу pppd
, которая, в свою очередь, использует средства ядра. В частности, PoPToP требует, чтобы демон pppd
поддерживал кодирование, a pppd
требует, чтобы средства поддержки кодирования присутствовали в ядре Linux. Поэтому для шифрования данных при работе PoPToP необходимо дополнить как pppd
, так и ядро системы.
Проще всего решить эту задачу, используя дополненные варианты pppd
и ядра Linux. Соответствующие программы можно получить, обратившись по адресу http://mirror.binarix.com/ppp- mppe/
. Вам необходимо скопировать следующие два файла.
• Ядро Linux. Дополненное ядро Linux содержится в файле, имя которого начинается с kernel, например kernel-2.4.9-13mppe.i386.rpm
. Некоторые из этих пакетов содержат двоичный код ядра, скомпилированный для конкретного типа системы, а другие — исходный код ядра. Если вы скопируете исходный код, вам надо будет сконфигурировать и скомпилировать его для вашей системы.
• Пакет ppp. Измененный пакет pppd
находится в файле ppp-2.4.1-3mdk.i586.rpm или в другом файле с подобным именем. Содержимое пакета надо установить вместо файла pppd
.
На узле http://mirror.binarix.com/ppp-mppe/
находятся двоичные программы, скомпилированные для Mandrake, поэтому если вы работаете с этой версией Linux, можете воспользоваться кодами, представленными на данном узле. Не исключено, что вы найдете программы, сконфигурированные для другой системы.
Если в вашей системе не используется RPM, вы можете преобразовать форматы пакетов с помощью утилиты alien
. Эта программа входит в состав Debian и поддерживает RPM, пакеты Debian и tar-архивы.
Дополненные программы вы также можете получить, обратившись на узел http://pptpclient.sourceforge.net
. Здесь можно найти клиентские программы, пакеты ppp- mppe, представляющие собой программы pppd
с поддержкой MPPE, а также модули ядра с поддержкой MPPE.
Если вы по каким-либо причинам не можете или не хотите использовать готовые двоичные коды, вам следует самостоятельно внести изменения в состав демона PPP и ядра системы. Для этого надо скопировать пять файлов.
• Ядро Linux. Исходный код стандартного ядра Linux можно получить, обратившись на узел http://www.kernel.org
. Использовать стандартное ядро Linux предпочтительнее, чем ядро из дистрибутивного пакета, так как последнее обычно бывает модифицировано, в результате чего внесение изменений может быть затруднено.
• Исходный код pppd. Исходный код демона PPP можно получить по адресу ftp://cs.anu.edu.au/pub/software/ррр/
.
• OpenSSL. MPPE-дополнения требуют, чтобы в вашей системе были установлены OpenSSL и файлы заголовков OpenSSL. Требуемые данные можно скопировать с узла http://www.openssl.org
.
• Дополнения к ядру Linux. На узле http://mirror.binarix.com/ррр- mppe/
надо найти файлы, начинающиеся с linux
и заканчивающиеся patch.gz
, например linux-2.4.16-openssl-0.9.6-bmppe.patch.gz
.
• Дополнения к pppd. Дополнения к программе pppd
также доступны по адресу http://mirror.binarix.com/ppp-mppe/
. Имя соответствующих файлов начинается с ррр
и заканчивается patch.gz
, например ррр-2.4.1- openssl-0.9.6-mppepatch.gz
.
Для того чтобы исключить несоответствие версий, надо начать с файлов дополнений, а затем подобрать соответствующие версии ядра и пакета pppd
. Чтобы дополнить и использовать полученные средства, надо распаковать архивы с исходными кодами ядра и pppd
, распаковать файлы дополнений (выполнив команду gunzip
), дополнить исходные коды (cd
), сконфигурировать пакеты (make menuconfig
или make xconfig
— для ядра Linux и ./configure
— для pppd
), скомпилировать пакеты (make bzImage
и make modules
— для ядра Linux и make
— для pppd
) и инсталлировать пакеты (выполнив команду make modules_install
и сконфигурировав LILO для Linux, а также выполнив команду make install
для pppd
).
Независимо от того, используете ли вы дополненные варианты программ или дополнили коды и скомпилировали программы самостоятельно, для того, чтобы обеспечить поддержку кодирования, надо перезагрузить компьютер с указанием нового ядра.
Настройка PPTP-клиента
Если PPTP-клиент предназначен для выполнения в системе Windows, настроить его для работы с