vim /etc/xinetd.d/ssh
service ssh
{
socket_type = stream
protocol = tcp
wait = no
user = root
# server = /usr/sbin/sshd
server = /usr/local/sbin/sshd_start
server_args = -i
instances = 10
cps = 1 20
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
}
Если запускать sshd напрямую могут быть проблемы с записью логов /var/log/auth.log:
sshd[8771]: fatal: Missing privilege separation directory: /var/run/sshd
Поэтому создадим скрипт
vim /usr/local/sbin/sshd_start
#!/bin/sh
if [ ! -d /var/run/sshd ]; then
mkdir /var/run/sshd
chmod 0755 /var/run/sshd
fi
/usr/sbin/sshd $*
Сделаем его исполняемым:
chmod 755 /usr/local/sbin/sshd_start
Если запускать sshd напрямую могут быть проб
[B]ПАРАМЕТРЫ:[/B]
[B]socket_type [/B] Тип соединения: stream (TCP), dgram
(UDP), raw (неструктурированные
пакеты), seqpacket (гарантированная
последовательная доставка дейтаграмм).
[B]protocol[/B] Протокол по которому работает служба.
[B]server [/B] Полный путь к вызываемо программе.
[B]server_args[/B] Аргументы командной строки,
которые следует передать программе
при её вызове.
[B]port[/B] Если служба не описана в файле
/etc/services, следует обязательно
определить порт.
[B]wait[/B] Возможные значения: yes или no. В
первом случае одна запускаемая
программа может обслужить все
соединения. Во втором случае на
каждое соединение необходимо
запускать свой экземпляр про-
граммы.
[B]user[/B] Определяет пользователя, с правами
которого будет запускаться программа.
[B]group[/B] Определяет группу, с правами которой
будет запускаться программа.
[B]nice[/B] Определяет значение nice запускаемой
программы.
[B]access_time[/B] Время, когда можно обратиться к службе.
Время задаётся в виде чч:мм-чч:мм.
[B]only_from[/B] Список IP адресов или имен машин,
разделенный пробелами, откуда
можно подключаться к сервисам,
обслуживаемым xinetd.
[B]no_access[/B] Список IP адресов или имен машин,
разделен- ный пробелами, откуда
нельзя подключаться к сер- висам,
обслуживаемым xinetd.
[B]instances[/B] Целое число или ключевое слово
UNLIMITED. Определяет
максимальное количество
одновремен- но запускаемых демонов.
[B]log_type[/B] “SYSLOG средство” - отсылать
сообщения в систему syslog, используя
определенное средство. “FILE файл
[нижний предел [:верхний предел]]”-
отсылать сообщения в файл, не
используя систему xinetd. Предельные
размеры файла указываются в
килобайтах. При достижении нижнего
предела, xinetd генерирует сообщение.
При достижении верхнего – перестает
записывать сообщения в файл.
[B]redirect[/B] Перенаправление соединения на
другую машину в сети. В качестве
параметра следует через пробел
указывать IP адрес и порт.
[B]bind[/B] Определяет интерфейс, на котором
сервер слушает запросы.
[B]log_on_success[/B] Определяет, какая информация в
случае успешного соединения будет
попадать в журнальные файлы.
Возможные значения: PID, HOST,
USERID, EXIT и DURATION.
[B]log_on_failure [/B] Определяет, какая информация будет
попадать в журнальные файлы в
случае неуспешной попытки установки
соединения. Возможные значения:
ATTEMPT, HOST, USERID, RECORD.
[B]disable[/B] Запрещает (значение равно yes) или
разрешает (значение равно no)
службу. По умолчанию, доступ
разрешён.
[B]cps[/B] Ограничивает количество
подключений в единицу времени.
Например cps = 25 30 – означает, что
если в секунду будет больше чем 25
запросов на соединение, служба будет
недоступна в течении 30 секунд.
[B]max_load [/B] Определяет максимальную загрузку
сервера, при превышении которой
xinitd перестаёт принимать запросы на
соединение.
[B]rlimit_* [/B] Различные параметры, при помощи
которых ограничиваются системные
ресурсы, доступные программе.
Например rlimit_as, rlimit_cpu,
rlimit_data, rlimit_rss, rlimit_stack |