Обеспечение кодирования данных

Обеспечение кодирования данных

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 filename.patch.gz), дополнить исходные коды (cd каталог_с_исходными_кодами; patch -p1 < patchfile.patch), сконфигурировать пакеты (make menuconfig или make xconfig — для ядра Linux и ./configure — для pppd), скомпилировать пакеты (make bzImage и make modules — для ядра Linux и make — для pppd) и инсталлировать пакеты (выполнив команду make modules_install и сконфигурировав LILO для Linux, а также выполнив команду make install для pppd).

Независимо от того, используете ли вы дополненные варианты программ или дополнили коды и скомпилировали программы самостоятельно, для того, чтобы обеспечить поддержку кодирования, надо перезагрузить компьютер с указанием нового ядра.