Чтение онлайн

ЖАНРЫ

Сетевые средства Linux

Смит Родерик В.

Шрифт:

3. Найдите в файле

/etc/inittab
ссылку на
pptpd
и закомментируйте соответствующую запись, включив в начало строки символ
#
. Затем введите команду
telinit Q
, чтобы внесенные изменения были учтены. В результате вы получите возможность вручную запустить
pptpd
и протестировать конфигурацию данной программы. После создания конфигурации, пригодной для работы, удалите символ комментариев из соответствующей строки файла
/etc/inittab
или запустите сервер другим способом.

4. От имени пользователя

root
введите команду
pptpd
, запустив тем самым сервер.

В

результате выполненных действий сервер будет запущен и PPTP-клиент сможет устанавливать взаимодействие с системой. Поскольку средства шифрования не доступны, для установления соединения вам надо также отключить шифрование и на стороне клиента. В следующем разделе рассказывается о том, как разрешить кодирование данных для PoPToP.

Внимание

Несмотря на то что соединение с 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 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
).

Поделиться с друзьями: