[docs] просмотрите пож. про ssh

Artem Zolochevskiy artem.zolochevskiy на gmail.com
Чт Май 3 10:43:04 MSD 2007


> > - отчего-то в 5 главе (про службы) нет про sshd - думаю это надо
> > добавить. Дистрибутив то серверный.
>
> Потому что нет готового текста про sshd.  Что должно быть написано в таком
> разделе?

Господа, взгляните на мою попытку дополнить документацию раздело про sshd

Удалённый доступ и удалённое администрирование (OpenSSH SSH daemon)
-------------------------------------------------------------------

Одна из самых распространённых задач, возникающих при работе в сети, — 
удалённый доступ к другим компьютерам, в том числе удалённое 
администрирование компьютеров. Технологния SSH (Secure Shell) призвана 
предоставить возможность безопасного способа управления удалённой системой. 
Посторенная по клиент-серверной модели она позволяет при помощи ssh клиента 
подключаться к ssh серверу, предоставляя командную оболочку для работы с 
удалённой системой.

SSH реализует соединение с удалённым компьютером, защищающее от: 
* прослушивания данных, передаваемых по этому соединению;
* манипулирования данными на пути от клиента к серверу;
* подмены клиента либо сервера путём манипулирования IP-адресами, DNS либо 
маршрутизацией. 
В дополнение к отличным характеристикам в области обеспечения безопасного 
клиент-серверного соединения, SSH обладает следующими возможностями: 
* сжатие передаваемых данных;
* туннелирование каналов внутри установленного соединения — в т. ч. соединений 
с X-сервером, что позволяет запускать графические приложения на удалённой 
машине; 
* широкая распространённость: существуют реализации SSH для самых различных 
аппаратных платформ и операционных систем. 

OpenSSH — это входящая в дистрибутив ALT Linux 4.0 Server реализация SSH, 
представлена следующими пакетами:
* openssh-clients - клиентская часть (утилита ssh, sftp и др.)
* openssh-server - серверная часть (сервер sshd, sftp-server)
* openssh - утилиты необходимудя для работы как клиентской так и серверной 
части.

Пакет openssh-server в ALT Linux 4.0 Server устанавливается по умолчанию, 
позволяя непосредственно после установки системы воспользоваться возможностью 
удалённого администрирования.

В простейшем виде сеанс работы будет выглядеть следующим образом:
Запускается ssh клиент (ssh) с указанием имени пользователя на удалённой 
системе (если оно отличается от локального) и имени машины (либо IP-адреса). 
На удалённой машине, естественно, должна быть настроена и работать серверная 
часть - sshd

$ ssh user на hostname

после чего, sshd предоставляет для работы командную оболочку для работы на 
удалённой системе.
Ваш компьютер становится удаленным терминалом другого компьютера.

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

sshd поддерживает различные способы аутентификации. Наиболее часто 
используются два из них
* по паролю
* по ключу

Параметры относящиеся к способу аутентификации, а так же все прочие настройки 
sshd указываются в его конфигурационном файле - /etc/openssh/sshd_config.
Для вcтупления в силу изменений, вносимых с конфигурационный файл, необходимо 
выполнять
# service sshd reload
каждый раз после правки файла.

Аутентификация по паролю
------------------------
Аутентификации по паролю включается строкой
PasswordAuthentication yes
в /etc/openssh/sshd_config

Хотя пароль в этом случае и не передается по сети в открытом виде, всё же 
существует опасность подбора пароля. Поэтому не следует выбирать слишком 
простые пароли.

Аутентификация по ключу
------------------------
Включается строкой
PasswordAuthentication yes
в /etc/openssh/sshd_config

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

Для генерации пары ключей на компьютере пользователя необходимо выпольнить
$ ssh-keygen -b 2048 -t dsa
На вопрос о файле для сохранения ключа нажать Enter (по умолчанию). Далее 
будет задан вопрос о пароле к ключу. Пароль нужно указать.

После генераии ключей, образуются 2 файла:
~/.ssh/id_dsa - секретный ключ
~/.ssh/id_dsa.pub - публичный. Его предстоит поместить на удалённый сервер.

Следующим шагом содержимое файла id_dsa.pub неоходимо добавить в файл 
~/.ssh/authorized_keys2 на удалённой машине. Если пользователь будет один 
входить под этой учётной записью, файл id_dsa.pub можно просто скопировать, 
назвав authorized_keys2. Так же можно воспользоваться утилиой ssh-copy-id
$ ssh-copy-id username на hostname
Обратите внимание, что для выполнения этого действия должна работать 
аутентификация по паролю. В дальнейшем её можно будет отключить.

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

Безопасность
------------
При настройке sshd следует весьма щепетильно отнестись к вопросам 
безопасности.
SSH - очень важная часть системы. Она является незаменимым помошником любого 
администатора Linux, предоставляя ему доступ к командной оболочке удалённой 
системы. Но как раз по этой же причине данная служба может стать и источником 
бед.

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

В качестве дополнительных мер, можно явно указать список пользователей, 
которым разрешена, либо запрещена удалённая работа. За это отвечают параметры
* AllowUsers
* DenyUsers
в /etc/openssh/sshd_config

Наконец, можно осложнить жизнь потенциальному злоумышленнику отключив 
возможность удалённой регистрации в системе для root.
* PermitRootLogin no
в /etc/openssh/sshd_config

Как и в случае с любыми потенциально опасными сервисами, следует постоянно 
следить за обновленями безопасности связанными с данными пакетами. 
Администратор системы, заботящийся о безопасности, должнен непременно 
устанавливать обновления штатным способом:
# apt-get update
# apt-get upgrade

За более детальной информацией по настройке sshd следует обращаться к 
руководству sshd_config(5)
Настройка клиентской части подробно описана в ssh_config(5)

--
информация бралась
- из доки по Master2.4
- http://www.freesource.info/wiki/ALTLinux/Dokumentacija/NastrojjkaSSH&
- из головы :-)


Подробная информация о списке рассылки docs