Библиотека сайта 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 |

