Читаем Сетевые средства Linux полностью

Каждая из приведенных выше команд генерирует два ключа: закрытый, или личный, ключ (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). Если вы измените существующие ключи, вам придется переконфигурировать клиентские программы, настроенные на работу со старыми ключами. Поэтому ключи следует изменять только в том случае, когда это действительно необходимо.

<p>Редактирование файла <code>sshd_config</code></p>

Работой сервера 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.

• IgnoreRhosts. По умолчанию устанавливается значение yes данной опции, в результате чего сервер sshd игнорирует файл ~/.rhosts. Если опция IgnoreRhosts имеет значение по и если значение опции RhostsAuthentication равно yes, sshd, подобно rlogind, будет поддерживать аутентификацию по принципу доверия. Установка значения по опции IgnoreRhosts создает реальную опасность для системы.

• RhostsAuthentication. Для поддержки аутентификации по принципу доверия сервер SSH использует две опции: IgnoreRhosts и RhostsAuthentication. Опция RhostsAuthentication разрешает работу с узлами, пользующимися доверием. Желательно установить для данной опции значение no.

• RSAAuthentication. В версии 1 протокола SSH был предусмотрен метод аутентификации с применением открытого ключа, при котором пароль не передавался по сети. Вместо этого использовались открытый ключ и фраза пароля. Для того чтобы разрешить данный способ аутентификации, надо установить значение yes опции RSAAuthentication (это значение принимается по умолчанию).

Перейти на страницу:

Похожие книги