При вызове сервера SSH могут быть заданы различные опции, изменяющие поведение программы. Опции, предусмотренные в пакете OpenSSH 3.0.2, перечислены ниже.
• -d. В обычных условиях сервер выполняется в режиме демона. Данная опция задает режим отладки, при котором сервер выполняется в качестве задачи переднего плана, поддерживает лишь одно соединение и выводит дополнительную отладочную информацию. Указывая дополнительные опции -d( sshdподдерживает до трех символов d), вы можете задать вывод дополнительных сведений о работе программы.
• -D. Эта опция отменяет режим демона, но, в отличие от опции -d, она не переводит сервер в режим отладки.
• -е. Данная опция указывает на то, что сообщения об ошибках, генерируемые sshd, не должны записываться в файл протокола, а должны выводиться в стандартный поток ошибок.
• -f конфигурационный_файл . В качестве конфигурационного файла сервер обычно использует /etc/ssh/sshd_config, но с помощью данной опции вы можете указать другой файл.
• -i. Данная опция сообщает программе о том, что программа была запущена посредством суперсервера ( inetdили xinetd). Если для запуска sshdиспользуется суперсервер, надо обязательно указывать данную опцию.
• -p порт . Эта опция задает порт для сервера. По умолчанию используется порт 22.
• -q. Данная опция подавляет протоколирование. (Обычно в файл протокола записывается информация об установлении соединения, выполнении аутентификации и разрыве соединения.)
• -4. По умолчанию sshdподдерживает соединения с компьютерами, адреса которых соответствуют либо протоколу IPv4, либо протоколу IPv6. Данная опция указывает на то, что sshdдолжен устанавливать соединения только с клиентами, имеющими адреса IPv4.
• -6. Данная опция разрешает установление соединений только с клиентами, имеющими адреса IPv6.
При запуске sshdмогут задаваться и другие опции, большинство из которых определяют особенности кодирования данных. Дополнительную информацию об этих опциях можно получить на страницах справочной системы, посвященных sshd.
Перед первым запуском sshdнеобходимо сгенерировать файлы, содержащие ключи кодирования. При выполнении алгоритма SSH эти ключи используются для идентификации участников взаимодействия и кодирования данных. В большинстве случаев в сценариях SysV, осуществляющих запуск сервера, предусмотрен код, который поверяет наличие файлов с ключами кодирования и при необходимости генерирует их. Если в вашей системе подобный код отсутствует, вы можете использовать для генерации файлов следующие команды:
# ssh-keygen -q -t rsa1 -f /etc/ssh/ssh_host_key -C '' -N ''
# ssh-keygen -q -t rsa -f /etc/ssh/ssh_host_rsa_key -C '' -N ''
# ssh-keygeh -q -t dsa -f /etc/ssh/ssh_host_dsa_key -C '' -N ''
Каждая из приведенных выше команд генерирует два ключа: закрытый , или личный , ключ (private key), используемый только на сервере, и открытый , или общий , ключ (public key). Открытый ключ передается клиенту, чтобы он мог кодировать данные, передавая их на сервер. Закрытый и открытый ключи помещаются в файлы, имена которых отличаются друг от друга лишь тем, что к имени файла с открытым ключом добавляется суффикс .pub. Перед вызовом этих команд необходимо проверить наличие шести файлов: ( ssh_host_key, ssh_host_key.pub, ssh_host_rsa_key, ssh_host_rsa_key.pub, ssh_host_dsa_keyи ssh_host_dsa_key.pub(обычно эти файлы размещаются в каталоге /etc/ssh). Если вы измените существующие ключи, вам придется переконфигурировать клиентские программы, настроенные на работу со старыми ключами. Поэтому ключи следует изменять только в том случае, когда это действительно необходимо.
Редактирование файла sshd_config
Работой сервера sshdуправляет файл sshd_config, который обычно находится в каталоге /etc/ssh. (He следует путать файл sshd_configс конфигурационным файлом клиента ssh_config, который размещается в том же каталоге.) В файле sshd_configуказываются опции и их значения. Каждая опция задается в отдельной строке в следующем формате:
Опция значение
Подобно другим конфигурационным файлам, строка, начинающаяся с символа #, содержит комментарии. Многие опции в файле sshd_configдублируют опции командной строки, которые указываются при вызове sshd, но некоторые из опций могут присутствовать только в конфигурационном файле. Конфигурация, установленная по умолчанию, чаще всего обеспечивает нормальную работу сервера, но иногда приходится изменять значения некоторых опций, например PermitRootLogin. Наиболее важные из опций, содержащихся в файле sshd_config, приведены ниже.
Читать дальше