Инструкция: как подключиться по ssh к серверу с помощью putty

Как подключиться по SSH

Для подключения по SSH нам необходимо знать такие данные:

  • ip адрес сервера, к которому мы собираемся подключится;
  • порт, на котором ожидает подключения SSH сервер, по умолчанию используется 22, но в целях безопасности порт подключения ssh часто изменяют;
  • имя и пароль пользователя на удаленном сервере.

Больше ничего не нужно, обычно эти данные присылают в письме вместе с описанием VPS. Теперь перейдем к практике.

1. Подключение через SSH в Linux

В Linux подключение по SSH выполняется с помощью утилиты ssh. Мы более подробно рассматривали работу с ней в статье как пользоваться ssh. Для подключения к удаленному компьютеру ее синтаксис будет выглядеть следующим образом:

$ ssh имя_пользователя@айпи_адрес

Это самый простой вариант, если вам также нужно задать порт, используйте опцию -p:

$ ssh имя_пользователя@айпи_адрес -p порт

Чтобы выполнить подключение по SSH Linux нажмите Ctrl+Alt+T для открытия терминала и наберите команду, заменив нужные значения:

Или, с нестандартным портом:

Если ip_адрес и порт правильные, то на следующем шаге программа попросит у вас ввести пароль:

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

Теперь вы подключены, и все вводимые далее команды будут выполнены на удаленном сервере:

Если же произошла ошибка и IP адрес или порт введены неверно, то вы получите ошибку Connection Refused:

Просто убедитесь что порт введен верно. Если это ваш сервер, то, возможно на нем еще нужно разрешить подключение SSH в брандмауэре. В Ubuntu/Debian для этого на удаленном сервере выполните:

А в CentOS/Fedora:

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

Теперь вы знаете как подключиться по ssh linux и решить проблемы с подключением. А теперь перейдем к Windows.

2. Подключение через SSH в Windows

Раньше подключение по SSH из Windows выполнялось только с помощью сторонних утилит, например PuTTY. Но в Windows 10 был добавлен встроенный OpenSSH клиент и работает он точно так же, как и в Linux. По умолчанию этот компонент не активирован. Для его установки откройте Параметры -> Приложения:

Затем выберите Управление дополнительными компонентами:

Здесь нажмите добавить новый компонент и в открывлемся меню выберите OpenSSH Client и нажмите Устанвоить:

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

После перезагрузки нажмите Win+R чтобы открыть окно запуска команд и наберите в нем cmd:

Далее нажмите Enter. Перед вами откроется командная строка Windows. Здесь можно использовать утилиту ssh. Синтаксис у нее абсолютно такой же, как и для Linux:

ssh имя_пользователя@айпи_адрес -p порт

Например, такой командой можно подключится по SSH к Raspberry Pi, который находится в вашей локальной сети по адресу 192.168.1.5:

Утилита предложит добавить устройство в список известных:

Затем предложит ввести пароль:

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

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

Подключение к SSH по имени хоста

У меня есть VPS, у которой IP адрес 185.117.153.79, чтобы подключиться к ней я выполняю команду:

ssh root@185.117.153.79

Но всё время держать в уме IP адрес неудобно, особенно если серверов несколько. Было бы удобнее, подключаться к хосту по легко запоминаемому имени. Это IP адрес сервера SuIP, поэтому в качестве короткого имени я выберу suip, а в качестве ещё более короткого псевдонима просто букву s.

Чтобы операционная система начала узнавать эти имена, нужно настроить файл hosts. В Windows этот файл размещён по пути C:\Windows\System32\drivers\etc\hosts, а в операционной системе Linux это файл /etc/hosts. Кстати, ещё больше подробностей об этом файле вы найдёте в статье «Как настроить локальный DNS используя файл /etc/hosts в Linux».

Итак, нужно добавить записи вида:

IP_1	имя_хоста_1	короткое_имя
IP_2	имя_хоста_2
IP_3	имя_хоста_3
………

Для своего примера я добавляю такую строку:

185.117.153.79	suip	s

Сохраняю и закрываю файл hosts. Теперь я могу подключиться к данному хосту набрав следующую команду:

ssh root@suip

Или даже в таком виде подключение также пройдёт успешно:

ssh root@s

Ещё один вариант, как добиться этого же эффекта без редактирования системного файла hosts, будет чуть ниже.

Авторизация пользователей на сервере

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

Вероятно, самый простой – с помощью пароля, когда сервер попросту предлагает пользователю набрать его на клавиатуре. Пароль передается через установленное к этому моменту защищенное соединение. То есть третьи лица не смогут «подсмотреть» пароль во время передачи (так называемая атака MITM – Man In The Middle).

Но, несмотря на то, что пароль будет передан в зашифрованном виде, данный способ не рекомендуется, поскольку сложность пароля имеет очевидные ограничения. Появляется возможность подбора пароля автоматизированным способом (Brute-force атака).

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

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

Авторизация по ключам начинается только после того как зашифрованное соединение установлено. Процесс проходит так:

  1. Клиент отсылает серверу ID ключа, по которому он желает авторизоваться.
  2. Сервер проверяет файл authorized_keys в домашней директории пользователя, под которым клиент желает войти.
  3. Если публичный ключ с указанным ID найден, сервер генерирует случайное число (challenge message) и шифрует его с помощью этого ключа.
  4. Сервер посылает клиенту шифрограмму.
  5. Если клиент имеет приватный ключ, парный публичному на сервере, он в состоянии расшифровать то, что было передано п.3 — 4
  6. Клиент объединяет дешифрованное число с общим секретным ключом, установленным для текущей сессии. Затем вычисляет md5 хеш полученных после объединения данных.
  7. Клиент отправляет хеш из п.6 обратно серверу, в качестве ответа на его шифрограмму
  8. Сервер использует тот же секретный ключ от сессии, и число, которое сгенерировал в п.3 и тоже вычисляет md5, как клиент до этого. Если полученный хеш и принятый от клиента совпадают, это доказывает что последний владеет приватным ключом. Поэтому пользователь считается авторизованным.

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

Шаблоны в файле настроек SSH

Шаблон состоит из нуля или более символов, которые не являются белыми пробелами, ‘*’ (подстановочного символа, который соответствует нулю или более символам), а также ‘?’ (подстановочный символ, который соответствует ровно одному любому символу). Например, чтобы охарактеризовать любой хост в наборе доменов «.co.uk» можно использовать следующий шаблон:

Host *.co.uk

Следующий шаблон будет соответствовать любому хосту в сетевом диапазоне 192.168.0.:

Host 192.168.0.?

Список шаблонов — это несколько шаблонов, разделённых запятой. Шаблоны внутри списка могут иметь противоположное значение если перед ними стоит восклицательный знак («!»). Например, для разрешения ключа использовать откуда угодно внутри организации, кроме пула «dialup», можно использовать следующее (в authorized_keys):

from="!*.dialup.example.com,*.example.com"

Помните, что отрицательное совпадение никогда само по себе не даст положительных результатов. Например, попытка сопоставить хост «host3» следующими списку шаблонов не найдёт совпадений:

from="!host1,!host2"

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

from="!host1,!host2,*"

Другие программы для работы по SSH

Если у вас несколько серверов и вы хотите работать с ними эффективнее, тогда попробуйте удобную «обертку» для PuTTY – PuTTY Connection Manager. Скачать её можно отсюда .

Bitvise SSH Client

Данный продукт схож с PuTTY и его использование не должно вызвать проблем. Основное преимущество Bitvise SSH Client – наличие очень удобного двухпанельного файлового менеджера, работающего по протоколу SFTP. Программа бесплатна и доступна для скачивания с официального сайта .

SecureCRT

Платная альтернатива, для тех, кто готов расстаться с суммой в 99$. Клиент имеет больше функциональных возможностей, чем PuTTY. Среди них, к примеру, возможность создания ключей в самом приложении, запоминание паролей, автосоединение с удаленным сервером.

Особую популярность программе PuTTY принесла ее доступность, простота и способность выполнять подключения к узлам сети по SSH-протоколу, включая создание SSH-туннелей. Доступность практически к любой платформе, в том числе к мобильным устройствам, — это приложение PuTTY. Как пользоваться данной программой обычному пользователю, а не только системному администратору?

Проложить SSH-туннель так же просто, как использовать такое приложение для соединения с последовательным портом или удаленным сервером по SSH.

Примеры

Существует большое количество методов использования утилиты. Большинство из них неизвестны современному пользователю операционной системы Линукс.

Рассмотрим подключение к серверу.

При присоединении с использованием утилиты в командной строке потребуется ввести:

Например, нам надо подключиться к компьютеру в локальной сети debian, под пользователем slon.

Все современные пользователи первоначально присоединяются к удаленной хосту (компьютеру). Только после этого они вводят требуемые команды. Утилита ssh дает возможность выполнить необходимую задачу без обязательного запуска терминала на удаленной машине.

Предположим нам надо запустить команду top на удаленном компьютере.

К примеру, требуется запустить скрипт bash на удаленном компьютере. Сам файл bash.sh находится на локальном компьютере . Для этих целей необходимо провести перенаправление ввода bash.

С использованием утилиты пользователю предоставляется возможность сохранить бекап локального диска на удаленной серверной машине. Для этих целей нужно перенаправлять вывод dd с использованием оператора перенаправления.  Далее вывод dd сохраняется в файле copiadiska.img.

Для восстановления прежнего состояния локального диска используется созданная ранее копия. Для этого в командной строке нужно ввести:

При использовании команды ssh для входа в удаленный сервер нередко требуется пароль. Это создает дополнительные неудобства, но дает возможность обезопасить вас от злоумышленников. Несмотря на защиту, пароль можно подобрать.

Наиболее надежным методом аутентификации является использование нескольких ключей RSA. Один из них хранится на ПК, а второй является публичным. Он применяется пользователем при авторизации.

Это поведение весьма просто настроить. Изначально необходимо задать ключ. Для этого потребуется ввести:

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

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

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

Стоит отметить, размещать пароли в обыденных текстовых файлах не стоит. Ими могут воспользоваться злоумышленники Но если это потребуется, такой вариант возможен. Чтобы сохранить пароль, необходимо воспользоваться оператором, используемым при перенаправлении Bash. Введите в командной строке:

При запуске команды ssh на экране монитора нередко всплывает приветствие. Допускается его изменение. За такую функцию отвечает специальный файл «/etc/issue». Вам потребуется просто открыть данный файл и указать необходимо приветствие. Для этого вводится команда:

В некоторых случаях пользователю ОС Линукс может потребоваться информация о неудачных попытках подключения к утилите. Вы можете посмотреть IP-адреса, с которых совершалось данное действие.

Все запросы о входах концентрируются в «/var/log/secure».

Чтобы отфильтровывать информацию в терминале по запросу «Failed password» необходимо добавит grep

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

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

Стоит отметить, что все получаемые данные могут шифроваться. Чтобы такая опция заработала, потребуется включить поддержку со стороны удаленного сервера. Далее выполняется команда, позволяющая загрузить графическую программу. Для этого потребуется ввести в командную строку «ssh -XC user@remotehost «eclipse»».

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

Теперь можно завершить сессию простой командой:

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

Вход в SSH без пароля (с использованием файлов ключей)

Вход в SSH по публичному ключу (без пароля) очень удобен и безопасен.

Процесс настройки аутентификации по публичному ключу очень простой:

  1. Командой создаётся пара «публичный ключ — приватный ключ».
  2. Публичный ключ копируется на компьютер с сервером SSH, то есть на компьютер, к которому будет осуществляться подключение и на котором будут выполнятся команды.
  3. Затем подключение выполняется обычным способом, но ввод пароля уже не требуется.

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

Сгененировать ключи и скопировать их на удалённый хост можно буквально тремя командами. Для генерации пары ключей используется программа ssh-keygen, она включена в пакет ssh и если SSH у вас уже настроен, то дополнительно устанавливать ничего не нужно.

У программы ssh-keygen много функций и возможностей, начнём с рассмотрения процедуры генерации ключей, которая выполняется элементарно.

Если вы успели залогиниться на удалённой системе, разлогинтесь. После этого наберите:

ssh-keygen -t rsa

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

В результате будет создано два файла:

  • ~/.ssh/id_rsa
  • ~/.ssh/id_rsa.pub

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

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

ssh ПОЛЬЗОВАТЕЛЬ@АДРЕСАТ mkdir .ssh

Например:

ssh mial@192.168.1.36 mkdir .ssh

Теперь нам нужно скопировать содержимое файла id_rsa.pub на удалённую машину в файл ~/.ssh/authorized_keys. Сделать это очень просто (не забываем менять данные на свои):

cat .ssh/id_rsa.pub | ssh ПОЛЬЗОВАТЕЛЬ@АДРЕСАТ 'cat >> .ssh/authorized_keys'

Например:

cat .ssh/id_rsa.pub | ssh mial@192.168.1.36 'cat >> .ssh/authorized_keys'

Теперь выполняем подключение с помощью клиента SSH, но пароль у нас больше спрашиваться не будет.

Как настроить SSH сервер (sshd)

Служба sshd считывает настройки из конфигурационного файла /etc/ssh/sshd_config. Этот файл содержит пары «ключевое слово — аргумент», одна пара на одной строке. Для каждого ключевого слова будет использовано первое полученное значение (исключение составляют несколько директив, которые можно использовать несколько раз, и каждого значение будет учтено, например это Port и ListenAddress).

Опционально аргументы можно заключить в двойные кавычки («), чтобы передать аргументы, содержащие пробелы.

Ключевые слова не чувствительны к регистру, а аргументы чувствительны к регистру.

Многие директивы закомментированы, но они указывают на значение по умолчанию, которое всё равно используется. Если вас устраивает значение по умолчанию, то не нужно ничего менять. Если же вы хотите другое значение, то нужно раскомментировать строку с соответствующей директивой (убрать символ #) и внести изменения.

Дополнительно можно указать опции командной строки — они имеют приоритет над настройками в конфигурационном файле.

Использование PuTTY

  • Скачайте приложение и установите его на свой ПК
  • Запустите программу
  • В поле Имя хоста (или IP-адрес)
    укажите соответственные данные. Нажмите кнопку Соединиться
    . Конечно же, можно создать еще сценарий подключения, но для первого раза это нужно сначала для того, чтобы проверить открыт ли порт, по которому вы собираетесь подключиться к удаленной станции Конечно же, можно создать еще сценарий подключения, но для первого раза это нужно сначала для того, чтобы проверить открыт ли порт, по которому вы собираетесь подключиться к удаленной станции

Если все верно, приложение запросит вас ввести логин и пароль. А после удачной авторизации представит возможность доступа к терминалу удаленной станции

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

Также в группе Окно
можно установить нужный шрифт для отображения информации в терминале и другие параметры, касающиеся внешнего вида терминала. Для этого выберите пункт Внешний вид

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

На сегодня SSH является наиболее распространённым протоколом, позволяющим быстро и безопасно соединяться с вашими серверами для их конфигурирования и решения иных задач администрирования. В этой статье рассмотрим популярный SSH-клиент PuTTY , позволяющий управлять серверами на базе операционных систем Linux/FreeBSD.

Рассказывать, как выполнять основные действия с программой, в данной статье мы не будем. А ознакомиться предлагаю с настройками и функциями, которые помогут вам работать с PuTTY более эффективно.

Создание пары ключей SSHCreate an SSH key pair

В этом разделе ниже описано два способа создания пары ключей SSH в Windows.The following sections describe two options to create an SSH key pair on Windows. Вы можете использовать команду оболочки () или средство графического пользовательского инструмента (PuTTYgen).You can use a shell command () or a GUI tool (PuTTYgen)

Также обратите внимание, что при использовании PowerShell для создания ключа отправьте открытый ключ в формате SSH. com (СЕКШ).Also note, when using Powershell to create a key, upload the public key as ssh.com(SECSH) format

При использовании интерфейса командной строки перед отправкой преобразуйте ключ в формат OpenSSH.When using CLI, convert the key into OpenSSH format prior to uploading.

Создание ключей SSH с помощью ssh-keygenCreate SSH keys with ssh-keygen

Использование командной оболочки на Windows, которая поддерживает клиентские средства SSH (или использует Azure Cloud Shell), создайте пару ключей SSH с помощью команды .If you run a command shell on Windows that supports SSH client tools (or you use Azure Cloud Shell), create an SSH key pair using the command. Введите приведенную ниже команду и укажите сведения в ответ на запросы.Type the following command, and answer the prompts. Если в выбранном каталоге существует пара ключей SSH, они будут перезаписаны.If an SSH key pair exists in the chosen location, those files are overwritten.

Чтобы получить больше общих сведений, ознакомьтесь с краткими или подробными инструкциями по созданию ключей SSH с помощью .For more background and information, see the quick or detailed steps to create SSH keys using .

Создание ключей SSH с помощью PuTTYgenCreate SSH keys with PuTTYgen

Если вы предпочитаете создать ключи SSH с помощью инструмента с графическим пользовательским интерфейсом, можно использовать генератор ключей PuTTYgen, входящий в состав скачиваемого пакета PuTTY.If you prefer to use a GUI-based tool to create SSH keys, you can use the PuTTYgen key generator, included with the PuTTY download package.

Чтобы создать пару ключей SSH-RSA с помощью PuTTYgen, выполните следующее.To create an SSH RSA key pair with PuTTYgen:

  1. Запустите PuTTYgen.Start PuTTYgen.

  2. Щелкните Generate (Создать).Click Generate. По умолчанию PuTTYgen создает 2048-разрядный ключ SSH-2 RSA.By default PuTTYgen generates a 2048-bit SSH-2 RSA key.

  3. Переместите указатель мыши на пустую область, чтобы обеспечить случайность ключа.Move the mouse around in the blank area to provide randomness for the key.

  4. После создания открытого ключа при необходимости введите и подтвердите парольную фразу.After the public key is generated, optionally enter and confirm a passphrase. Она будет запрашиваться при аутентификации на виртуальной машине с помощью вашего закрытого ключа SSH.You will be prompted for the passphrase when you authenticate to the VM with your private SSH key. Если не создать парольную фразу, пользователь, получивший ваш закрытый ключ, сможет войти на любую виртуальную машину или в службу, использующую этот ключ.Without a passphrase, if someone obtains your private key, they can sign in to any VM or service that uses that key. Мы рекомендуем создать ее.We recommend you create a passphrase. Однако если вы забудете парольную фразу, восстановить ее будет невозможно.However, if you forget the passphrase, there is no way to recover it.

  5. Открытый ключ отображается в верхней части окна.The public key is displayed at the top of the window. Скопируйте этот весь открытый ключ и вставьте его на портале Azure или в шаблон Azure Resource Manager при создании виртуальной машины Linux.You can copy this entire public key and then paste it into the Azure portal or an Azure Resource Manager template when you create a Linux VM. Кроме того, нажмите кнопку Save public key (Сохранить открытый ключ), чтобы сохранить копию ключа на компьютере:You can also select Save public key to save a copy to your computer:

  6. При необходимости сохранить закрытый ключ в формате закрытого ключа PuTTy (PPK-файл) щелкните Save private key (Сохранить закрытый ключ).Optionally, to save the private key in PuTTy private key format (.ppk file), select Save private key. PPK-файл требуется, если вы хотите использовать PuTTY позже для установления SSH-подключения к виртуальной машине.You will need the .ppk file later to use PuTTY to make an SSH connection to the VM.

    Если вы хотите сохранить закрытый ключ в формате OpenSSH, используемом многими клиентами SSH, щелкните Conversions (Преобразование) > Export OpenSSH key (Экспортировать ключ OpenSSH).If you want to save the private key in the OpenSSH format, the private key format used by many SSH clients, select Conversions > Export OpenSSH key.

Настройку ssh доступа на оборудование cisco

Заходим в привилегированный режим.

router>enable

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

Устанавливаем точную текущую дату и время.

router#clock set 15:00:00 15 May 2018

Входим в режим конфигурирования.

cisco#configure terminal

Задаем домен, если у вас нет домена можно указать любой домен например cisco.com.

cisco(config)#ip domain name mydomain.ru

Задаем имя роутера.

cisco(config)#hostname mycisco

Задаем версию протокола ssh. Рекомендуется версия 2.

mycisco(config)# ip ssh version 2

Задаем количество попыток подключения по ssh.

mycisco(config)# ip ssh authentication-retries 2

Задаем хранение пароли в зашифрованном виде.

mycisco(config)#service password-encryption

Включаем протокол aaa.

mycisco(config)#aaa new-model

Создаем пользователя admin с паролем qwerty и максимальными уровнем привелегий 15.

mycisco(config)#username admin privilege 15 secret qwerty

Задаем пароль qwerty для привилегированного режима.

mycisco(config)#enable secret qwerty

Генерируем rsa ключ для ssh длиной желательно не менее 1024.

mycisco(config)#crypto key generate rsa
The name for the keys will be:
Choose the size of the key modulus in the range of 360 to 4096 for your
  General Purpose Keys. Choosing a key modulus greater than 512 may take
  a few minutes.
How many bits in the modulus :1024

Разрешаем доступ по ssh только из определенной сети (192.168.1.0/24).

mycisco(config)#access-list 23 permit 192.168.1.0 0.0.0.255

Входим в режим конфигурирования терминальный линий.

mycisco(config)#line vty 0 4

Разрешаем доступ только по ssh.

mycisco(config-line)# transport input ssh

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

mycisco(config-line)# logging synchronous

Позволяем входить сразу в привилигированный режим.

mycisco(config-line)# privilege level 15

Включаем автоматическое закрытие ssh сессии через 30 минут.

mycisco(config-line)# exec-timeout 30 0

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

mycisco(config-line)# access-class 23 in

Выходим из режима конфигурирования.

mycisco(config-line)# end

Сохраняемся.

mycisco# copy running-config startup-config

Вот и все, включение ssh на оборудование Cisco закончено.

Симметричное шифрование

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

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

Такая схема еще часто называется с «общим секретом» (shared secret) или «секретный ключ». Чаще используется один ключ для всех операций, или пара ключей.

Симметричные ключи используются в SSH для шифрования всего соединения. Стоит отметить, что речь не о паре ключей public/private, которые применяются для авторизации. Они не имеют отношения к соединению, как таковому. Симметричное шифрование защищает, так же, и сам процесс ввода логина/пароля от «подслушивания».

Клиент и сервер проходят некоторую процедуру, чтобы «договориться» о вышеозначенном секрете. Она называется «обмен ключами» и происходит с помощью конкретных приемов, в результате которых, обе стороны получают один и тот же ключ, манипулируя открытыми частями информации (т.е. теми, которые передаются в открытом, незашифрованном виде). Как именно происходит обмен, поясним в деталях позже.

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

SSH можно сконфигурировать, чтобы использовались различные системы симметричного шифрования: AES, Blowfish, 3DES, CAST128 и Arcfour. Сервер и клиент, имеют список поддерживаемых систем, которые указаны в порядке приоритета. Первый из списка клиента, поддерживаемый сервером, используется для соединения.

В Ubuntu 14.04, список алгоритмов, по умолчанию, представлен следующим порядком: aes128-ctr, aes192-ctr, aes256-ctr, arcfour256, arcfour128, aes128-gcm@openssh.com, aes256-gcm@openssh.com, chacha20-poly1305@openssh.com, aes128-cbc, blowfish-cbc, cast128-cbc, aes192-cbc, aes256-cbc, arcfour.

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

Ссылка на основную публикацию