passphrase ssh что это

Вы еще не авторизуетесь по ключам? Тогда мы идем к вам

Этой заметкой я хочу показать, что использовать ключи для авторизации это просто.

Начнем с того, что нам понадобится PuTTY.
Идем на http://www.chiark.greenend.org.uk/

sgtatham/putty/download.html и качаем следующее:
PuTTY — ssh-клиент
Pageant — агент для хранения ключей (зачем объясню позже)
PuTTYgen — генератор ключей

Сначала сгенерируем ключи, потом настроим PuTTY, и в конце покажу как всем этим пользоваться.

Создадим папочку для PuTTY и все скинем туда.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Запускаем PuTTYgen выбираем «Type of key to generate» SSH-2 RSA и 2048-битный ключ.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Жмем Generate. Следуя указациям, хаотично перемещаем мышку.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

После генерации нам предстанет следующее.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

В верхнем поле публичный ключ, который будет храниться у принимающей стороны.
Ах да, я забыл рассказать как происходит непосредственная авторизация с помощью ключей.

Для наглядности возьмем server и client.
client сообщает server’у свой публичный ключ любым доступным способом. Беспокоиться, что кто-то узнает этот ключ не стоит.
Авторизация происходит следующем образом:
дальше следует объяснение человека, который не читал соответствующей литературы, поэтому описывает так, как он себе это представляет
client обращается к server’у и они обмениваются публичными ключами.
на основании этого server авторизует client’а, дает соответствующие права.

Это было небольшое отступление, вернемся к PuTTYgen.

В верхнем поле публичный ключ, который будет храниться у принимающей стороны.
Key fingerprint — отпечаток ключа.
Key comment — комментарий к ключу, я обычно указываю машину, на которой это ключ используется.
Key passphrase — парольная фраза к приватному ключу. Ее следует сделать сложной. Конечно можно оставить пустой, и тогда при авторизации не будет требоваться пароль, но дальше я покажу, что даже с сложным паролем к ключу можно авторизовываться без повторного ввода пароля, будто пароля и нет.
Confirm passphrase — подтверждение парольной фразы.

Дальше нужно сохранить сгенерированные ключи. Остановлюсь только на приватном ключе. При сохранении (Save private key) предложится сохранить ключ с расширением .ppk. Он будет использоваться Pageant в дальнейшем.

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

Теперь запустим PuTTY и сделаем предварительные настройки.
Выберем Default Settings и нажмем Load.
Перейдем слева на Session->Logging, отметим галочкой Printable output. В поле Log file name впишем logs\&H_&Y-&M-&D-&T.log, уберем галочку Flush log file frequently.
Таким образом, мы указали, что хранить логи будем в папочке logs, рядом с PuTTY.exe с именами на подобии 192.168.1.6_2011-08-29-101304.log
Перейдем на вкладку Window->Translation. И выберим в списке Remote character set UTF-8, чтобы не было проблем с кодировкой.
В Connection->SSH->Auth проверим, что стоит галочка напротив Attempt authentication using Pageant и укажем путь к приватному ключу в графе Private key file for authentication.
После этого вернемся на вкладку Session нажмем сохранить, чтобы указанные настройки были по-умолчанию.

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

После запуска, появится иконка в области уведомлений. Жмем правой кнопкой, Add key.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Выбираем ключ, указываем парольную фразу. Теперь ключ хранится в памяти.
Чтобы посмотреть ключи, можно выбрать пункт View keys.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Попробуем авторизоваться.
Открываем PuTTY. Указываем IP. Жмем Open.
В первый раз выскочит предупреждение, что раньше мы не использовали ключ для авторизации на этом сервере. Когда такое возникает впервый раз, это нормально, но если такое возникает на сервере, на котором мы уже авторизовывались, то либо сервер сменил свои ключи, либо это фейковый сервер.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Вводим логин. Жмем Enter. И мы автоматически авторизовались.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Покажу еще, на примере Komodo Edit.
Выбираем File->Open->Remote open
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Выбираем Accounts. Потом New Server.
В Server Type указываем SCP. В Name произвольное название для сервера. В Hostname ip сервера (или доменное имя). В User Name логин пользователя.
Жмем Add, затем OK.
В верхнем выпадающем меню выбираем наш сервер. Если сервер разрешает авторизацию по ключам, то мы увидим список директорий на сервере, выбираем нужный файл и редактируем (при наличии прав на запись у пользователя).
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

PS: Следующая ошибка появляется в том случае, если сервер поддерживает только авторизацию по ключам, а у вас не включен Pageant.
passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Источник

Как настроить SSH-ключи и кодовую фразу для сервера

Введение

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

Сначала вам необходимо создать пару ключей:

Как только вы введете команду генерации ключей, вам нужно будет определиться со следующим параметром:

Можете просто нажать Enter, и тогда файл будет сохранен в выбранную выше директорию по умолчанию.

Использование кодовой фразы является необязательным и остается на ваше усмотрение. Однако установка кодовой фразы имеет свое преимущество: если ваш закрытый ключ попадет в руки к злоумышленникам, они не смогут войти в аккаунт до тех пор, пока не подберут кодовое слово, а значит, у вас будет дополнительное время для принятия необходимых мер. Единственный недостаток использования кодового слова – это, естественно, необходимость вводить его каждый раз, когда вы авторизуетесь через SSH.
Полностью процесс создания ключей имеет такое кодовое выражение:

Шаг 3 – копирование открытого ключа

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

Вы можете сделать это двумя способами:

Вне зависимости от выбранной команды вы увидите следующее (с вашими данными):

После этого вы можете авторизоваться как пользователь (user@12.34.56.78), и пароль не будет запрошен.

Шаг 4 – Деактивировать пароль для root-доступа

Это шаг не является обязательным.

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

Внутри этого файла вы найдете параметр PermitRootLogin – измените его так, чтобы пользователи могли авторизоваться только через SSH-соединение:

Источник

SSH авторизация по ключу через PuTTY

passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

На сегодняшний день набирает обороты практика аутентификации к SSH-серверу по ключу, в этом есть несколько преимуществ:

В это статье мы настроим SSH авторизации на сервере CentOS 7 по ключу, и настроем подключение через ключ утилиту PuTTY.

Генерация ключа

passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Если вы хотите обезопасить себя по максимальному вы можете задать пароль для защиты приватного ключа в полях Key Passphrase и Confirm Passphrase. Но при каждом входе у вас будет запрашивать пароль который вы ввели. Это обезопасит вас если ваш приватный ключ будет похищен.

Далее сохраняем public key и private key. Приватный ключ мы будем использовать для подключения к серверу, а вот публичный ключ надо будет передать на удаленный сервер которому мы будем подключаться.

Обратите внимания на то как был сгенерирован ваш публичный ключ.

Лично у меня он был сгенерирован не совсем верно, вот пример public_key в дальнейшем при подключении через PuTTY с таким ключом могут возникнуть ошибка Server refused our key.

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

Установка публичного ключа на сервере

Далее необходимо скопировать наш публичный ключ на сервер. Мы воспользуемся для передачи на сервер ключа утилитой PSFTP, но вам ничего не мешает его передать через любой FTP клиент.

passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Ключ с копировался, теперь нужно добавить его в

/.ssh/authorized_keys. Далее логинемся еще раз по паролю, через PuTTY и выполняем:

Далее нужно проверить настройки нашего SSH сервера, сами настройки лежат в файле /etc/ssh/sshd_config:

Теперь нам надо будет перезапустить SSH сервер:

Теперь мы можем подключиться к серверу по ключу или паролю.

Но мы можем вообще запретить подключатся к SSH серверу по паролю указав в файле /etc/ssh/sshd_config.

После чего не забываем заново перезапустить SSH сервер.

Настройка и подключения PuTTY

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

Создаем новый сеанс пиши на IP Адрес к серверу.

passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

Далее, мы выбираем меню категорию SSH и там выберем под категорию Auth

passphrase ssh что это. Смотреть фото passphrase ssh что это. Смотреть картинку passphrase ssh что это. Картинка про passphrase ssh что это. Фото passphrase ssh что это

В поле Private key file for authentication загружаем наш приватный ключ.

Далее переходим обратно в раздел Session и сохраняем нашу сессию для того чтобы следующий раз не заполнять все эти поля.

Остаётся только проверить правильность аутентификации к SSH серверу по ключу. Запустите PuTTY и подключитесь к своему серверу. Если вы при создании, ключа заполнили поле Key Passphrase и Confirm Passphrase то вас запросит вести этот пароль. Если же всё настроено неправильно, то будет выдано сообщение об ошибке и предложено ввести пароль.

Источник

Working with SSH key passphrases

In this article

You can secure your SSH keys and configure an authentication agent so that you won’t have to reenter your passphrase every time you use your SSH keys.

With SSH keys, if someone gains access to your computer, they also gain access to every system that uses that key. To add an extra layer of security, you can add a passphrase to your SSH key. You can use ssh-agent to securely save your passphrase so you don’t have to reenter it.

Adding or changing a passphrase

You can change the passphrase for an existing private key without regenerating the keypair by typing the following command:

If your key already has a passphrase, you will be prompted to enter it before you can change to a new passphrase.

Auto-launching ssh-agent on Git for Windows

You can run ssh-agent automatically when you open bash or Git shell. Copy the following lines and paste them into your

/.bashrc file in Git shell:

If your private key is not stored in one of the default locations (like

/.ssh/id_rsa ), you’ll need to tell your SSH authentication agent where to find it. To add your key to ssh-agent, type ssh-add

Now, when you first run Git Bash, you are prompted for your passphrase:

The ssh-agent process will continue to run until you log out, shut down your computer, or kill the process.

Saving your passphrase in the keychain

On Mac OS X Leopard through OS X El Capitan, these default private key files are handled automatically:

The first time you use your key, you will be prompted to enter your passphrase. If you choose to save the passphrase with your keychain, you won’t have to enter it again.

Otherwise, you can store your passphrase in the keychain when you add your key to the ssh-agent. For more information, see «Adding your SSH key to the ssh-agent.»

Источник

Настройка пары ключей ssh на linux сервере

2770 просмотров 1 2020-12-14

Для повышения безопасности ssh-соединения рекомендуется отказаться от логина по паролю, и подключаться к удалённому серверу с помощью ключей. Это действие аналогично отпиранию замка с помощью ключа. Логин по паролю в конце-концов может быть взломан методом перебора, либо утечкой пароля. Тогда как логин по ключам достаточно стоек к взлому.

Здесь будет рассказано, как создать пару ключей на клиентской машине, работающей под ОС Ubuntu 18.04. Однако, данное руководство будет актуально и на других версиях linux, с некоторыми оговорками.

1. Создание пары ключей RSA

Для того, чтобы заходить на сервер по ключу, необходимо сгенерировать пару ключей: открытую и закрытую. Открытый (или публичный) ключ мы помещаем на сервер, а закрытый хранится у нас. По этой паре мы можем осуществлять логин на сервер. На данный сервер сможет заходить тот, у кого есть вторая часть ключа.

Сгенерируем пару ключей.

После выполнения этой команды, вы получите следующий вывод:

Если ранее вы генерировали пару ssh-ключей, то вероятнее всего вы получите следующий вывод:

Обратите внимание, что если у вас уже есть ключ, и вы его используете, то при его перезаписи вы не сможете уже залогиниться на тот сервер, где храниться его публичная часть.

После успешной операции, вы увидите следующий вывод:

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

После этого, вы увидите следующий вывод:

Это говорит о том, что у вас появилась пара из открытого и закрытого ключа, которые могут быть использованы для логина на удалённый сервер. Далее необходимо скопировать открытый ключ на удалённый сервер.

Копирование открытого ключа с помощью программы ssh-copy-id

Программа ssh-copy-id присутствует во многих дистрибутивах linux, поэтому наиболее вероятно что этот вариант вам подойдёт по умолчанию.

Для копирования открытой части ключа, достаточно произвести копирования ключа следующей командой:

Если вы ни разу не заходили на сервер, то вероятнее всего вы получите следующее предупреждение:

Это означает, что ваша локальная машина не знает данный хост. Достаточно ввести “yes” и нажать “Enter”.

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

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

/.ssh/id_rsa.pub в файл authorized_keys в поддиректории

/.ssh домашней директории вашего пользователя на удалённом хосте. В результате вы увидите следующее сообщение:

Таким образом ключ загружен на удалённый сервер.

Копирование ключа вручную

Иногда бывают случаи. когда отсутствует утилита ssh-copy-id (особенно на старых операционных системах). Поэтому можно скопировать ключ вручную. Один из вариантов – это передать ключ по ssh. Для этого мы будем считывать ключ, с помощью команды cat, затем передавать его через pipe команде ssh, которая создаст ключ и разместит его в файле.

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

Аналогично, можно все эти действия проделать вручную. Например, если вы не имеете доступ по ssh к удалённой машине. Для начала надо вывести содержимое открытого ключа на вашей локальной машине.

Вы получите содержимое файла ключа, которое будет выглядеть примерно так:

После чего на удалённой машине необходимо создать папку

/.ssh. Команда ниже создаст директорию, если её не существовало.

Теперь можем дописать публичный ключ нашей локальной машины на удалённую в конец файла authorized_keys :

Обратите внимание, что надо заменить “строка_публичного_ключа” на вывод команды cat

После чего, необходимо убедиться, что директория

/.ssh и файл authorized_keys имеют соответствующие права доступа:

Если вы используете акаунт root, для настройки ключей. То не забудьте поменять права пользователя, чтобы директория и файлы ключей принадлежали пользователю, а не root. Делается следующей командой:

Где, user следует заменить на имя вашего пользователя.

Подключение к удалённому серверу и отключение логина по паролю

После всех процедур вы можете попробовать подключиться к удалённому серверу.

Если при создании пары ключей вы не задали ключевую фразу (passphrase), вы будете залогинены автоматически. Если вы задали ключевую фразу, вам будет предложено её ввести. Это означает, что вы всё сделали верно. Теперь можно отключить логин по паролю. Для этого отредактируем файл sshd_config:

Всё, теперь можете открыть новое окно терминала, и проверить соединение по ssh по вашему логину. Всё должно работать без пароля.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *