rsyncd.conf

package: man-pages-ru-extra

title: rsyncd.conf(5)

summary: конфигурационный файл для rsync\-сервера

text:
# rsyncd.conf(5)

## НАИМЕНОВАНИЕ
rsyncd.conf - конфигурационный файл для rsync-сервера

## СИНТАКСИС
rsyncd.conf

## ОПИСАНИЕ
rsyncd.conf конфигурационный файл для rsync при запуске в режиме rsync-сервера.

Файл rsyncd.conf управляет модулями аутентификации, доступа, протоколирования, а также другими доступными модулями.

## ФОРМАТ ФАЙЛА
Файл состоит из модулей и параметров. Модуль начинается своим именем в квадратных скобках и продолжается до начала следующего модуля. Модули содержат параметры в виде 'name = value'.

Формат файла построчный. Это означает, что каждая строка, заканчивающаяся специальным символом-признаком новой строки, содержит либо комментарий, либо имя модуля, либо параметр.

Только первый знак равенства в описании параметра является значимым. Пробелы до или после знака равенства отбрасываются. Пробелы в начале, в конце и в середине имен модуля или параметра недопустимы. Пробелы в начале или в конце значения параметра отбрасываются. Пробелы внутри значений параметров остаются неизменными.

Любая строка, начинающаяся с хеша (#), пропускается, также как и строки, состоящие только из пробелов.

Любая строка, оканчивающаяся на \, "продолжается" со следующей строкой в привычной для UNIX манере.

Все значения, следующие за знаком равенства в параметрах, либо строковые (кавычки не нужны), либо логические. Последние могут принимать значения yes/no, 0/1 или true/false. Регистр букв не играет роли для логических значений, но для строковых он сохраняется как есть.

## ЗАПУСК RSYNC-ДЕМОНА
rsync-демон запускается при указании параметра --daemon для rsync.

Демон должен быть запущен от root'а, если Вы хотите использовать либо chroot, либо порт для клиентских подключений с номером ниже 1024 (например, по умолчанию порт 873), либо возможность установки прав и атрибутов владения файлами. В противном случае, он должен только иметь соответствующие разрешения на чтение и запись в файлы данных, файлы журналов и блокировки.

Вы можете запустить rsync-демон разными способами: с помощью inetd, как самостоятельный демон или по запросу rsync-клиента, подключающегося через программу удаленной оболочки. Для запуска самостоятельным демоном достаточно команды "rsync --daemon" в соответствующем скрипте запуска. В случае запуска при подключении rsync-клиента через программу удаленной оболочки (указанием двух компонент командной строки, а именно параметра "-e/--rsh" и одного из признаков режима сервера "::" или "rsync://") параметр --daemon автоматически применяется на удаленной стороне.

При запуске от inetd Вам нужно добавить следующую строчку в /etc/services:

rsync 873/tcp

и еще одну в /etc/inetd.conf наподобие:

rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon

Замените "/usr/bin/rsync" тем путем, где у Вас в системе установлена программа rsync. Затем Вам необходимо послать inetd сигнал HUP, чтобы он перечитал свой конфигурационный файл.

Заметьте, что Вам не нужно посылать rsync-серверу сигнал HUP для принудительного прочтения файла rsyncd.conf . Этот файл перечитывается при каждом клиентском подключении.

## ОБЩИЕ ПАРАМЕТРЫ
Все параметры в начале файла (до первого заголовка [модуль]) являются общими параметрами.

У Вас также есть возможность помещать любые параметры, специфичные для модулей, в общую часть конфигурационного файла, для того чтобы заменить указанным при этом значением значение по умолчанию для этого параметра.

motd file

Параметр "motd file" позволяет Вам указать "message of the day" ("сообщение текущего дня") для выдачи его каждому клиентскому подключению. Оно обычно содержит информацию о сайте и какие-либо правовые предупреждения. По умолчанию пуст.

log file

Параметр "log file" указывает rsync-демону файл для ведения журнала сообщений вместо использования для этой цели syslog. Это особенно полезно на таких системах (например, AIX), где syslog() не работает для программ в chroot-окружении.

pid file

Параметр "pid file" указывает rsync-демону файл, куда он должен записать id своего процесса.

syslog facility

Параметр "syslog facility" позволяет Вам указать имя syslog-возможности для журналирования сообщений от rsync-демона. Вы можете использовать любую стандартную syslog-возможность, которая определена в Вашей системе. Общепринятые значения для этого - auth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, security, syslog, user, uucp, local0, local1, local2, local3, local4, local5, local6 и local7. По умолчанию используется ftp.

socket options

Этот параметр может дать бесконечное удовольствие людям, любящим доводить свои системы настройкой до наилучшего уровня. Вы можете контролировать разнообразные параметры сокета, изменение которых может привести к росту (или уменьшению!) скорости передачи. Прочитайте руководство для системного вызова setsockopt() на предмет подробностей о тех параметрах, которыми Вы можете управлять. По умолчанию никакие специальные параметры сокета не устанавливаются.

## ПАРАМЕТРЫ МОДУЛЕЙ
После общих параметров Вам нужно определить модули, каждый из которых предоставляет доступ извне к части дерева каталогов в виде символического имени. Модуль создается при указании его имени в квадратных скобках [модуль] и следующих затем параметров модуля.

comment

Параметр "comment" указывает строку описания, которая показывается вслед за именем модуля, когда клиенты запрашивают список доступных модулей. По умолчанию у модулей нет никакого описания.

path

Параметр "path" указывает каталог файловой системы сервера, который делается доступным этим модулем. Вы должны обязательно указать этот параметр для каждого модуля в rsyncd.conf.

use chroot

Если параметр "use chroot" установлен в true, то rsync-сервер будет выполнять chroot в каталог "path" перед началом приема(передачи) файла от(к) клиента(у). Эта особенность позволяет дополнительно защититься от реализаций использования возможных опасных "дыр", но при этом имеет следующие недостатки: требует привилегий супер-пользователя для запуска, отключается возможность следования по символьным ссылкам за пределы нового корневого (chroot) каталога при чтении, а также подразумевается активным параметр --numeric-ids, потому что /etc/passwd становится недоступным. Если параметр "use chroot" установлен в false, то из безопасных соображений символьные ссылки на другие файлы могут быть только относительными в пределах каталога, указанного в параметре "path", а все начальные слэши удаляются из абсолютных путей. По умолчанию "use chroot" установлен в true.

max connections

Параметр "max connections" позволяет Вам указать максимально-допустимое количество одновременных подключений. Любой клиент, пытающийся подключиться, когда достигнут этот предел, будет получать сообщение с просьбой подключиться позднее. По умолчанию значение 0, которое означает отсутствие ограничения. См. также параметр "lock file".

lock file

Параметр "lock file" указывает файл, который нужно использовать для поддержки работы параметра "max connections". rsync-сервер использует блокировку на этом файле для гарантии, что количество подключений никогда не превысит установленный предел для модулей, разделяющих этот общий файл блокировки. По умолчанию используется /var/run/rsyncd.lock.

read only

Параметр "read only" определяет могут ли клиенты загружать файлы на rsync-сервер или нет. Если "read only" установлен в true, то любые попытки загрузки будут завершаться ошибкой. Если "read only" установлен в false, то загрузка на сервер возможна при том условии, что соответственно установлены разрешения для файлов. По умолчанию для всех модулей действует режим только чтения.

list

Параметр "list" определяет должен ли модуль присутствовать в списке доступных модулей, который запрашивают клиенты. Установкой этого параметра в false Вы можете создавать скрытые модули. По умолчанию модули открыты для просмотра в списке.

uid

Параметр "uid" указывает имя или id пользователя, от которого происходят прием и передача файлов для модуля, в случае если сам rsync-демон был запущен с правами супер-пользователя. В комбинации с параметром "gid" он определяет права доступа к файлам. По умолчанию соответствует пользователю "rsyncd".

gid

Параметр "gid" указывает имя или id группы, от которой происходят прием и передача файлов для модуля, в случае если сам rsync-демон был запущен с правами супер-пользователя. Этот параметр дополняет параметр "uid". По умолчанию принимается равным группе "rsyncd".

exclude

Параметр "exclude" позволяет указать разделенный пробелами список шаблонов, добавляемых к списку исключений. Этот параметр лишь частичный эквивалент для параметра --exclude, указываемого клиентами. Только один параметр "exclude" может быть указан в модуле, но Вы можете использовать "-" и "+" перед шаблонами для точного указания исключающего или включающего действия шаблона.

Т.к. этот список исключений не посылается клиентам, то он применяется только на стороне сервера, т.е. он исключает файлы, получаемые клиентом от сервера, и исключает файлы, удаляемые на сервере при передаче на него, но этот параметр не исключает файлы, посылаемые от клиента серверу, и не исключает файлы, удаляемые на клиенте при передаче их от сервера.

Обратите внимание, что этот параметр не был разработан в целях строгой безопасности. Вполне возможно, что клиент найдет способ обойти список исключений. Если Вы хотите быть абсолютно уверенным, что определенные файлы должны быть недоступны, то используйте параметры "uid"/"gid" в комбинации с установкой прав доступа к файлам.

exclude from

Параметр "exclude from" указывает имя файла на стороне сервера, который содержит шаблоны исключения, по одному на строчку. Этот параметр лишь частичный эквивалент для параметра --exclude-from, указываемого клиентами вместе с соответствующим именем файла-эквивалента. См. параметр "exclude" выше.

include

Параметр "include" позволяет Вам указать разделенный пробелами список шаблонов, которые rsync не должен исключать. Этот параметр лишь частичный эквивалент для параметра --include, указываемого клиентами, потому что он применяется только на стороне сервера. Он полезен как возможность построить довольно сложные правила включения/исключения. Только один параметр "include" может быть указан в модуле, но Вы можете использовать "+" и "-" перед шаблонами для переключения между включающим или исключающим действиями шаблонов. См. выше параметр "exclude".

include from

Параметр "include from" указывает имя файла на стороне сервера, который содержит шаблоны включения, по одному на строчку. Этот параметр лишь частичный эквивалент для параметра --include-from, указываемого клиентами вместе с соответствующим именем файла-эквивалента. См. выше параметр "exclude".

auth users

Параметр "auth users" указывает разделенный запятыми и пробелами список имен пользователей, которым разрешено подключаться к этому модулю. Эти пользователи совсем не обязательно должны быть локальными. Имена также могут содержать символы подстановки для оболочки. Если параметр "auth users" установлен, то клиент будет запрошен на предмет предоставления имени пользователя и пароля при подключении к этому модулю. При этом используется протокол аутентификации по "опознаваемому отклику" ("a challenge response"). Обычный текстовый файл, где хранятся имена пользователей и их пароли, указывается параметром "secrets file". По умолчанию все пользователи могут подключаться без пароля (так называемый, "анонимный rsync").

См. также раздел ПОДКЛЮЧЕНИЕ К RSYNC-СЕРВЕРУ ЧЕРЕЗ УДАЛЕННУЮ ОБОЛОЧКУ в rsync(1) для получения информации о том, как справляться в ситуации отличия пользователя, указанного в rsyncd.conf, от пользователя, получающего удаленную оболочку, при соответствующем подключении к rsync-серверу через программу удаленной оболочки.

secrets file

Параметр "secrets file" указывает имя файла, который содержит пары вида username:password и используемый для аутентификации подключений к этому модулю. Этот файл играет роль только при указании параметра "auth users". Файл по-строковый и содержит пары имя пользователя и пароль, разделенные двоеточием. Любые строки, начинающиеся с хэша (#), рассматриваются как комментарии и пропускаются. Пароли могут состоять из любых символов, но будьте внимательны, потому что многие операционные системы ограничивают длину паролей, которые могут вводиться на клиентской стороне, так что Вы можете найти ситуацию, когда пароли больше 8 символов не работают.

Нет никаких значений по умолчанию для параметра "secrets file", Вы должны явно выбрать имя (например, такое /etc/rsyncd.secrets). Обычно этот файл не должен быть читаемым для всех ("other"); см. параметр "strict modes".

strict modes

Параметр "strict modes" определяет будут ли проверяться права доступа к файлу паролей ("secrets file"). Если "strict modes" установлен в true, то файл паролей не должен читаться любым пользователем с id, отличным от того, из-под которого запущен rsync-демон. Если он установлен в false, то такая проверка не производится. По умолчанию значение true. Этот параметр введен для того, чтобы приспособить запуск rsync на платформе Windows.

hosts allow

Параметр "hosts allow" позволяет Вам указать список шаблонов, на соответствие которым проверяются доменные имена и адреса IP клиентов. Если ни один из шаблонов не совпал, то соединение отвергается.

Каждый шаблон может быть в одной из пяти форм:

o

Разделенный точками десятичный адрес IPv4 в виде a.b.c.d или адрес IPv6 в виде a:b:c::d:e:f. В этом случае адрес IP подключающейся машины клиента должен точно соответствовать шаблону.

o

Адрес/маска в виде ipaddr/n , где ipaddr - это адрес IP, а n - это количество установленных в единицу битов маски сети. Все адреса IP, которые соответствуют указанной таким образом сети, могут подключаться к модулю.

o

Адрес/маска в виде ipaddr/maskaddr, где ipaddr - это адрес IP, а maskaddr - это сетевая маска в разделенной точками десятичной форме написания для IPv4 или в соответствующей форме для IPv6, например, ffff:ffff:ffff:ffff:: вместо /64. Все адреса IP, которые соответствуют указанной таким образом сети, могут подключаться к модулю.

o

Доменное имя. Это имя определяется поиском в обратной зоне и проверяется на соответствие шаблону без учета регистра. Подключение разрешено только для точных соответствий шаблону.

o

Шаблон доменного имени с использованием символов подстановки. Проверка соответствия осуществляется по тем же правилам, которые действуют при обычной для unix подстановке имен файлов. Если шаблон соответствует, то подключение разрешено.

Note IPv6 link-local addresses can have a scope in the address specification:

Заметьте, что локальные адреса IPv6 могут содержать указание на область в спецификации адреса:

fe80::1%link1

fe80::%link1/64

fe80::%link1/ffff:ffff:ffff:ffff::

Вы также можете комбинировать параметр "hosts allow" с отдельно указанным параметром "hosts deny". Если оба параметра указаны, то "hosts allow" проверяется первым, а соответствие по нему влечет за собой разрешение соединения для клиента. Затем проверяется параметр "hosts deny", а соответствие по нему означает, что подключающийся хост будет отвергнут. Если не совпал ни один шаблон ни в "hosts allow", ни в "hosts deny", то при таких условиях соединение разрешается.

По умолчанию параметр "hosts allow" не определен, что означает, что любым хостам разрешено подключаться.

hosts deny

Параметр "hosts deny" позволяет Вам указать список шаблонов, на соответствие которым будут проверяться доменные имена хостов клиентов и их адреса IP. Если обнаружен подходящий шаблон, то соединение с клиентом отвергается. См. параметр "hosts allow" на предмет больших деталей.

По умолчанию параметр "hosts deny" не определен, что означает, что любым хостам разрешено подключаться.

ignore errors

Параметр "ignore errors" указывает rsync-демону игнорировать ошибки ввода/вывода на стороне сервера, когда принимается решение о выполнении фазы удаления при передачах. Обычно rsync пропускает действия, подразумеваемые параметром --delete, если произошли какие-либо ошибки ввода/вывода, что обусловлено необходимостью предохраниться от неконтролируемого удаления из-за временной недоступности ресурсов или других ошибок ввода/вывода. В некоторых случаях это непродуктивно, так что Вы можете отключить такое поведение с помощью этого параметра.

ignore nonreadable

Указывает rsync-серверу полностью игнорировать файлы, которые недоступны на чтение пользователю. Это полезно для общедоступных архивов, в структуре каталогов которых могут встречаться несколько не читаемых файлов, а системный администратор хочет полностью исключить даже возможность их видеть. Этот параметр включен по умолчанию.

transfer logging

Параметр "transfer logging" включает журналирование скачиваний и загрузок на по-файловой основе в формате, подобном тому, который используется ftp-демонами. Если Вам нужно настроить этот формат, то посмотрите параметр "log format". Этот параметр включен по умолчанию.

log format

Параметр "log format" позволяет указать формат используемого для журналирования передач файла, когда это журналирование включено. Формат - это текстовая строка, содержащая встроенные символьные escape-последовательности, обозначенные символом процента (%).

Распознаваемые префиксы:

o

%h для имени удаленной машины

o

%a для удаленного адреса IP

o

%l для размера файла в байтах

o

%p для id процесса rsync-сессии

o

%o для операций, которыми могут быть либо "send", либо "recv"

o

%f для имени файла

o

%P для удаленного пути модуля

o

%m для имени модуля

o

%t для текущих времени и даты

o

%u для аутентифицированного имени пользователя (или пустая строка)

o

%b для количества фактически переданных/принятых байт

o

%c при передачах файлов подставляет количество байт контрольной суммы, полученной для конкретного файла

По умолчанию файл журнала имеет формат "%o %h [%a] %m (%u) %f %l", и "%t [%p] " всегда добавляется к его началу, когда используется параметр "log file".

Скрипт на перле rsyncstats для сбора суммарной статистики из файла с таким форматом прилагается к распространяемому исходному коду rsync.

timeout

The "timeout" option allows you to override the clients choice for IO timeout for this module. Using this option you can ensure that rsync won't wait on a dead client forever. The timeout is specified in seconds. A value of zero means no timeout and is the default. A good choice for anonymous rsync servers may be 600 (giving a 10 minute timeout). Default value is 60 (one minute).

Параметр "timeout" позволяет Вам переопределять клиентский выбор для значения времени ожидания операций ввода-вывода для данного модуля. Использование этого параметра позволяет быть Вам уверенным, что rsync в любом случае не будет постоянно находиться в ожидании реакций от зависших клиентов. Время ожидания указывается в секундах. Значение ноль означает отсутствие установки времени ожидания и является значением по умолчанию. Хорошим выбором для анонимных rsync-серверов может быть значение в 600 секунд (10 минут).

refuse options

Параметр "refuse options" позволяет Вам указать разделенный пробелами список параметров командной строки rsync, которые будут отвергаться Вашим rsync-сервером. При этом должны использоваться полные имена параметров (т.е. Вы должны использовать "checksum", а не "c" для отключения вычисления контрольных сумм). Если параметр должен быть отвергнут, то сервер выдает сообщение об ошибке и завершается. Чтобы только отключить совсем сжатие данных при передаче, Вы можете использовать "dont compress = *" (см. ниже) вместо "refuse options = compress", чтобы избежать возврата ошибки клиентам, запрашивающим сжатие.

dont compress

Параметр "dont compress" позволяет Вам выбрать по шаблону имена файлов, которые не должны сжиматься при передаче. Сжатие обходится дорого относительно использования ресурсов процессора, так что обычно хорошей практикой считается не пытаться сжимать файлы, которые плохо сжимаются, такие как уже сжатые файлы.

Параметр "dont compress" принимает как аргумент разделенный пробелами список шаблонов подстановки, где регистр букв не имеет значения. Любой исходный файл, соответствующий одному из так указанных шаблонов, при передаче не будет сжиматься.

Установки по умолчанию для этого параметра

```

*.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz
```

## НАДЕЖНОСТЬ АУТЕНТИФИКАЦИИ
Протокол аутентификации, используемый в rsync, - это 128-битная основанная на MD4 система "опознаваемых откликов" ("challenge response system"). Хотя я думаю, что никто еще не продемонстрировал прямой взлом подбором ("a brute-force break") такой системы, Вы должны представлять себе, что эта система не обладает "военной надежностью" ("military strength"). Она достаточно хороша для большинства задач, но если Вы действительно хотите безопасности высокого уровня, то я рекомендую запускать rsync поверх ssh.

Также обратите внимание на то, что протокол rsync-сервера в настоящее время не поддерживает какое-либо шифрование передаваемых данных. Предоставляются только функции аутентификации. Используйте ssh в качестве транспорта, если Вам нужно шифрование.

Будущие версии rsync, может быть, будут поддерживать SSL для лучших реализаций аутентификации и шифрования, но это все еще находится в стадии изучения.

## ЗАПУСК RSYNC-СЕРВЕРА ПОВЕРХ ПРОГРАММЫ УДАЛЕННОЙ ОБОЛОЧКИ
Если rsync запущен с параметрами --daemon и --rsh (-e), то он порождает rsync-демон, использующий соединения поверх удаленной оболочки. Некоторые конфигурационные параметры не доступны при запуске от пользователя, отличном от root (например, chroot, setuid/setgid и т.д.). При таком способе запуска нет необходимости конфигурировать inetd или включать порт rsync-сервера в список доступных сетевых служб.

СОВЕТ: Для запуска rsync-сервера с помощью специально выделенного для этого ssh-ключа, используйте возможность указать "command=COMMAND" в записях authorized_keys удаленного пользователя (см. формат authorized_keys sshd (1)), где команду можно указать как

rsync --server --daemon .

ЗАМЕТЬТЕ: встроенная в rsync обработка параметров командной строки ожидает завершающей точки ".", так что убедитесь в ее наличии. Если вам нужно использовать конфигурационный файл rsyncd.conf, отличный от файла по умолчанию, то вы можете добавить параметр --config к вызову команды command:

rsync --server --daemon --config=file .

Обратите внимание, что параметр "--server" - это внутренний параметр, который rsync использует для запуска удаленной версии rsync, с которой он и соединяется, и, таким образом, Вы не должны использовать параметр --server при других условиях.

## ПРИМЕРЫ
Простой пример файла rsyncd.conf, который позволяет организовать анонимный доступ rsync-клиентам к ftp-области в /home/ftp, выглядит так:

```

[ftp]

        path = /home/ftp

        comment = ftp export area
```

Более сложный пример:

uid = nobody

gid = nobody

use chroot = no

max connections = 4

syslog facility = local5

pid file = /var/run/rsyncd.pid

```

[ftp]

        path = /var/ftp/pub

        comment = whole ftp area (approx 6.1 GB)
[sambaftp]

        path = /var/ftp/pub/samba

        comment = Samba ftp area (approx 300 MB)
[rsyncftp]

        path = /var/ftp/pub/rsync

        comment = rsync ftp area (approx 6 MB)

[sambawww]

        path = /public_html/samba

        comment = Samba WWW pages (approx 240 MB)
[cvs]

        path = /data/cvs

        comment = CVS repository (requires authentication)

        auth users = tridge, susan

        secrets file = /etc/rsyncd.secrets
```

Файл /etc/rsyncd.secrets должен выглядеть как-то так:

tridge:mypass

susan:herpass

## ФАЙЛЫ
/etc/rsyncd.conf или rsyncd.conf

## СМ. ТАКЖЕ
rsync(1)

## ОШИБКИ
rsync-сервер не посылает все типы сообщений об ошибках клиентам. Это означает, что клиент может быть введен в заблуждение о причине ошибочного завершения передачи. Ошибка журналируется через syslog на сервере.

Пожалуйста, сообщайте об ошибках! Система сопровождения ошибок для rsync находится на http://rsync.samba.org/ .

## ВЕРСИЯ
Это руководство написано для версий 2.x rsync.

## CREDITS
rsync распространяется под GNU public license (GPL). См. файл COPYING за деталями.

Первичный ftp-сайт для rsync ftp://rsync.samba.org/pub/rsync .

WEB-сайт доступен на http://rsync.samba.org/ .

Нам хотелось бы услышать от Вас, если вам понравилась эта программа.

Эта программа использует библиотеку сжатия zlib, написанную Jean-loup Gailly and Mark Adler.

## БЛАГОДАРНОСТИ
Мы признательны Warren Stanley за его оригинальную идею и патчи для rsync-сервера. Благодарим также Karsten Thygesen за многие его советы и документацию.

## АВТОР
rsync был написан Andrew Tridgell и Paul Mackerras. С ними можно связаться по email tridge@samba.org and Paul.Mackerras@cs.anu.edu.au

## ПЕРЕВОД
Sergey Golovin <svgol@mail.ru>

branch: sisyphus


sources.list

title: sources.list(5)

text:
# sources.list(5)

## НАЗВАНИЕ
sources.list - список репозиториев (источников пакетов для APT)

## ОБЗОР
/etc/apt/sources.list

## ОПИСАНИЕ
Файл /etc/apt/sources.list используется для задания описания источников пакетов дистрибутива.

Источники могут заполняться командой apt-repo.

Каждая строка файла описывает один источник, источники следуют в порядке их приоритета. Текст, начинающийся с символа "#" до конца строки считается комментарием и игнорируется. Для каждого источника в отдельной строке должна быть представлена запись со следующей информацией:

тип [подпись] метод:путь база название

Описание источника состоит из ключевых элементов:

тип

Тип репозитория: rpm (скомпилированные программы), rpm-src (исходные тексты) или rpm-dir (репозиторий в виде одного каталога без индексов).

[подпись]

Необязательная строка указатель на сигнатуру разработчиков. Наличие этого поля подразумевает, что каждый пакет из данного репозитория должен быть подписан соответствующей электронной подписью. Списки доступных сигнатур описываются в файле vendors.list или в файлах с расширением .list, расположенных в каталоге /etc/apt/vendors.list.d.

метод

Способ доступа к репозиторию: http, ftp, cdrom, file, copy.

путь

Путь к репозиторию в терминах выбранного метода.

база

Относительный путь к базе данных репозитория.

название

Название репозитория. Для основных репозиториев используются только classic и debuginfo (могут быть использованы одновременно).

Поскольку в одной строке может быть указан только один источник, то возможно понадобится несколько строк с одним и тем же адресом (метод:путь), если необходим весь класс доступных репозиториев. APT впоследствии будет объединять множество ссылок на один и тот же узел Интернет, в одно соединение, чтобы, например, не происходило соединение по FTP, его закрытие, обращение к другим узлам и повторное соединение с тем же узлом. Данная особенность полезна для доступа к загруженным FTP серверам с ограничением на количество соединений для анонимных пользователей. APT также распараллеливает соединения для разных узлов для более эффективного выполнения своих функций для сайтов с низкой скоростью выкачивания.

Важно, чтобы список источников располагался в порядке их приоритетов с более приоритетными источниками вначале. Обычно их сортируют по скорости от более быстрых к более медленным (CD-ROM, затем источники в локальной сети и затем удаленные узлы Интернет).

При установке определённого пакета APT производит поиск самой новой версии этого пакета во всех известных ему репозиториях вне зависимости от способа доступа к ним. Так, если в репозитории, доступном в сети Интернет, обнаружена более новая в сравнении с компакт-диском версия программы, то APT начнёт загружать соответствующий пакет из сети Интернет. Поэтому, если подключение к сети Интернет отсутствует или ограничено низкой пропускной способностью канала или высокой стоимостью, то следует закомментировать строчки (добавить в начало строки символ #) в /etc/apt/sources.list, относящиеся к ресурсам в сети Интернет.

Поддерживаются множественные описания репозиториев в отдельных файлах в каталоге /etc/apt/sources.list.d. Все файлы в этом каталоге, имена которых заканчиваются на .list и составлены только из букв латинского алфавита, цифр, символов подчеркивания (_), дефисов (-) и точек (.), трактуются APT как конфигурационные файлы, аналогичные /etc/apt/sources.list. С помощью этого расширения можно оформлять описания локальных репозиториев, не опасаясь, что при обновлении файлы конфигурации будут переписаны.

## Способы доступа к репозиторию
Доступны следующие методы:

file

Позволяет указать как источник каталог в файловой системе. Применяется для каталогов, смонтированных по NFS и локальных зеркал.

cdrom

Позволяет APT использовать локальное устройство CDROM со сменным носителем. Для создания записей типа cdrom в файле /etc/apt/sources.list используйте программу apt-cdrom(8).

http

Задает репозиторий на HTTP-сервере. Если установлена переменная окружения $http_proxy в формате http://server:port/, то будет использован прокси-сервер заданный в $http_proxy. Пользователи HTTP/1.1 прокси с авторизацией доступа могут использовать строку формата http://user:pass@server:port/. Заметим, что это метод авторизации, который не отвечает безопастности.

ftp

Задает репозиторий на FTP-сервере. Поведение APT FTP легко настраивается: для подробностей смотрите страницу руководства apt.conf(5). Заметьте, что используя переменную окружения ftp_proxy может быть задан ftp прокси. Возможно задать http прокси (http прокси-йсерверы часто понимают URL для ftp) используя данный метод и ТОЛЬКО этот метод. Заданные в файле с настройками ftp прокси, использующие http, будут игнорироваться.

copy

Идентично методу file за исключением того, что пакеты копируются в каталог кэша вместо того, чтобы использоваться непосредственно из их местоположения. Это полезно в том случае, если для копирования файлов APT используется диск zip.

## Аутентификация Зеркала Репозитория
Если вы пользуетесь зеркалом дистрибутива, то существует риск, что держатель узла может внедрить в пакеты злонамеренный код, тем самым ставя под угрозу защиту всех систем, которые используют такой сайт как источник пакетов. Для снижения возможности возникновения ситуации, подобной этой, apt в состоянии аутентифицировать репозитории пакетов. Имейте в виду, что аутентификация НЕ гарантирует, что содержимое репозитория абсолютно безопасно. Она лишь позволяет убедиться, что:

о

все пакеты в репозитории имеют верную контрольную сумму, соответствующую той, которая содержится в списке пакетов;

o

к получению доступны только те пакеты, которые присутствуют в списке пакетов;

o

все списки пакетов имеют верные контрольные суммы, соответствующие содержащемся в индексном файле;

o

индексный файл имеет цифровую подпись разработчика, идентифицированного в sources.list, соответствующую отпечатку gpg в vendors.list.

apt способен проверить, что сайт, который зеркалирует архив, имеет то же самое содержание что и оригинальный сайт.

Для получения дополнительной информации о настройке аутентификации смотрите vendors.list(5).

## ПРИМЕРЫ
HTTP доступ к репозиторию p8 на сервере ftp.altlinux.org, из каталога /pub/distributions/ALTLinux для архитектуры x86_64:

rpm http://ftp.altlinux.org/pub/distributions/ALTLinux p8/branch/x86_64 classic

rpm http://ftp.altlinux.org/pub/distributions/ALTLinux p8/branch/x86_64-i586 classic

rpm http://ftp.altlinux.org/pub/distributions/ALTLinux p8/branch/noarch classic

Наличие третьего репозитория для x86_64 обусловлено необходимостью поддержки 32-разрядных приложений в 64-разрядной системе. Если такая поддержка не требуется, репозиторий x86_64-i586 тоже не нужен.

Доступ к репозиторию на компакт-диске:

rpm cdrom:[ALT Server x86_64]/ ALTlinux main

Доступ к репозиторию в виде каталога:

rpm-dir file:/<путь-к-репозиторию> x86_64 dir

## СМОТРИТЕ ТАКЖЕ
apt-cache(8), apt.conf(5), apt-repo(8), vendors.list(5)


title: ssh_config(5)

text:
# ssh_config(5)

## ИМЯ
ssh_config — файлы конфигурации клиента протокола SSH из пакета OpenSSH

## ОБЗОР
~/.ssh/config /etc/ssh/ssh_config

## ОПИСАНИЕ
Параметры работы ssh(1) определяются из следующих источников (в порядке уменьшения приоритета):

- опции командной строки

- файл конфигурации пользователя (~/.ssh/config)

- общесистемный файл конфигурации (/etc/ssh/ssh_config)

Файл состоит из разделов, определяющих одинаковый набор параметров для разных множеств хостов (последние задаются шаблонами в директивах “Host ).” Если множества пересекаются, то для их общего подмножества используются параметры раздела встреченного при разборе первым (ближе к началу файла).

Таким образом, если множество хостов, для которых раздел определяет параметры, является подмножеством другого, то для того чтобы первый раздел имел силу, следует указывать его перед вторым. Имя хоста, которое проверяется на соответствие шаблонам, задаётся в командной строке.

Формат файла конфигурации:

Пустые и строки начинающиеся с ‘#’ считаются комментариями. Директивы имеют формат “параметр аргументы”. Аргументы отделяются от имени параметра пробелом или знаком ‘=’ (с необязательными пробелами); последнее полезно при указании директив через опцию -o командной строки ssh, scp и sftp, т.к. при использовании пробела понадобилось заключать директиву в кавычки (").

Возможные параметры и их описание (регистр аргументов учитывается, регистр имён параметров - нет):

Host

Ограничивает множество хостов, к которым применяются последующие (до ближайшей новой директивы Host) директивы, по указанным шаблонам (хост должен соответствовать хотя бы одному шаблону). Шаблон состоящий из одного символа ‘*’ соответствует любому хосту. Под хостом в данном контексте понимается аргумент имя-хоста передаваемый в командной строке (т.е. никаких преобразований перед сравнением не выполняется). О шаблонах см. раздел ШАБЛОНЫ.

AddressFamily

Семейство адресов которое должен использовать клиент. Допустимые значения: “any”, “inet” (только IPv4) и “inet6” (только IPv6).

BatchMode

При значении “yes”, запрос паролей отключается. Полезно при использовании программы их сценариев, выполняемых без вмешательства человека. Значение по умолчанию: “no”.

BindAddress

Какой из адресов локальной системы (если их несколько) использовать в качестве исходного для соединений. Параметр не учитывается если значение UsePrivilegedPort равно “yes”.

ChallengeResponseAuthentication

Определяет, разрешается ли безпарольная идентификация "вызов-ответ". Поддерживаются все схемы идентификации login.conf(5) Значение по умолчанию: “yes”.

CheckHostIP

При значении “yes”, ssh(1) будет выполнять проверку наличия IP-адресов в файле known_hosts. Это позволяет обнаруживать подмену ключа хоста посредством вмешательства в работу с DNS. При значении “no”, проверка не выполняется. Значение по умолчанию: “yes”.

Cipher

Шифр для защиты сеансов по протоколу версии 1. Поддерживаются “blowfish”, “3des”, и “des”. Алгоритм des поддерживается в клиенте ssh(1) только для совместимости со старыми серверами не поддерживающими 3des. Рекомендуется воздержаться от использования первого из-за его слабой стойкости. Значение по умолчанию: “3des”.

Ciphers

Допустимые для протокола версии 2 шифры. Несколько шифров указываются через запятую. Поддерживаются следующие шифры: “3des-cbc”, “aes128-cbc”, “aes192-cbc”, “aes256-cbc”, “aes128-ctr”, “aes192-ctr”, “aes256-ctr”, “arcfour128”, “arcfour256”, “arcfour”, “blowfish-cbc” и “cast128-cbc”. Значение по умолчанию:

```
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,
arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr,
aes192-ctr,aes256-ctr
```

ClearAllForwardings

Отключить все локальные удалённые и динамические перенаправления портов (туннелирования), указанные в файлах конфигурации и в командной строке. Эта директива обычно указывается в командной строке ssh(1) для отмены всех туннелирований и автоматически устанавливается утилитами scp(1) и sftp(1). Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”.

Compression

Использовать сжатие Допустимые значения: “yes” и “no”. Значение по умолчанию: “no”.

CompressionLevel

Степень сжатия, если оно используется. Допустимы целые значения от 1 (быстрое сжатие) до 9 (сильное сжатие). Значение по умолчанию: 6. Параметры сжатия соответствующие каждому значению описаны в gzip(1). Данный параметр относится только к протоколу версии 1.

ConnectionAttempts

Количество безуспешных попыток подключения (выполняются с интервалом в 1 секунду) после которого программа завершит работу. Может быть полезно в сценариях если соединение не устойчивое. Значение по умолчанию: 1.

ConnectTimeout

Время ожидания (в секундах) подключения к серверу SSH (имеет больший приоритет чем системное значение времени ожидания протокола TCP). Это значение игнорируется если с сервером не удаётся соединиться потому что он отклоняет запросы на подключение.

ControlMaster

Разрешить использовать соединение для нескольких сеансов. При этом первый сеанс называется основным, а другие - дополнительными. При значении “yes”, ssh(1) будет ожидать дополнительные подключения на управляющем сокете определённом в директиве ControlPath. При выполнении дополнительного подключения значение ControlPath должно быть таким же, а значение ControlMaster

- “no” (значение по умолчанию). Если открыть новые сеанс через указанный сокет не удаётся, то для него создаётся отдельное (обычное) соединение. При значении “ask” ssh будет ожидать запросы на новые сеансы, но требовать подтверждения с помощью программы указанной в SSH_ASKPASS (см. ssh-add(1) ). Если сокет определённый в ControlPath открыть не удастся то создаётся отдельное (обычное) соединение.

Туннелирование X11 и ssh-agent(1) через общие соединения поддерживается, но дисплей и исполнительная программа (агент ключей) в нём будут принадлежать основному сеансу, т.е. туннель может быть использован только для одного дисплея и одной исполнительной программы.

Для таких случаев предназначены два дополнительных значения: пытаться использовать существующее соединение, и создавать новое если туннелирование через существующее (и тем более несуществующее) соединение невозможно: “auto” и “autoask”. Аналогично, второе значение включает подтверждения.

ControlPath

Путь к управляющему сокету для совместного использования соединения (см. ControlMaster выше). Значение “none” отключает совместное использование соединения. Последовательность ‘%l’ в пути заменяется на имя локального хоста, ‘%h’ на имя целевого хоста, ‘%p’ на порт, ‘%r’ - на имя пользователя в удалённой системе. Рекомендуется в пути всегда использовать как минимум %h, %p и %r для обеспечения уникальности.

DynamicForward

Перенаправлять трафик указанного порта TCP локальной системы на порт удалённой системы через защищённый канал. Порт удалённой системы определяется по протоколу приложения которое подключается к локальному порту. Значение параметра должно быть в виде [один-из-адресов-локальной-системы:]порт. При указании адреса IPv6 его необходимо заключать в квадратные скобки либо использовать альтернативный формат: [один-из-адресов-локальной-системы/]порт. По умолчанию локальный порт привязывается к адресу в соответствии с GatewayPorts. Однако параметр один-из-адресов-локальной-системы позволяет явно указать адрес для привязывания. Если указать в качестве один-из-адресов-локальной-системы значение “localhost,” то порт будет доступен только с локальной системы, а если ‘*’ - порт будет доступен со всех интерфейсов.

В настоящее время поддерживаются протоколы SOCKS4 и SOCKS5, ssh(1) имитирует работу сервера SOCKS. Допустимо использование нескольких перенаправлений, как посредством указания в данной директиве, так и через командную строку. Привилегированные порты может перенаправлять только суперпользователь.

EnableSSHKeysign

Значение “yes” указанное в глобальном файле конфигурации /etc/ssh/ssh_config позволяет во время аутентификации по хосту ( HostbasedAuthentication ) использовать вспомогательную программу ssh-keysign(8) Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Эта директива должна указываться в самом общем разделе файла (для всех хостов). См. ssh-keysign(8)

EscapeChar

Символ отменяющий интерпретирование следующего за ним символа (по умолчанию - ‘~’). Символ можно также задавать через командную строку. В качестве аргумента следует указывать последовательность из ‘^’ и символа, либо “none” для отключения данного механизма (что позволит использовать соединение для передачи двоичных данных без искажений).

ExitOnForwardFailure

Закрывать соединение если ssh(1) не удаётся настроить все запрошенный динамические, локальные и удалённые туннелирования. Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”.

ForwardAgent

Перенаправлять (туннелировать) ли запросы к программе управляющей ключами на удалённую систему (используется для аутентификации через сервер-посредник). Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Такое туннелирование следует использовать с осторожностью. Если пользователь может обойти ограничение на доступ к файлам в удалённой системе (для сокета менеджера ключей в домене Unix), то он также получает возможность использовать локальный менеджер (и соответственно ключи которыми он управляет) через туннелированное соединение для аутентификации на других серверах от чужого имени (т.е. доступа к самим ключам у него не будет, хотя аутентификация с помощью них будет возможна).

ForwardX11

Включить автоматическое туннелирование соединений X11 через защищённый канал. При этом переменная DISPLAY устанавливается в соответствующее значение. Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Используйте эту функцию с осторожностью. Если пользователь может обойти ограничение на доступ к файлам в удалённой системе (для базы данных прав доступа X11), то он получает возможность доступа к локальному дисплею X11 через туннель. Если параметр ForwardX11Trusted включен, злоумышленник сможет получать данные о таких действиях как движения указателем мыши.

ForwardX11Trusted

При значении “yes”, удалённые клиенты X11 будут получать полный доступ к исходному дисплею X11. При значении “no”, удалённые клиенты X11 будут считаться ненадёжными и будут приниматься меры для предотвращения получения или подмены данных принадлежащих надёжным клиентам X11. Более того, для маркера xauth(1) используемого для сеанса будет устанавливаться срок действия 20 минут. По прошествии этого времени удалённым клиентам будет отказываться в доступе.

Значение по умолчанию - “no”.

См. спецификацию расширения X11 SECURITY.

GatewayPorts

Определяет, разрешено ли удалённым машинам подключение к локальным портам, выделенным для туннелирования. По умолчанию ssh(1) делает доступными порты, используемые для туннелирования инициируемого клиентом, только для подключений к кольцевому (loopback) адресу, т.е. удалённые машины подключаться к перенаправляемым портам не могут. С помощью данного параметра можно исправить такое положение дел (т.е. допустить подключения целевым адресом которых является некольцевой - например подключения инициируемые через разные интерфейсы). Допустимые значения - “yes” or “no”. Значение по умолчанию - “no”.

GlobalKnownHostsFile

Файл который следует использовать в качестве глобальной базы данных ключей хостов вместо стандартного /etc/ssh/ssh_known_hosts.

GSSAPIAuthentication

Допускать аутентификацию по GSSAPI. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 2.

GSSAPIDelegateCredentials

Перенаправлять (делегировать) идентификационные данные серверу. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 2.

HashKnownHosts

Создавать хэши имён хостов при добавлении их в ~/.ssh/known_hosts. Использование хэшей имён хостов вместо самих имён хостов поддерживается и ssh(1) и sshd(8), и позволяет предотвратить утечку информации в случае разглашения содержимого файла. Значение по умолчанию - “no”. Уже имеющиеся в файле имена хостов не будут преобразованы автоматически, это можно сделать вручную с помощью утилиты ssh-keygen(1).

HostbasedAuthentication

Пытаться ли выполнять аутентификацию по хосту, т.е. аутентификацию по rhosts или /etc/hosts.equiv в сочетании с открытым ключом. Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Этот параметр схож с RhostsRSAAuthentication и применим только к протоколу версии 2.

HostKeyAlgorithms

Алгоритмы ключей для протокола 2 в порядке предпочтения. Значение по умолчанию: “ssh-rsa,ssh-dss”.

HostKeyAlias

Псевдоним который следует использовать вместо настоящего имени хоста при поиске или сохранении ключа в базе данных ключей хостов. Полезно при туннелировании соединений SSH, а также при использовании нескольких серверов на одном хосте.

HostName

Устанавливает соответствие между псевдонимами, сокращениями и настоящими именами хостов. По умолчанию используется имя передаваемое в командной строке. Допустимо непосредственное указание IP-адресов (как в командной строке, так и в директивах HostName ).

IdentitiesOnly

Разрешить использование программой ssh(1) только файлов идентификации указанных в файлах конфигурации ssh_config, даже если ssh-agent(1) предоставляет и другие субъекты. Допустимые значения - “yes” и “no”. Полезно если ssh-agent предоставляет много различных субъектов. Значение по умолчанию - “no”.

IdentityFile

Файл с идентификационными данными (субъектом) RSA или DSA. Значение по умолчанию - ~/.ssh/identity для протокола версии 1, ~/.ssh/id_rsa и ~/.ssh/id_dsa для протокола версии 2. Кроме того для аутентификации будут использоваться данные предоставляемые менеджером ключей. В имени файла может присутствовать тильда для указания каталог пользователя, а также следующие последовательности: ‘%d’ (домашний каталог локального пользователя). ‘%u’ (имя локального пользователя), ‘%l’ (имя локального хоста), ‘%h’ (имя удалённого хоста), ‘%r’ (имя удалённого пользователя).

Допустимо указание нескольких файлов с идентификационными данными в файлах конфигурации; все они будут пробоваться по очереди.

KbdInteractiveDevices

Список методов для интерактивной аутентификации через запятую. По умолчанию используется список определяемый сервером. Соответственно, доступные методы зависят от сервера. В случае сервера OpenSSH это может быть любое подмножество из “bsdauth”, “pam” и “skey”.

LocalCommand

Команда выполняемая в локальной системе после успешного подключения к серверу. Для выполнения используется /bin/sh. Данная директива принимается во внимание только если включен параметр PermitLocalCommand.

LocalForward

Перенаправлять трафик поступающий на локальный порт TCP через защищённый канал на указанный хост и порт с удалённой машины. Первый аргумент должен быть в форме [один-из-адресов-локальной-системы:]порт второй - хост:порт. При указании адреса IPv6 его необходимо заключать в квадратные скобки либо использовать альтернативный формат: [один-из-адресов-локальной-системы/]порт. хост/порт. Допустимо использование нескольких перенаправлений, как посредством указания в данной директиве, так и через командную строку. Привилегированные порты может перенаправлять только суперпользователь. По умолчанию локальный порт привязывается к адресу в соответствии с GatewayPorts. Однако параметр один-из-адресов-локальной-системы позволяет явно указать адрес для привязывания. Если указать в качестве один-из-адресов-локальной-системы значение “localhost,” то порт будет доступен только с локальной системы, а если ‘*’ - порт будет доступен со всех интерфейсов.

LogLevel

Задаёт уровень сообщений для журнала протоколов ssh(1). Допустимыми являются значения: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 и DEBUG3. Значение по умолчанию - INFO. Значения DEBUG и DEBUG1 эквивалентны. DEBUG2 и DEBUG3 отвечают наибольшей подробности.

MACs

Порядок предпочтения алгоритмов MAC (Message Authentication Code - код установления подлинности сообщения). Они используются в протоколе версии 2 для гарантирования целостности данных. Несколько алгоритмов следует указывать через запятую. Значение по умолчанию: “hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96”.

NoHostAuthenticationForLocalhost

Этот параметр полезен если домашний каталог является общим для нескольких машин. В этом случае localhost будет соответствовать каждый раз разным машинам, в результате чего пользователи будут получать предупреждения об изменённых ключах хоста. Данный параметр позволяет отключить аутентификацию по хосту для localhost. Допустимые значения - “yes” и “no”. По умолчанию ключ localhost проверяется.

NumberOfPasswordPrompts

Число попыток ввода пароля предоставляемых пользователю. Значение по умолчанию - 3.

PasswordAuthentication

Использовать ли аутентификацию по паролю. Допустимые значения - “yes” и “no”. Значение по умолчанию - “yes”.

PermitLocalCommand

Разрешить выполнение локальной команды указанной в LocalCommand или через управляющую последовательность !command в ssh(1). Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”.

Port

Порт на удалённой машине к которому следует подключаться. Значение по умолчанию - 22.

PreferredAuthentications

Порядок предпочтения методов аутентификации протокола 2. Значение по умолчанию: “gssapi-with-mic, hostbased, publickey, keyboard-interactive, password”.

Protocol

Версии протокола которые следует пытаться использовать, в порядке предпочтения. Допустимые значения - ‘1’ и ‘2’. Значение по умолчанию - “2,1”. Это означает, что ssh сначала пытается подключиться по протоколу 2 и, если он не поддерживается, пробует протокол 1.

ProxyCommand

Команда-посредник используемая для подключения к серверу. Для выполнения используется /bin/sh. В команде ‘%h’ заменяется на имя хоста, ‘%p’ - на порт. Команда, вообще говоря, может делать что угодно. Предполагается, что она считывает данные из стандартного ввода и записывает данные в стандартный вывод. Она должна подключаться к sshd(8) на какой-либо машине или запускать sshd -i. При управлении ключами хостов будет использоваться HostName подключаемого хоста (по умолчанию - имя введенное пользователем). Значение “none” отключает данную функцию. Если для подключения используется команда-посредник, CheckHostIP не учитывается. Данная директива может использоваться с nc(1) Например, следующая директива позволяет подключаться через HTTP-прокси на 192.0.2.0:

```
ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p
```

PubkeyAuthentication

Пытаться ли выполнять аутентификацию по открытому ключу. Допустимые значения - “yes” и “no”. Значение по умолчанию - “yes”. Данный параметр относится только к протоколу версии 2.

RekeyLimit

Ограничение на передаваемый объём данных для одного ключа сеанса. После превышения процедура создания ключа сеанса повторяется. Единицы по умолчанию - байты. Приставки ‘K’, ‘M’, и ‘G’ позволяют указывать значения в более крупных единицах. Значение по умолчанию - между ‘1G’ и ‘4G’, в зависимости от шифра. Данный параметр относится только к протоколу версии 2.

RemoteForward

Перенаправлять трафик порта TCP на удалённой машине через защищённый канал на указанные хост/порт, соединение с которыми будет выполняться с локальной системы. Первый аргумент должен быть в форме [один-из-адресов-локальной-системы:]порт второй - хост:порт. При указании адреса IPv6 его необходимо заключать в квадратные скобки либо использовать альтернативный формат: [один-из-адресов-локальной-системы/]порт. хост/порт. Допустимо использование нескольких перенаправлений, как посредством указания в данной директиве, так и через командную строку. Привилегированные порты может перенаправлять только суперпользователь. Если один-из-адресов-локальной-системы не указан, то принимаются запросы, имеющие в качестве адреса назначения кольцевой (loopback) адрес. Если один-из-адресов-локальной-системы равен ‘*’ или пустой, то соединения принимаются со всех интерфейсов. Указание в качестве один-из-адресов-локальной-системы удалённого адреса сработает только если на сервере будет включен параметр GatewayPorts (см. sshd_config(5)).

RhostsRSAAuthentication

Пытаться ли выполнять аутентификацию по rhosts Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 1 и требует setuid root для ssh(1).

RSAAuthentication

Пытаться ли выполнять аутентификацию только по ключу RSA. Допустимые значения - “yes” и “no”. RSA будет выполняться только если будет найден файл с идентификационными данными или при работающем менеджере ключей. Значение по умолчанию - “yes”. Данный параметр относится только к протоколу версии 1.

SendEnv

Переменные локальной среды environ(7) которые следует посылать серверу для копирования. Эта функция доступна только для протокола 2. Сервер также должен поддерживать передачу переменных, кроме того, таковая должна быть разрешена. За это отвечает параметр AcceptEnv файла конфигурации сервера sshd_config(5). Переменные задаются по шаблону имён. Несколько шаблонов разделяются пробелами, либо указываются в нескольких директивах SendEnv. По умолчанию не передаются никакие переменные. См. ШАБЛОНЫ.

ServerAliveCountMax

Количество запросов проверяющих доступность сервера (см. ниже), которые могут оставаться без ответа. Если предел достигнут, ssh(1) отключится от сервера клиента и завершит сеанс. Имейте в виду, запросы server alive отличаются от TCPKeepAlive (см. ниже). Данные запросы отправляются через защищённый канал и поэтому не могут быть подменены. Параметр TCPKeepAlive допускает возможность подменены данных. Механизм server alive полезен если поведение клиента или сервера зависит от активности соединения. Значение по умолчанию - 3. Если ServerAliveInterval (см. ниже) равно 15, а для ServerAliveCountMax оставлено значение по умолчанию, то не отвечающий сервер SSH будет отключаться приблизительно через 45 секунд. Данный параметр относится только к протоколу версии 2.

ServerAliveInterval

Время бездействия со стороны сервера в секундах, после которого ssh(ё) отправляет через защищённый канал запрос отклика серверу. Значение по умолчанию - 0, что означает, что серверу не будут направляться такие запросы. Этот параметр применим только с протоколом версии 2.

SmartcardDevice

Устройство для чтения смарт-карты с частным ключом RSA. По умолчанию устройство не указано и поддержка смарт-карт отключена.

StrictHostKeyChecking

При значении “yes”, ключи хоста не будут автоматически добавляться в ~/.ssh/known_hosts и программа не будет соединяться с хостами ключи которых изменились. Это позволяет лучше защититься от "троянских коней", некоторые люди сочтут это раздражающим, особенно если им приходится часто подключаться к новым серверам. При значении “no”, новые ключи хостов будут автоматически добавляться в соответствующий файл. При значении “ask”, новые ключи хостов будут добавляться после подтверждения пользователем, к хостам, ключи которых изменились, по-прежнему подключиться будет невозможно. Ключи имеющиеся в файле известных хостов проверяются автоматически в любом случае. Допустимые значения - “yes”, “no”, и “ask”. Значение по умолчанию - “ask”.

TCPKeepAlive

Указывает, будет ли система посылать другой стороне контрольные сообщения для удержания соединения активным. Если они посылаются, то разрыв соединения или аварийный отказ одной из машин будут должным образом замечены. Однако, при этом временная потеря маршрута также повлечёт за собой разрыв соединения и некоторые люди сочтут это раздражающим. Значение по умолчанию - “yes” (отправлять сообщения TCP keepalive). Может быть полезно также в сценариях.

Для отключения посылки сообщений TCP keepalive установите значение “no”.

Tunnel

Запрашивать туннелирование (между клиентом и сервером) для устройств tun(4) Допустимые значения - “yes”, “point-to-point” (layer 3), “ethernet” (layer 2), и “no”. При указании “yes” программа будет запрашивать режим туннелирования по умолчанию, “point-to-point”. Значение по умолчанию - “no”.

TunnelDevice

Устройства tun(4) которые должны открываться на стороне клиента (local_tun) и сервера (remote_tun). Формат аргумента: local_tun[:remote_tun]. Устройства можно указывать по числовому идентификатору. Значение “any”, отвечает ближайшему доступному устройству tunnel. Если часть remote_tun не указана, она считается равной “any”. Значение по умолчанию - “any:any”.

UsePrivilegedPort

Использовать ли привилегированный порт для исходящих соединений. Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Значение “yes” требует setuid root для ssh(1). Для аутентификации RhostsRSAAuthentication на старых серверах требуется значение этого параметра “yes”.

User

Имя пользователя которое следует использовать при регистрации в удалённой системе. Полезно когда на разных серверах используются разные имена, т.к. избавляет от надобности вспоминать каждый раз нужное имя.

UserKnownHostsFile

Файл который следует использовать в качестве пользовательской базы данных ключей хостов вместо стандартного ~/.ssh/known_hosts.

VerifyHostKeyDNS

Следует ли проверять удалённый ключ по записям DNS и SSHFP. При значении “yes”, клиентом будет считаться что ключи соответствующие отпечаткам DNS являются надёжными. В случае небезопасных отпечатков поведение будет таким как при значении “ask”: будут показываться сведения об отпечатке, пользователь должен будет явно утвердить новый ключ хоста, в соответствие с StrictHostKeyChecking. Допустимые значения - “yes”, “no”, и “ask”. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 2. См. также ПРОВЕРКА КЛЮЧЕЙ ХОСТОВ в ssh(1).

XAuthLocation

Полное имя команды xauth(1). Значение по умолчанию - /usr/X11R6/bin/xauth.

## ШАБЛОНЫ
Шаблон может состоять из обычных символов, ‘*’ (обозначает любое (включая ноль) количество символов), и ‘?’ (обозначает один любой символ). Например, для определения правил для всех хостов в домене “.co.uk” следует использовать такую директиву:

Host *.co.uk

Следующий шаблон будет соответствовать хостам в диапазоне 192.168.0.[0-9]:

Host 192.168.0.?

Список-шаблонов - это несколько шаблонов разделённых запятыми. Возможно указание отрицательного шаблона посредством предварения его восклицательным знаком (‘!’). Например, для того чтобы разрешить использование ключа во всей организации за исключением модемного пула “dialup”, укажите такой шаблон (в authorized_keys):

from="!*.dialup.example.com,*.example.com"

## ФАЙЛЫ
~/.ssh/config

Файл конфигурации для текущего пользователя. Его формат описан выше. Он используются клиентом SSH. Права доступа: чтение/запись для пользователя (владельца), не доступен для остальных.

/etc/ssh/ssh_config

Общесистемный файл конфигурации. Параметры определённые в нём используются если аналогичные параметры в пользовательском файле не определены (для соответствующего подмножества хостов), в т.ч. если пользовательский файл не существует. Этот файл должен быть доступен для чтения всем.

## СМ. ТАКЖЕ
ssh(1)

## АВТОРЫ
Продукт OpenSSH является производным от оригинальной и свободной версии ssh 1.2.12 выпущенной Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt и Dug Song удалили много ошибок, самостоятельно реализовали функции доступные в несвободных версиях оригинальной программы и создали OpenSSH. Markus Friedl реализовал поддержку протоколов SSH версии 1.5 и 2.0.

Николай Шафоростов <shafff@ukr.net> 2007


title: sshd_config(5)

summary: файл конфигурации службы openSSH SSH

text:
# sshd_config(5)

## ИМЯ
sshd_config — файл конфигурации службы openSSH SSH

## ОБЗОР
/etc/ssh/sshd_config

## ОПИСАНИЕ
sshd(8) sshd считывает данные о конфигурации из /etc/ssh/sshd_config (или из файла указанного в командной строке при помощи параметра -f). Файл содержит пары параметр-значение, по одной на строку. Пустые и строки начинающиеся с ‘#’ интерпретируются как комментарии. Если аргументы содержат пробелы, они должны быть заключены в двойные кавычки (".)

Далее приведены описания возможных параметров (регистр имён аргументов учитывается, регистр имён параметров - нет):

AcceptEnv

Список переменных среды, которые, будучи заданы клиентом, будут копироваться в environ(7) сеанса. Соответствующая настройка на стороне клиента выполняется параметром SendEnv и описана в ssh_config(5) Переменные указываются по имени, допускаются символы подстановки ‘*’ и ‘?’. Несколько переменных среды можно указывать через пробелы или в нескольких параметрах AcceptEnv. Данный параметр введен для предотвращения обхода ограничений среды пользователя посредством изменения значений переменных среды. По умолчанию не принимаются никакие переменные среды.

AddressFamily

Семейство адресов которое должна использовать служба sshd(8). Допустимые значения: “any”, “inet” (только IPv4) и “inet6” (только IPv6). Значение по умолчанию - “any”.

AllowAgentForwarding

Определяет, будет ли разрешено перенаправление ssh-agent(1). Значение по умолчанию - “yes”. Имейте ввиду, что отключение пересылки агента не увеличит уровень защищённости системы пока пользователям не запрещён доступ к командной оболочке, так как они всегда могут установить свои собственные перенаправления.

AllowGroups

Список шаблонов имён групп через пробел. Если параметр определён, регистрация в системе разрешается только пользователям, чья главная или вспомогательная группы соответствуют какому-либо из шаблонов. Допустимы только имена групп; числовой идентификатор группы не распознаётся. По умолчанию разрешена регистрация в системе для членов всех групп. Разрешающие/запрещающие (allow/deny) директивы обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, AllowGroups. См. ШАБЛОНЫ в ssh_config(5)

AllowTcpForwarding

Определяет, будет ли разрешено перенаправление TCP. Значение по умолчанию - “yes”. Имейте ввиду, что отключение пересылки TCP не увеличит уровень защищённости системы пока пользователям не запрещён доступ к командной оболочке, так как они всегда могут установить свои собственные перенаправления.

AllowUsers

Список имён пользователей через пробел. Если параметр определён, регистрация в системе будет разрешена только пользователям, чьи имена соответствуют одному из шаблонов. Допустимы только имена пользователей; числовой идентификатор пользователя не распознаётся. По умолчанию разрешена регистрация в системе для всех пользователей. Если шаблон указывается в форме ПОЛЬЗОВАТЕЛЬ@ХОСТ, его две части проверяются отдельно, таким образом разрешая доступ только пользователям с указанными именами, подключающимся с указанных хостов. Разрешающие/запрещающие (allow/deny) директивы обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, AllowGroups. См. ШАБЛОНЫ в ssh_config(5)

AuthorizedKeysFile

Файл с открытыми ключами которые могут быть использованы для аутентификации пользователей. Допустимо указание шаблонов, они преобразуются при настройке соединения: %% заменяется на символ '%', %h заменяется на домашний каталог идентифицируемого пользователя, %u - на имя пользователя. После преобразования AuthorizedKeysFile интерпретируется либо как абсолютный путь, либо как путь относительно домашнего каталога пользователя. Значение по умолчанию - “.ssh/authorized_keys”.

Banner

На некоторых территориях для получения защиты со стороны закона может быть необходимо послание предупредительного сообщения перед аутентификацией. Содержимое указанного файла будет отправлено удалённому пользователю прежде, чем будет разрешена аутентификация. Этот параметр доступен только с протоколом версии 2. По умолчанию не выводится никакой информации.

ChallengeResponseAuthentication

Определяет, разрешается ли безпарольная аутентификация "вызов-ответ". Поддерживаются все схемы аутентификации login.conf(5) Значение по умолчанию - “yes”.

Ciphers

Допустимые для протокола версии 2 шифры. Несколько шифров указываются через запятую. Поддерживаются следующие шифры: “3des-cbc”, “aes128-cbc”, “aes192-cbc”, “aes256-cbc”, “aes128-ctr”, “aes192-ctr”, “aes256-ctr”, “arcfour128”, “arcfour256”, “arcfour”, “blowfish-cbc”, и “cast128-cbc”. Значение по умолчанию:

```
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,
arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr,
aes192-ctr,aes256-ctr
```

ClientAliveCountMax

Количество запросов проверяющих доступность клиента (см. ниже), которые могут оставаться без ответа. Если предел достигнут, sshd(8) отключит клиента и завершит сеанс. Имейте в виду, запросы client alive отличаются от TCPKeepAlive (см. ниже). Данные запросы отправляются через защищённый канал и поэтому не могут быть подменены. Параметр TCPKeepAlive допускает возможность подменены данных. Механизм client alive полезен если поведение клиента или сервера зависит от активности соединения. Значение по умолчанию -3. Если ClientAliveInterval (см. ниже) равно 15, а для ClientAliveCountMax оставлено значение по умолчанию, не отвечающие клиенты SSH будут отключаться приблизительно через 45. Данный параметр относится только к протоколу версии 2.

ClientAliveInterval

Время бездействия со стороны клиента в секундах, после которого sshd(8) отправляет через защищённый канал запрос отклика клиенту. Значение по умолчанию - 0, что означает, что клиенту не будут направляться такие запросы. Этот параметр применим только с протоколом версии 2.

Compression

Разрешить сжатие сразу, после аутентификации или вообще запретить его. Допустимые значения - “yes”, “delayed”, и “no”. Значение по умолчанию - “delayed”.

DenyGroups

Список шаблонов имён групп через пробел. Если параметр определён, регистрация в системе пользователям, чья главная или вспомогательная группа соответствуют содержащимся в списке шаблонам, не разрешается. Допустимы только имена групп; числовой идентификатор группы не распознаётся. По умолчанию регистрация в системе разрешена для всех групп. Разрешающие/запрещающие (allow/deny) директивы обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, AllowGroups. См. ШАБЛОНЫ в ssh_config(5)

DenyUsers

Список имён пользователей через пробел. Если параметр определён, регистрация в системе пользователей, чьи имена соответствуют одному из шаблонов, будет запрещена. Допустимы только имена пользователей; числовой идентификатор пользователя не распознаётся. По умолчанию разрешена регистрация в системе для всех пользователей. Если шаблон указывается в форме ПОЛЬЗОВАТЕЛЬ@ХОСТ, его две части проверяются отдельно, таким образом запрещается доступ только пользователям с указанными именами, подключающимся с указанных хостов. Разрешающие/запрещающие (allow/deny) директивы обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, AllowGroups. См. ШАБЛОНЫ в ssh_config(5)

ForceCommand

Выполнять указанную команду после регистрации пользователя в системе, игнорируя команду запрашиваемую им. Команда запускается оболочкой пользователя с ключом -c. Это относится к выполнению оболочки, команды или подсистемы. обычно применяется внутри блока Match. Команда запрошенная пользователем посещается в переменную среды SSH_ORIGINAL_COMMAND.

GatewayPorts

Определяет, разрешено ли удалённым машинам подключение к портам, выделенным для туннелирования трафика клиентов. По умолчанию sshd(8) делает доступными порты, используемые для туннелирования инициируемого сервером, только для кольцевого (loopback) адреса, т.е. удалённые машины подключаться к перенаправляемым портам не могут. С помощью данного параметра можно исправить такое положение дел. Значение “no” разрешает туннелирование только в рамках данной системы, “yes” разрешает туннелирование для хостов соответствующих шаблону, а “clientspecified” позволяет клиенту самостоятельно выбирать адрес для туннелирования. Значение по умолчанию - “no”.

GSSAPIAuthentication

Допускать аутентификацию по GSSAPI. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 2.

GSSAPICleanupCredentials

Очищать ли кэш аутентификационных данных клиента при завершении сеанса. Значение по умолчанию - “yes”. Данный параметр относится только к протоколу версии 2.

HostbasedAuthentication

Допускать аутентификацию по хостам, т.е. аутентификацию по rhosts или /etc/hosts.equiv в сочетании с открытым ключом клиента. Этот параметр схож с RhostsRSAAuthentication и применим только к протоколу версии 2. Значение по умолчанию - “no”.

HostbasedUsesNameFromPacketOnly

Отключить выполнение запросов имени хоста при обработке файлов ~/.shosts, ~/.rhosts и /etc/hosts.equiv в рамках аутентификации по хосту (HostbasedAuthentication). При значении “yes” для сравнения будет использоваться имя указанное клиентом, а не имя которое может быть получено стандартными средствами соединения TCP. Значение по умолчанию - “no”.

HostKey

Файл с частными ключами хоста. Значение по умолчанию - /etc/ssh/ssh_host_key для протокола 1, и /etc/ssh/ssh_host_rsa_key и /etc/ssh/ssh_host_dsa_key для протокола 2. Имейте ввиду, что sshd(8) не будет принимать файлы частных ключей доступные для чтения всей группе или вообще всем пользователям. Можно указывать несколько файлов с ключами хоста. Ключи “rsa1” используются для протокола версии 1, ключи “dsa” и “rsa” - для версии 2 протокола SSH.

IgnoreRhosts

Не учитывать содержимое файлов .rhosts и .shosts при аутентификации RhostsRSAAuthentication и HostbasedAuthentication. При этом будут учитываться только /etc/hosts.equiv и /etc/shosts.equiv. Значение по умолчанию - “yes”.

IgnoreUserKnownHosts

Не учитывать содержимое файла ~/.ssh/known_hosts при RhostsRSAAuthentication или HostbasedAuthentication. Значение по умолчанию - “no”.

KerberosAuthentication

Определяет, дозволена ли аутентификация Kerberos: Проверять ли пароль указанный пользователем для аутентификации PasswordAuthentication в Kerberos KDC. Это может быть либо в форме тикетов Kerberos или, если PasswordAuthentication установлена в ``yes'', пароль, предоставленный пользователем, будет утвержден через Kerberos KDC. Для использования этого параметра серверу необходима Kerberos servtab, которая разрешит проверку субъекта KDC. Значение по умолчанию - “no”.

KerberosGetAFSToken

Если AFS активна и у пользователя имеется Kerberos 5 TGT, получать талон AFS перед обращением к домашнему каталогу пользователя. Значение по умолчанию - “no”.

KerberosOrLocalPasswd

В случае непринятия аутентификации посредством Kerberos, проверять пароль другими механизмами, такими как /etc/passwd. Значение по умолчанию - “yes”.

KerberosTicketCleanup

Очищать ли кэш талонов пользователя при завершении сеанса. Значение по умолчанию - “yes”.

KeyRegenerationInterval

В протоколе версии 1 эфемерный ключ сервера будет автоматически регенерироваться по истечении этого количества секунд (если он использовался). Цель регенерации состоит в том, чтобы предохранить шифрованные установленные сеансы от более поздних вторжений на машину и захвата ключей. Ключ нигде не сохраняется. Если установлено значение 0, то ключ не будет регенерироваться. Значение по умолчанию - 3600 (секунд).

ListenAddress

Локальные адреса, по которым sshd(8) должен ожидать соединения. Может быт использован следующие форматы записей:

- ListenAddress хост|адрес-IPv4|адрес-IPv6

- ListenAddress хост|адрес-IPv4:порт

- ListenAddress [хост|адрес-IPv6]:порт

Если порт не указан, sshd будет ожидать соединения на указанном адресе и на всех указанных ранее (но не после) в параметре Port портах. По умолчанию ожидается соединение на всех локальных адресах. Допустимо указание нескольких параметров.

LoginGraceTime

Сервер отключается по истечении этого времени, если пользователю не удалась регистрация в системе. Если стоит значение 0, то время ожидания не ограничено. Значение по умолчанию - 120 секунд.

LogLevel

Задает степень подробности сообщений для протоколов sshd. Допустимыми являются значения: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. Значение по умолчанию - INFO. Значения DEBUG и DEBUG1 эквивалентны. Использование значения DEBUG* нарушает конфиденциальность пользователей и потому не рекомендуется.

MACs

Допустимые алгоритмы MAC (Message Authentication Code - код установления подлинности сообщения). Они используются в протоколе версии 2 для гарантирования целостности данных. Несколько алгоритмов следует указывать через запятую. Значение по умолчанию: “hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96”.

Match

Начинает условный блок. Если все критерии на строке Match удовлетворены, указанные в блоке директивы будут иметь больший приоритет чем указанные в глобальном разделе файла конфигурации. Концом блока считается либо следующая директива Match, либо конец файла. В качестве аргументов Match принимаются пары критерий-шаблон. Допустимые критерии: User, Group, Host и Address. В самом блоке Match допустимо указание следующих параметров: AllowTcpForwarding, Banner, ForceCommand, GatewayPorts, GSSApiAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, PasswordAuthentication, PermitOpen, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding, X11UseLocalHost.

MaxAuthTries

Ограничение на число попыток идентифицировать себя в течение одного соединения. При достижении количества неудачных попыток аутентификации записи о последующих неудачах будут вносится в протокол. Значение по умолчанию - 6.

MaxStartups

Ограничение на число одновременных соединений, в которых не был пройден этап аутентификации. Все последующие соединения не будут приниматься пока на уже существующем соединении не будет произведена аутентификация или не истечет время указанное в параметре LoginGraceTime. Значение по умолчанию - 10. Как альтернатива может быть задействован ранний случайный отказ в подключении путем указания трёх разделённых через двоеточие значений “старт:норма:предел” (например, "10:30:60"). Соединение будет сбрасываться с вероятностью “норма/100” (30%) если имеется “старт” (10) (10) соединений с не пройденным этапом аутентификации. Вероятность возрастает линейно и постоянно попытки будут отвергаться при достижении числа “предел” (60).

PasswordAuthentication

Допускать аутентификацию по паролю. Значение по умолчанию - “yes”.

PermitEmptyPasswords

Допускать использование пустых паролей при аутентификации по паролю. Значение по умолчанию - “no”.

PermitOpen

Ограничить возможные конечные точки для туннелирования TCP. Допустимые формы указания точек:

- PermitOpen хост:порт

- PermitOpen адрес-IPv4:порт

- PermitOpen [адрес-IPv6]:порт

Возможно указание нескольких конечных точек через пробел. Значение “any” снимает ограничение и является значением по умолчанию.

PermitRootLogin

Допускать вход в систему через ssh(1). в качестве суперпользователя. Допустимые значения: “yes”, “without-password”, “forced-commands-only”, “no”. Значение по умолчанию - “yes”. Если этот параметр установлен в значение “without-password”, войти в систему в качестве суперпользователя указав для аутентификации пароль будет невозможно.

Если этот параметр установлен в значение “forced-commands-only”, будет разрешена регистрация суперпользователя в системе по открытому ключу, но только если определён параметр command команда (что может быть полезно для удалённого создания резервных копий, даже если регистрация суперпользователя в системе в обычным режиме не разрешена). Все другие методы аутентификации для суперпользователя будут отключены.

При значении “no”, вход в систему в качестве root будет полностью запрещён.

PermitTunnel

Допускать использование перенаправления для устройств tun(4.) Допустимые значения: “yes”, “point-to-point” (уровень 3), “ethernet” (уровень 2), “no”. Значение “yes” эквивалентно “point-to-point” и “ethernet” одновременно. Значение по умолчанию - “no”.

PermitUserEnvironment

Учитывать ли файл ~/.ssh/environment и параметры environment= в файле ~/.ssh/authorized_keys. Значение по умолчанию - “no”. Посредством изменения переменных среды пользователи могут обойти ограничения своих полномочий. Например, с помощью механизма LD_PRELOAD.

PidFile

Файл в который следует записывать идентификатор процесса службы SSH. Значение по умолчанию - /var/run/sshd.pid.

Port

Порт, на котором следует ожидать запросы на соединение. Значение по умолчанию - 22. Допустимо указание параметра несколько раз. См. также ListenAddress.

PrintLastLog

Выводить ли время и дату предыдущего входа в систему при интерактивной регистрации пользователя в ней. Значение по умолчанию - “yes”.

PrintMotd

Выводить ли содержимое файла /etc/motd при интерактивной регистрации пользователя в системе (в некоторых системах это выполняется оболочкой, сценарием /etc/profile или аналогичным). Значение по умолчанию - “yes”.

Protocol

Версии протокола которые следует принимать.. Допустимые значения - ‘1’ и ‘2’. Несколько значений указываются через запятую. Значение по умолчанию - “2,1”. Порядок указания протоколов не имеет значения, т.к. протокол выбирается клиентом из списка доступных.

PubkeyAuthentication

Допускать аутентификацию по открытому ключу. Значение по умолчанию - “yes”. Данный параметр относится только к протоколу версии 2.

RhostsRSAAuthentication

Допускать аутентификацию по rhosts или /etc/hosts.equiv совместно с аутентификацией по хосту RSA. Значение по умолчанию - “no”. Данный параметр относится только к протоколу версии 1.

RSAAuthentication

Допускать аутентификацию только по ключу RSA. Значение по умолчанию - “yes”. Данный параметр относится только к протоколу версии 1.

ServerKeyBits

Длина ключа сервера для эфемерного протокола версии 1. Минимальное значение - 512, значение по умолчанию - 768.

StrictModes

Проверять наборы прав доступа и принадлежность конфигурационных файлов и домашнего каталога пользователя перед разрешением регистрации в системе. Это рекомендуется выполнять потому, что новички иногда оставляют свои каталоги или файлы доступными для записи всем. Значение по умолчанию - “yes”.

Subsystem

Позволяет настроить внешнюю подсистему (напр., службу FTP). В качестве параметров должны выступать имя подсистемы и команда, которая будет выполняться при запросе подсистемы. Команда sftp-server(8) реализует подсистему передачи файлов “sftp.” По умолчанию подсистемы не определены. Данный параметр относится только к протоколу версии 2.

SyslogFacility

Код источника сообщений для протокола syslog. Допустимые значения: DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. Значение по умолчанию - AUTH.

TCPKeepAlive

Указывает, будет ли система посылать другой стороне контрольные сообщения для удержания соединения активным. Если они посылаются, то разрыв соединения или аварийный отказ одной из машин будут должным образом замечены. Однако, при этом временная потеря маршрута также повлечёт за собой разрыв соединения и некоторые люди сочтут это раздражающим. С другой стороны, если контрольные сообщения не посылаются, сеанс на сервере может зависнуть, оставив после себя “пользователей-привидений” и отнимая ресурсы сервера. Значение по умолчанию - “yes” (отправлять сообщения TCP keepalive). Это позволяет избежать бесконечно долгих сеансов.

Для отключения отправки сообщений TCP keepalive установите значение “no”.

UseDNS

Выполнять ли запросы DNS для получения имени удалённого хоста для того чтобы убеждаться в том, что обратное преобразование выдаёт тот же самый IP-адрес. Значение по умолчанию - “yes”.

UseLogin

Использовать login(1) для интерактивных сеансов регистрации в системе. Значение по умолчанию - “no”. Имейте ввиду, что login(1) никогда не используется для удалённого выполнения команд. Если этот параметр включен, функция X11Forwarding будет отключена потому что login(1) не может обрабатывать cookie xauth(1) В случае использования разделения полномочий (UsePrivilegeSeparation) данный параметр будет отключен после прохождения аутентификации.

UsePAM

Включить интерфейс модулей аутентификации Pluggable Authentication Module. При значении “yes” аутентификация PAM будет доступна через ChallengeResponseAuthentication и PasswordAuthentication в дополнение к учётной записи PAM и обработке модулей сеансов для всех типов аутентификации. Поскольку безпарольная аутентификация PAM "вызов-ответ" служит заменой аутентификации по паролю, необходимо отключить либо PasswordAuthentication, либо ChallengeResponseAuthentication.

При включенном UsePAM службу sshd(8) можно будет выполнять только с правами root. Значение по умолчанию - “no”.

UsePrivilegeSeparation

Разделять полномочия посредством создания дочернего процесса с меньшими правами для обработки входящего сетевого трафика. После прохождения аутентификации для работы с клиентом будет создаваться специальный процесс соответствующий его правам. Целью данного параметра служит предотвращение повышения полномочий злоумышленником. Значение по умолчанию - “yes”.

X11DisplayOffset

Номер первого дисплея доступного для туннелирования трафика X11 sshd(8). Позволяет избежать вмешательства sshd в работу настоящих серверов X11. Значение по умолчанию - 10.

X11Forwarding

Допускать туннелирование X11. Допустимые значения - “yes” и “no”. Значение по умолчанию - “no”. Если дисплей-посредник ожидает соединений от любых адресов (или по шаблону) sshd(8) включение туннелирования X11 подвергает сервер и логические дисплеи клиентов дополнительной опасности. Поэтому такое поведение не является поведением по умолчанию. Проверка и подмена аутентификационных данных при атаке выполняются на стороне клиента. При туннелировании X11 графический сервер клиента может подвергаться атаке при запросе клиентом SSH туннелирования (см. замечания в описании параметра ForwardX11 в ssh_config(5)). Для большей защиты пользователей администратор может запретить туннелирование установив значение “no.”

Обратите внимание, что даже если туннелирование X11 запрещено данным параметром, пользователи по-прежнему смогут туннелировать трафик X11 посредством настройки туннелей общего назначения. Туннелирование X11 отключается автоматически при включении UseLogin.

X11UseLocalhost

К какому адресу следует привязывать сервер туннелирования X11:

к кольцевому (loopback) или адресу указанному по шаблону. По умолчанию сервер туннелирования привязывается к кольцевому адресу, а в качестве хоста в переменную среды DISPLAY заносится “localhost”. Это не позволяет удалённым хостам подключаться к дисплею-посреднику. Однако, в случае старый клиентов X11, такая конфигурация может не сработать. Установите тогда X11UseLocalhost в “no.” Допустимые значения - “yes” и “no”. Значение по умолчанию - “yes”.

XAuthLocation

Путь к команде xauth(1) Значение по умолчанию - /usr/X11R6/bin/xauth.

## УКАЗАНИЕ ВРЕМЕНИ
Ключи командной строки sshd(8) и параметры файлы конфигурации могут требовать указания времени. Оно должно указываться в виде последовательности таких выражений: время[единицы], где время - положительное целое, единицы могут принимать следующие значения:

⟨ничего⟩

секунды

s | S

секунды

m | M

минуты

h | H

часы

d | D

дни

w | W

недели

Итоговое время получается в результате сложения всех выражений.

Примеры:

600

600 секунд (10 минут)

10m

10 минут

1h30m

1 час 30 минут (90 минут)

## ФАЙЛЫ
/etc/ssh/sshd_config

Файл конфигурации sshd(8). Этот файл должен быть доступен для записи только пользователю root, и рекомендуется делать его доступным для чтения всем.

## СМ. ТАКЖЕ
sshd(8)

## АВТОРЫ
Продукт OpenSSH является производным от оригинальной и свободной версии ssh 1.2.12 выпущенной Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt и Dug Song удалили много ошибок, самостоятельно реализовали функции доступные в несвободных версиях оригинальной программы и создали OpenSSH. Markus Friedl реализовал поддержку протоколов SSH версии 1.5 и 2.0. Niels Provos и Markus Friedl реализовали разделение полномочий.

Николай Шафоростов <shafff@ukr.net> 2007, с использованием перевода Александра Блохина <sass@altlinux.ru>