Полная версия

OSS Group


Авторизация

  

Навигация

Текущее местоположение:  OSS Group :: Wiki :: Admin :: SSH - работа с PuTTY
Главное меню:   Главная   Документация   Разработка   Контакты   Поиск   Карта сайта   Wiki   Блоги
Разделы Wiki:   Admin  APT  Sandbox

SSH - работа с PuTTY

Вольный перевод статьи http://www.howtoforge.com/ssh_key_based_logins_putty

Данное руководство описывает, как сгенерировать и использовать пару ключей (открытый/закрытый) для SSH-подключения к удалённой системе с помощью Putty. Putty - это SSH клиент, доступны версии для Windows и Linux (хотя более распространена версия для Windows систем). Применяя основанную на ключах SSH процедуру соединения, Вы можете отключить обычную процедуру (использующую имя/пароль), это будет означать, что только люди, обладающие правильной парой ключей, смогут осуществить соединение. Таким образом, система становится более надёжной, благодаря невозможности проведения успешной атаки с помощью прямого перебора паролей.

Автор не гарантирует, что это будет работать!

1. Предварительное замечание.

В этом описании используется компьютер с установленной Windows для подключения к SSH серверу Linux.

2. Установка PuTTY, PuTTYgen и Pageant в системе Windows.

Прежде всего мы должны установить PuTTY, PuTTYgen и Pageant в нашей системе Windows. Всё, что мы должны сделать, это скачать установочный файл (.exe) со страницы загрузки PuTTY и запустить его. В качестве папки, куда будет установлена программа, можно указать, например, "C:\putty". Чтобы запустить инсталлированные приложения, их достаточно дважды кликнуть.

3. Создание профиля с настройками для нашего удалённого сервера.

В PuTTY Вы можете создавать профили для различных SSH серверов, так что Вам не придётся вбивать настройки для конкретного сервера, когда Вы захотите к нему очередной раз подсоединиться.
Давайте создадим профиль для нашего сервера. Запустите PuTTY двойным щелчком на исполняемом файле. Сейчас Вы находитесь в категории Sessions (см. дерево слева на скриншоте). Введите 81.195.XXX.XXX в строку Host Name (or IP adress) (имя хоста или IP адрес) (здесь и далее часть IP скрыта по этическим причинам), введите Port (номер порта) 22 и выберите Protocol (протокол) SSH:

Затем идите в категорию Connection -> Data и укажите в Auto-login username имя пользователя, под которым Вы хотите подключаться к SSH серверу. В этой статье используется имя vasily:

Затем снова идите в категорию Sessions. Под надписью Saved Sessions (сохранённые сессии) введите имя профиля, например, session1 или любую другую запись, которая поможет Вам вспомнить, к какому серверу относится этот профиль. Кликните на Save:

В следующий раз, когда Вы запустите PuTTY, просто выберите подходящий профиль из Saved Sessions, кликните Load и Open.

4. Соединение с сервером SSH.

Теперь мы можем подсоединиться к нашему SSH серверу, просто кликнув Open.

Если Вы соединяетесь с сервером в первый раз, всплывёт предупреждение об угрозе безопасности. Это происходит потому, что PuTTY ещё не известен ключ хоста сервера, можно смело кликать Yes. (Если это происходит позже снова, это может означать, что другой сервер запущен с тем же IP адресом, или что кто-то взломал сервер и изменил ключ).

Мы сохранили имя, под которым соединяемся, в настройках профиля, поэтому нам не нужно вбивать его снова, мы только укажем пароль пользователя:

Итак, это был "обычный" способ соединения, то есть, с парольной идентификацией. Если кто-нибудь узнает имя и пароль, он тоже сможет соединиться. Поэтому если у Вас простой пароль и/или Вы стали жертвой атаки с прямым перебором, могут быть проблемы. Давайте сейчас исправим это.

5. Изготовление пары закрытого и открытого ключей.

Мы можем использовать PuTTYgen для изготовления пары закрытого и открытого ключей. Запустите генератор двойным кликом на исполняемом файле. Убедитесь, что Вы выбрали SSH-2 DSA под Type of key to generate: (Тип генерируемого ключа) и ввели 2048 в Number of bits in a generated key (Число бит в генерируемом ключе). (Автор статьи-оригинала рекомендует использовать SSH-2 RSA и 1024). Затем кликните на Generate:

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

Теперь пара закрытого и открытого ключей сгенерирована. Под Key comment: Вы можете ввести комментарий (обычно здесь пишут свой e-mail адрес). Затем вписывают Key passphrase (парольная фраза) и повторяют её под Confirm passphrase:. Вам понадобится эта парольная фраза для подсоединения к SSH с Вашим новым ключём. Затем кликните Save public key (Сохранить открытый ключ) и сохраните его в безопасном месте на Вашем компьютере. Вы вольны выбрать любое имя и расширение, но оно должно быть таким, чтобы вы помнили, к какой системе этот ключ.


Затем кликните на Save private key (Сохранить закрытый ключ). Вы можете сохранить его там же, где и открытый ключ, только Вы должны иметь к нему доступ, позаботьтесь о его сохранности! (Если вы утеряете ключи и отмените подключение по способу имя/пароль, Вы будете более неспособны подключиться!). Вы так же свободны в выборе имени файла, но на этот раз расширение будет .ppk.


Затем скопируйте открытый ключ из окна PuTTYgen:

6. Сохранение открытого ключа на сервере.

Соединитесь с Вашим SSH сервером (если вы уже закрыли предыдущую сессию SSH), пока ещё с помощью имени и пароля, и вставьте открытый ключ в файл ~/.ssh/authorized_keys2 (в одну линию!) примерно вот так:

 mkdir ~/.ssh
 chmod 700 ~/.ssh
 vi ~/.ssh/authorized_keys2
ssh-dss AAAAB3NzaC1kc3MAAAE [. . .] Huw2FekFNM7pMgEQi57k= dsa-key-20061205

Данный файл должен читаться/правиться только данным пользователем, поэтому мы запускаем:

chmod 600 ~/.ssh/authorized_keys2

7. Прикрепление закрытого ключа к профилю PuTTY.

Теперь снова запустите PuTTY и загрузите профиль Вашего SSH сервера (session1).

Затем идите в категорию SSH, далее Auth и кликайте Browse:

Найдите в вашей системе и выберите созданный ранее закрытый ключ:


Затем снова идите в категорию Session и кликайте на Save:

Теперь наш закрытый ключ присоединён к профилю PuTTY session1.

8. Наше первое подключение, основанное на ключе.

Теперь всё готово для первого подключения к SSH серверу с помощью ключа. Кликните на Open:

Как Вы видите, открытый ключ теперь используется для идентификации, и у Вас запрашивается парольная фраза (та, которая была создана в пункте 5):

9. Отключение парольной идентификации

Теперь можно подсоединиться к серверу, используя пару ключей (открытый/закрытый), и всё ещё есть возможность соединения с помощью имени и пароля, поэтому, если не прикрепить закрытый ключ к своей сессии PuTTY, будет предложено ввести имя и пароль. Поэтому, для достижения большей защищённости, мы должны отключить возможность соединения имя/пароль. (Вы должны сделать это только когда полностью уверены, что подключение с помощью ключа работает, в противном случае у Вас будут проблемы...)

Для отключения возможности соединения через имя/пароль, мы должны внести изменения в конфигурационный файл sshd. В системах Debian/Ubuntu это /etc/ssh/sshd_config. Вы должны выбрать Protokol 2 (1 ненадёжен и не должен использоваться!), PasswordAuthentication установить в no, и для UsePAM также выбрать no (или закомментировать строку UsePAM), например, так:

vi /etc/ssh/sshd_config
 [...]
 Protocol 2
 PasswordAuthentication no
 UsePAM no
 [...]

Затем перезапустите sshd. В Debian/Ubuntu это можно сделать так:

/etc/init.d/ssh restart

Теперь, если Вы откроете сессию PuTTY без присоединённого закрытого ключа, Вы больше не способны будете соединиться.

10. Запоминание парольной фразы с помощью Pageant.

Теперь, всякий раз, когда Вы используете подключение с помощью ключа, Вам требуется вписывать Вашу парольную фразу. Это может раздражать, если Вы соединяетесь с SSH сервером много раз за день. К счастью, Вы можете сообщить парольную фразу программе Pageant, который будет подставлять её всякий раз, когда Вы соединяетесь с SSH сервером.
Запустите Pageant двойным кликом на исполняемом файле:

После этого Вы увидите запущенный Pageant в таскбаре:

Двойной клик по иконке Pageant в таскбаре открывает окно, приведённое ниже. Кликните клавишу Add Key (Добавить ключ):

Найдите в вашей файловой системе закрытый ключ и выберите его:

Введите парольную фразу для закрытого ключа:

Теперь ключ внесён в список ключей Pageant. Кликнете на Close (Закрыть):

Пока Pageant запущен, Вы можете соединяться с SSH сервером без ввода парольной фразы, это делает Pageant:

Когда Вы остановите Pageant, он забудет все ключи, поэтому, в следующий раз, при запуске Pageant Вам придётся снова добавить ключи. Это так же может раздражать, но можно создать на Рабочем столе ярлык к исполняемому файлу Pageant. Кликнете правой кнопкой мыши на файле Pageant и выберите Create shortcut (Создать ярлык):

Теперь найдите созданный ярлык. Кликните правой кнопкой на нём и выберите Properties (Свойства):

Под надписью Target (Объект) Вы найдёте путь к pageant.exe, например "C:\putty\pageant.exe" (если в пути нет пробелов, в кавычках нет необходимости). Теперь Вы можете просто добавить путь к Вашему закрытому ключу в эту строку. Например, если Ваш ключ C:\putty\my_keys\private_session1.ppk, то строка должна выглядеть так:
C:\putty\pageant.exe C:\putty\my_keys\private_session1.ppk
(если в пути к закрытому ключу есть пробелы, Вы должны заключит его в кавычки, например, так:
"C:\putty files\pageant.exe" "C:\putty files\my_keys\private_session1.ppk"
)

Затем кликайте на OK.

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

11. Ссылки.


Дата создания: 2006-12-16 02:07:23 (Пузанов В. А. (vasily))
Последнее изменение: 2013-11-28 03:03:21 (Константин Сёмин (cowsay))
Владелец: Пузанов В. А. (vasily)
Версия: 4  Все версии


  Не показывать комментарии


Wiki::Admin   Карта раздела  Оглавление  Изменения за сутки  Изменения за неделю  Изменения за месяц



Быстрый поиск по Wiki:
И ИЛИ

На эту страницу ссылаются:

©2006-2024 OSS Group. All rights reserved. | Техническая поддержка: Открытые Информационные Технологии и Системы