Библиотека сайта rus-linux.net
Beyond Linux From Scratch. Version 2011-12-30 | ||
Назад | 19.Основные серверы | Вперед |
Пакет xinetd-2.3.14
Знакомимся с пакетом xinetd
xinetd является демоном дополнительных сервисов сети интернет (eXtended InterNET) и его можно использовать в качестве безопасной замены вместе inetd.
Информация о пакете
- Загрузка (HTTP): http://www.xinetd.org/xinetd-2.3.14.tar.gz
- Загрузка (FTP): ftp://mirror.ovh.net/gentoo-distfiles/distfiles/xinetd-2.3.14.tar.gz
- Контрольная сумма MD5: 567382d7972613090215c6c54f9b82d9
- Размер загружаемого пакета: 301 KB
- Оценочный размер требуемого дискового пространства: 4,4 MB
- Оценочное время сборки: менее 0,1 SBU
Зависимости пакета xinetd
Необязательные
TCP Wrappers-7.6 и avahi-0.6.25
Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/xinetd
Установка пакета xinetd
Установите пакет xinetd с помощью следующих команд:
./configure --prefix=/usr --with-loadavg && make
В этом пакете набор тестов отсутствует.
Теперь в роли пользователя root
выполните:
make install
Конфигурирование пакета xinetd
Конфигурационные файлы
/etc/xinetd.conf
и /etc/xinetd.d/*
Подробнее о конфигурировании
Проверьте, чтобы для всех демонов использовался путь /usr/sbin
, а не путь /usr/etc
, указываемый по умолчанию, и, находясь в роли пользователя root
, с помощью следующих команд установите конфигурационные файлы xinetd:
cat > /etc/xinetd.conf << "EOF" # Начало файла /etc/xinetd # Конфигурационный файл для xinetd # defaults { instances = 60 log_type = SYSLOG daemon log_on_success = HOST PID USERID log_on_failure = HOST USERID cps = 25 30 } # Все файлы сервисов хранятся в директории /etc/xinetd.d # includedir /etc/xinetd.d # Конец файла /etc/xinetd EOF
Во всех файлах, приведенных далее, есть инструкция "disable = yes" ("отключить = да"). Чтобы активировать любой из сервисов, эту инструкцию необходимо заменить инструкцией "disable = no" ("отключить = нет").
ЗамечаниеСледующие файлы приведены для демонстрации классических приложений xinetd. Во многих случаях эти приложения не нужны. В некоторых случаях использование этих приложений рассматривается как возможный риск, связанный с безопасностью. Например, приложение telnet, rlogin, rexec и rsh передают имена пользователей и пароли по сети в незашифрованном виде, и эти приложения могут легко быть заменены на более безопасную альтернативу - ssh. |
install -v -d -m755 /etc/xinetd.d && cat > /etc/xinetd.d/login << "EOF" && # Начало файла /etc/xinetd.d/login service login { disable = yes socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/in.rlogind log_type = SYSLOG local4 info } # Конец файла /etc/xinetd.d/login EOF cat > /etc/xinetd.d/shell << "EOF" && # Начало файла /etc/xinetd.d/shell service shell { disable = yes socket_type = stream wait = no user = root instances = UNLIMITED flags = IDONLY log_on_success += USERID server = /usr/sbin/in.rshd } # Конец файла /etc/xinetd.d/shell EOF cat > /etc/xinetd.d/exec << "EOF" && # Начало файла /etc/xinetd.d/exec service exec { disable = yes socket_type = stream wait = no user = root server = /usr/sbin/in.rexecd } # Конец файла /etc/xinetd.d/exec EOF cat > /etc/xinetd.d/comsat << "EOF" && # Начало файла /etc/xinetd.d/comsat service comsat { disable = yes socket_type = dgram wait = yes user = nobody group = tty server = /usr/sbin/in.comsat } # Конец файла /etc/xinetd.d/comsat EOF cat > /etc/xinetd.d/talk << "EOF" && # Начало файла /etc/xinetd.d/talk service talk { disable = yes socket_type = dgram wait = yes user = root server = /usr/sbin/in.talkd } # Конец файла /etc/xinetd.d/talk EOF cat > /etc/xinetd.d/ntalk << "EOF" && # Начало файла /etc/xinetd.d/ntalk service ntalk { disable = yes socket_type = dgram wait = yes user = root server = /usr/sbin/in.ntalkd } # Конец файла /etc/xinetd.d/ntalk EOF cat > /etc/xinetd.d/telnet << "EOF" && # Начало файла /etc/xinetd.d/telnet service telnet { disable = yes socket_type = stream wait = no user = root server = /usr/sbin/in.telnetd bind = 127.0.0.1 log_on_failure += USERID } service telnet { disable = yes socket_type = stream wait = no user = root # server = /usr/sbin/in.telnetd bind = 192.231.139.175 redirect = 128.138.202.20 23 log_on_failure += USERID } # Конец файла /etc/xinetd.d/telnet EOF cat > /etc/xinetd.d/ftp << "EOF" && # Начало файла /etc/xinetd.d/ftp service ftp { disable = yes socket_type = stream wait = no user = root server = /usr/sbin/in.ftpd server_args = -l instances = 4 log_on_success += DURATION USERID log_on_failure += USERID access_times = 2:00-8:59 12:00-23:59 nice = 10 } # Конец файла /etc/xinetd.d/ftp EOF cat > /etc/xinetd.d/tftp << "EOF" && # Начало файла /etc/xinetd.d/tftp service tftp { disable = yes socket_type = dgram wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot } # Конец файла /etc/xinetd.d/tftp EOF cat > /etc/xinetd.d/finger << "EOF" && # Начало файла /etc/xinetd.d/finger service finger { disable = yes socket_type = stream wait = no user = nobody server = /usr/sbin/in.fingerd } # Конец файла /etc/xinetd.d/finger EOF cat > /etc/xinetd.d/systat << "EOF" && # Начало файла /etc/xinetd.d/systat service systat { disable = yes socket_type = stream wait = no user = nobody server = /usr/bin/ps server_args = -auwwx only_from = 128.138.209.0 log_on_success = HOST } # Конец файла /etc/xinetd.d/systat EOF cat > /etc/xinetd.d/netstat << "EOF" && # Начало файла /etc/xinetd.d/netstat service netstat { disable = yes socket_type = stream wait = no user = nobody server = /usr/ucb/netstat server_args = -f inet only_from = 128.138.209.0 log_on_success = HOST } # Конец файла /etc/xinetd.d/netstat EOF cat > /etc/xinetd.d/echo << "EOF" && # Начало файла /etc/xinetd.d/echo service echo { disable = yes type = INTERNAL id = echo-stream socket_type = stream protocol = tcp user = root wait = no } service echo { disable = yes type = INTERNAL id = echo-dgram socket_type = dgram protocol = udp user = root wait = yes } # Конец файла /etc/xinetd.d/echo EOF cat > /etc/xinetd.d/chargen << "EOF" && # Начало файла /etc/xinetd.d/chargen service chargen { disable = yes type = INTERNAL id = chargen-stream socket_type = stream protocol = tcp user = root wait = no } service chargen { disable = yes type = INTERNAL id = chargen-dgram socket_type = dgram protocol = udp user = root wait = yes } # Конец файла /etc/xinetd.d/chargen EOF cat > /etc/xinetd.d/daytime << "EOF" && # Начало файла /etc/xinetd.d/daytime service daytime { disable = yes type = INTERNAL id = daytime-stream socket_type = stream protocol = tcp user = root wait = no } service daytime { disable = yes type = INTERNAL id = daytime-dgram socket_type = dgram protocol = udp user = root wait = yes } # Конец файла /etc/xinetd.d/daytime EOF cat > /etc/xinetd.d/time << "EOF" && # Начало файла /etc/xinetd.d/time service time { disable = yes type = INTERNAL id = time-stream socket_type = stream protocol = tcp user = root wait = no } service time { disable = yes type = INTERNAL id = time-dgram socket_type = dgram protocol = udp user = root wait = yes } # Конец файла /etc/xinetd.d/time EOF cat > /etc/xinetd.d/rstatd << "EOF" && # Начало файла /etc/xinetd.d/rstatd service rstatd { disable = yes type = RPC flags = INTERCEPT rpc_version = 2-4 socket_type = dgram protocol = udp server = /usr/sbin/rpc.rstatd wait = yes user = root } # Конец файла /etc/xinetd.d/rstatd EOF cat > /etc/xinetd.d/rquotad << "EOF" && # Начало файла /etc/xinetd.d/rquotad service rquotad { disable = yes type = RPC rpc_version = 1 socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/rpc.rstatd } # Конец файла /etc/xinetd.d/rquotad EOF cat > /etc/xinetd.d/rusersd << "EOF" && # Начало файла /etc/xinetd.d/rusersd service rusersd { disable = yes type = RPC rpc_version = 1-2 socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/rpc.rusersd } # Конец файла /etc/xinetd.d/rusersd EOF cat > /etc/xinetd.d/sprayd << "EOF" && # Начало файла /etc/xinetd.d/sprayd service sprayd { disable = yes type = RPC rpc_version = 1 socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/rpc.sprayd } # Конец файла /etc/xinetd.d/sprayd EOF cat > /etc/xinetd.d/walld << "EOF" && # Начало файла /etc/xinetd.d/walld service walld { disable = yes type = RPC rpc_version = 1 socket_type = dgram protocol = udp wait = yes user = nobody group = tty server = /usr/sbin/rpc.rwalld } # Конец файла /etc/xinetd.d/walld EOF cat > /etc/xinetd.d/irc << "EOF" # Начало файла /etc/xinetd.d/irc service irc { disable = yes socket_type = stream wait = no user = root flags = SENSOR type = INTERNAL bind = 192.168.1.30 deny_time = 60 } # Конец файла /etc/xinetd.d/irc EOF
Формат файла /etc/xinetd.conf
описан на странице man xinetd.conf.5
. Более подробную информацию можно найти по адресу http://www.xinetd.org.
Загрузочный скипт
В роли пользователя root
установите загрузочный скрипт /etc/rc.d/init.d/xinetd
, который находится в пакете blfs-bootscripts-20111226.
make install-xinetd
Для запуска xinetd воспользуйтесь в роли пользователя root
новым загрузочным скриптом:
/etc/rc.d/init.d/xinetd start
Весьма полезным может оказаться просмотр файла /var/log/daemon.log
. В этом файле могут быть записи следующего вида:
Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rlogind is not executable [line=29] Aug 22 21:40:21 dps10 xinetd[2696]: Error parsing attribute server - DISABLING SERVICE [line=29] Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rshd is not executable [line=42]
Эти ошибки возникают, главным образом, из-за того, что xinetd пытается управлять серверами, которые еще не установлены.
Описание пакета
Установленные программы: itox, xconv.pl и xinetd
Установленные библиотеки: Нет
Установленные директории: /etc/xinetd.d/
Краткое описание
itox | утилита, предназначенная для преобразования файлов |
xconv.pl | скрипт Perl, используемый точно также, как и itox, для преобразования файлов |
xinetd | демон сервисов сети интернет |
Перевод сделан с варианта оригинала, датированного 2010-08-12 12:18:41 +0000
Предыдущий раздел: | Оглавление | Следующий раздел: |
Пакет vsftpd-2.3.4 | Глава 20 |