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

Примечание. RPC (Remote Procedure Call) — вызов удаленной процедуры. Используется в серверной части приложения. Механизм RPC скрывает от программиста детали сетевых протоколов нижележащих уровней.

Вам необязательно указывать все эти атрибуты для каждого сервиса. Можно указать только необходимые:

1. socket_type

2. user

3. server

4. wait

Параметр protocol указывается только для RFC-сервисов, а также для всех сервисов, которые не описаны в /etc/services. Параметр rpc_version — только для rpc-сервисов. Параметр rpc_nuinber указывается только для RFC-сервисов, которые не указаны в файле /etc/rpc. Параметр port задается только для He-RPC-сервисов, которые не описаны в /etc/services. Следующие атрибуты поддерживают все операторы присваивания:

1. only_from

2. no_access

3. log_on_success

4. log_on_failure

5. passenv

6. env (не поддерживает оператор «-=»)

Эти атрибуты также могут принимать разные значения в разных секциях описания сервиса.

Файл конфигурации может содержать секцию default, в которой описаны атрибуты по умолчанию. Они будут одинаковы для всех сервисов. Возможные атрибуты по умолчанию:

1. log_type

2. log_on_success

3. log_on_failure

4. only_from

5. no_access

6. passenv

7. instances

8. disabled

9. enabled

<p>8.1.6. Параметры запуска xinetd</p>

Я надеюсь, что с настройкой более-менее все понятно. Если же мои надежды не оправдались, то в разделе 8.1.7 вы найдете пример файла /etc/xinetd.conf. Сейчас же займемся запуском только что откомпилированного и настроенного суперсервера. А запускать его можно с параметрами, указанными в табл. 8.3.

Параметры запуска xinetd Таблица 8.3

Параметр Описание
-f файл Устанавливает альтернативный файл конфигурации, который должен использоваться вместо стандартного файла /etc/xinetd.conf
-pidfile рid_файл Файл с ID-процесса
-stayalive Даже если ни один сервис не прописан, демон должен выполняться («остаться в живых»)
-loop число Задает количество коннектов в секунду
-d Режим отладки (debug mode)
-reuse Перед тем как связать сокет сервиса с IP-адресом, суперсервер установит опцию сокета SO_REUSEADDR
-limit число Ограничение на количество одновременно запущенных процессов

В табл. 8.3 я привел описание не всех параметров запуска, выбрав лишь самые нужные. Более подробную информацию вы сможете получить в документации по xinetd. Так же как и inetd, xinetd можно контролировать с помощью сигналов (см. табл. 8.4).

Сигналы суперсервера Таблица 8.4

Сигнал Описание
SIGUSR1 Суперсервер перечитает файл конфигурации
SIGQUIT Остановит xinetd
SIGTERM Перед остановкой xinetd все процессы будут остановлены
<p>8.1.7. Пример файла конфигурации /etc/xinetd</p>

Теперь, как и обещал, привожу пример файла конфигурации (см. листинг 8.5). В этом листинге перечислены наиболее часто используемые сервисы с оптимальными параметрами (атрибутами). Конечно же, вам предстоит решить: какие сервисы вы будете использовать, а какие нет. Возможно, вы также измените и их атрибуты, например, время работы сервиса.

Листинг 8.5. Фрагмент файла конфигурации /etc/xinetd

# Параметры по умолчанию для всех возможных сервисов

defaults

{

# Число серверов, которые могут быть активны одновременно для сервиса.

 instances = 25

# Параметры протоколирования

 log_type = FILE /var/log/servicelog

 log_on_success = HOST PID

 log_on_failure = HOST RECORD

 only_from = 111.11.111.0 111.111.112.0

 only_from = localhost 192.168.1.0/32

 disabled = tftp

}

service login

{

 flags = REUSE

 socket_type = stream

 protocol = tcp

 wait = no

 user = root

 server = /usr/etc/in.rlogind

 log_type = SYSLOG Iocal4 info

}

# Сервис telnet — эмуляция терминала удаленных систем

# (для 127.0.0.1)

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

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

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

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

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

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

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

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

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