Читаем Linux-сервер своими руками полностью

Как я уже говорил, это более сложный способ, но у него есть свои преимущества. Во-первых, у вас появится возможность использовать самые последние версии серверов Apache, MySQL и интерпретатора РНР, которых нет в составе даже самого нового дистрибутива Linux. Во-вторых, вы сами сможете контролировать процесс сборки и включать поддержку необходимых вам функций, исключив такую ситуацию, когда, например, разработчики пакетов RPM при сборке интерпретатора РНР забыли включить поддержку сервера MySQL. Мне попадался такой дистрибутив php: функции mysql_connect в нем просто не было.

Итак приступим к настройке. Но перед этим скачайте из Интернет последние версии Apache, MySQL и РНР. Предварительно удалите из системы старые версии, если такие были установлены. После загрузки распакуйте исходные тексты в каталог /src. Далее, сначала установите сервер MySQL. С этой целью перейдите в каталог с исходными текстами MySQL и введите следующие команды (первая команда включает поддержку по умолчанию кодировки koi8-r):

./configure --with-charset=koi8_ru

make

make install

Затем аналогично установите Apache, перейдя в соответствующий каталог:

./configure

make

make install

Для получения информации обо всех опциях команды configure введите команду configure --help. После этого распакуйте РНР и перейдите в каталог с исходными текстами РНР. Введите команды:

./configure --with-mysql --with-apache=../apache_1.3.20 --with-mod_charset

make

make install

Первая команда конфигурирует интерпретатор РНР для работы с сервером баз данных MySQL и Web-сервером Apache. Естественно, вы должны правильно указать путь к исходным текстам Apache с помощью параметра –-with-apache.

Затем вернитесь в каталог, содержащий исходные тексты Apache, и введите команду:

./configure --activate-module=src/modules/php4/libphp4.a

Перед этим нужно убедиться в существовании файла Iibphp4.a. Этот файл должен существовать, если php собрался нормально. Если конфигуратор configure успешно завершил свою работу, введите команды:

make

make install

Этими командами вы собираете сервер Apache с подключенным модулем libphp. Проверить подключился ли нужный модуль вы можете после установки сервера (выполнения команды make install) с помощью команды:

httpd –l

В списке модулей должен быть модуль libphp4.c, а также модуль mod_charset.c — его вы подключили при первой сборке. После этого можно отредактировать файл /etc/php.ini и установить пароль для пользователя root сервера MySQL (не путайте пользователя root всей системы с пользователем root сервера MySQL!). Обе операции уже были описаны в п. 16.3.1. Теперь только остается добавить запуск серверов в сценарии автозагрузки системы. Напомню, что сервер MySQL должен запускаться до сервера Apache.

<p>17</p><p>Практические примеры.</p><p>Обратный звонок</p>

Возможно, материал этой главы будет пересекаться с уже имеющимся в этой книге, но при написании главы я ставил цель объяснить все «с нуля». Практически любой читатель сможет настроить шлюз и сервер входящих звонков, не читая предыдущих глав. Конечно, этот читатель должен обладать некоторыми навыками работы в Linux.

<p>17.1. Настройка шлюза</p>

Сначала определим функции, которые должен выполнять шлюз:

1. Поддержка связи с провайдером.

2. Маршрутизация IP-пакетов между локальной сетью и сетью Интернет для выхода пользователей локальной сети в Интернет.

3. Обеспечение IP-сервиса.

4. Защита локальной сети от несанкционированного доступа из Интернет.

Конфигурирование шлюза в операционной системе Linux состоит из следующих этапов:

1. Настройка ядра.

2. Настройка сети.

3. Конфигурирование IpChains.

4. Настройка DNS.

5. Настройка Squid.

Для определенности будет использоваться два сетевых интерфейса — eth0, идущий к провайдеру, и eth1 — во внутренней сети. Пусть интерфейсу eth0 назначен IP-адрес 111.111.111.111, a eth1 — 192.168.1.1

<p>17.1.1. Настройка ядра</p>

Скорее всего, вам придется перекомпилировать ядро. При этом должны быть активизированы следующие опции:

Networking support (CONFIG_NET) [у]

TCP/IP networking (CONFIG_INET) [у]

IP forwarding/gatewaying (CONFIG_IP_FORWARD) [y]

IP multicasting (CONFIG_IP_MULTICAST) [у]

IP firewalling (CONFIG_IP_FIREWALL) [у]

IP accounting (CONFIG_IP_ACCT) [y]

Можно также поэкспериментировать с набором опций Advanced Router, если данные функции есть в вашем ядре. Более подробно о процессе компилирования ядра вы можете прочитать в следующей главе.

<p>17.1.2. Настройка сети</p>

После перекомпилирования ядра нужно включить IP-forwarding. Сделайте это при помощи следующей команды:

Перейти на страницу:

Похожие книги

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
1001 совет по обустройству компьютера
1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера. Приведен необходимый минимум технических сведений, позволяющий принять осознанное решение.Компакт-диск прилагается только к печатному изданию книги.

Юрий Всеволодович Ревич

Программирование, программы, базы данных / Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение / Книги по IT