Смит Родерик В.
Шрифт:
•
– 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
, приведены ниже. •
Port
. Данная опция позволяет задать порт для сервера. По умолчанию используется порт 22. •
HostKey
. Эта опция сообщает серверу о том, где следует искать ключи кодирования. Ключи кодирования содержатся в файлах, которые должны быть сгенерированы перед первым запуском программы. Примером такого файла является /etc/ssh/ssh_host_key
. При настройке сервера можно указать несколько файлов с ключами. •
KeyRegenerationInterval
. При установлении соединения участники SSH-взаимодействия ведут переговоры об использовании ключей кодирования, а затем время от времени договариваются о замене ключей. Периодическая замена ключей уменьшает опасность повреждения системы в случае, если по каким-либо причинам ключ будет расшифрован. (Обратите внимание на то, что здесь речь идет о ключах, сгенерированных в дополнение к ключам, которые создаются перед первым запуском программы. Ключи, сформированные в процессе переговоров, никогда не записываются на диск.) Данная опция задает время (в секундах) использования сгенерированных ключей. По истечении этого времени формируются новые ключи. •
PermitRootLogin
. В большинстве случаев при инсталляции пакета устанавливается значение yes данной опции. По умолчанию sshd
позволяет пользователю root
регистрироваться на сервере. Безопаснее, однако, задать для этой опции значение no
, так как в этом случае злоумышленник, пытающийся незаконно проникнуть в систему, должен знать два пароля (пароль обычного пользователя и пароль root
). Значение по опции PermitRootLogin
не исключает возможность удаленного администрирования системы, но для этого вам придется сначала зарегистрироваться как обычный пользователь, а затем получить привилегии root
с помощью команды su
.