Сетевые средства Linux
Шрифт:
•
– i
. Данная опция сообщает программе о том, что программа была запущена посредством суперсервера (inetd
или xinetd
). Если для запуска sshd
используется суперсервер, надо обязательно указывать данную опцию. •
– p порт
. Эта опция задает порт для сервера. По умолчанию используется порт 22. •
– q
. Данная опция подавляет протоколирование. (Обычно в файл протокола записывается информация об установлении соединения, выполнении аутентификации и разрыве соединения.) •
– 4
. По умолчанию sshd
поддерживает соединения с компьютерами, адреса которых
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
. •
IgnoreRhosts
. По умолчанию устанавливается значение yes
данной опции, в результате чего сервер sshd игнорирует файл ~/.rhosts
. Если опция IgnoreRhosts
имеет значение по и если значение опции RhostsAuthentication
равно yes
, sshd
, подобно rlogind
, будет поддерживать аутентификацию по принципу доверия. Установка значения по опции IgnoreRhosts
создает реальную опасность для системы. •
RhostsAuthentication
. Для поддержки аутентификации по принципу доверия сервер SSH использует две опции: IgnoreRhosts
и RhostsAuthentication
. Опция RhostsAuthentication
разрешает работу с узлами, пользующимися доверием. Желательно установить для данной опции значение no
. •
RSAAuthentication
. В версии 1 протокола SSH был предусмотрен метод аутентификации с применением открытого ключа, при котором пароль не передавался по сети. Вместо этого использовались открытый ключ и фраза пароля. Для того чтобы разрешить данный способ аутентификации, надо установить значение yes
опции RSAAuthentication
(это значение принимается по умолчанию). •
PubkeyAuthentication
. Данная опция выполняет те же действия, что и опция RSAAuthentication
, но применяется при работе с версией 2 протокола SSH. •
PasswordAuthentication
. Значение yes
данной опции позволяет пользователям регистрироваться, вводя пароль в ответ на приглашение. Этот способ аутентификации широко используется в настоящее время, поэтому желательно принять значение опции PasswordAuthentication
, установленное по умолчанию.
Поделиться с друзьями: