НАИМЕНОВАНИЕ
tcpd,
tcpdp - Ожидает TCP соединения и запускает
сервер
РЕЗЮМЕ
tcpd [-d] [-m maxclients]
service program [arg...]
ОПИСАНИЕ
Tcpd
это демон пространства пользователя,
который обычно
запускается при старте
системы и не останавливается при
ее
завершении. Конечно вы можете думать
что tcpd ничего
неделает, только слушает
порт на предмет соединений.
Несколько
копий tcpd, будут запущены для предоставляемых
сервисов. Когда обнаружено соединение
на прослушиваемом
порту, то пораждается
дочерний процес сервиса который
на
нем работает.
Это упрощенное описание
того что происходит. Как правило,
две
копии исходника tcpd.c компиляться. Tcpd это
то что
ожидает соединения. Когда
соединение поступает, tcpd
порождает
дочерний прцес. Если tcpd запущен с опциями
или
если дочерний процесс обнаружет
что файл контроля доступа
/etc/serv.acess
существует, то дочерний процес будет
проверять, инициализовано ли соединение
с разрешенных
хостов и сетей. Tcpdp кроме
того попытается определить
имя хоста
с которого произведено соединение, и
если это
не удастся, заблокирует его.
Наконец, tcpdp определяет,
поддерживает
ли соединение логирование. Если все
нормально,
то дочерний tcpd Или tcpdp
запускает сервис который определен
для него в командной строке.
ОПЦИИ
-d включить отладку
-m разрешить
для запуска не более maxclients клиентов
ПРИМЕРЫ
tcpd telnet in.telnetd &
#
ожидать телнет соединений на стандартный
порт
tcpd 8000 in.httpd
/etc/httpd8000.conf &
#
Ожидать http запросов на порт 8000 и
использовать
# нестандартный конфиг
для in.httpd Програмы
Обратите внимание,
что командная строка должна оканчиваться
на
символ & для запуска процеса в
фоновом режиме.
Следующие примеры
показывают как можно запустить из
/etc/rc
или других скриптов которые
запускаются при инициализации системы.
Вы также можете посмотреть
инициализационные скрипты.
demonize
tcpd shell in.rshd
# demonize - шеллфункция которая
проверяет, существует ли демон
и
запускает его в фоновом режиме
Еще
один случай, который следует упомянуть,
это что когда администратор
хочет
запустить (или перезапустить) демон из
командной строки, он
может использовать
intr(8) следующим образом:
intr -d tcpd
telnet in.telnetd &
# удалить демон из группы
процессов и перенаправить его ввод на
/dev/null
а вывод в /dev/log
Файлы
/etc/serv.access Список контроля доступа
СМОТРЕТЬ ТАКЖЕ
execve(2), fork(2),
intr(8), serv.access(5).
ПРИМЕЧАНИЕ
Стиль
демонов, это то чем Minix отличается от
других Unix-like систем.
Разрешать
доступ к системе из сети бывает опасно.
Убедитесь, что точно
знаете что
делаете. Убедитесь, что создатель вашей
сети знает что
вы делаете. Не включаете
сервисы если вы в них не нуждаетесь.
Включите
логирование и просматривайте
ваши логи
ОШИБКИ
Неизвестно,
сообщите если найдете.
АВТОР
Kees J. Bot (kjb@cs.vu.nl)
Перевод Андрей Л. Унгер (cobaltsys@nm.ru)