Как использовать Putty: команды и полезные функции. Настройка аутентификации по ключу в PuTTY

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

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

Увеличение количества строк терминала

Часто в результате каких-то действий в консоль выводится большое количество информации, и вам необходимо её пролистать. Однако, настройки по умолчанию ограничивают вывод двумя сотнями последних строк. Для изменения этого параметра откройте окно настроек, перейдите в категорию Window и измените параметр Lines of scrollback на подходящее вам значение, к примеру, 5000.

Полезные горячие клавиши

Копирование и вставка текста

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

Редактирование вводимой команды

Ctrl+A – переместить курсор в начало вводимой строки
Ctrl+E – переместить курсор в конец вводимой строки
Alt+F – переместить курсор к следующему слову во вводимой строке
Alt+B – переместить курсор к предыдущему слову во вводимой строке

Ctrl+U – удалить все символы, предшествующие курсору; удобно использовать для полного удаления напечатанной команды
Alt+BackSpace, Ctrl+W – удалить слово, предшествующее курсору

Прокрутка текста

Конечно, наиболее естественной является прокрутка колесиком мыши. Но прокрутка с помощью горячих клавиш во многих случаях быстрее. Если хотите повысить эффективность своей работы, попробуйте.

Shift+PageUp – прокрутка текста вверх
Shift+PageDown – прокрутка текста вниз
Ctrl+PageUp – построчная прокрутка текста вверх
Ctrl+PageDown – построчная прокрутка текста вниз

Дополнительно

Ctrl+C – прервать исполнение текущей команды
Ctrl+L – очистить экран

Перенос сессий PuTTY на другой компьютер

Представим ситуацию, когда вам необходимо перенести созданные в PuTTY сессии на другой компьютер. Самый простой способ - перенести соответствующую ветку реестра. Для этого необходимо в командной строке Windows выполнить следующую команду:

C:>regedit /e "%userprofile%\desktop\PuTTY.reg" HKEY_CURRENT_USER\Software\Simontatham

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

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

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

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

Итак, приступим к настройке этого способа авторизации.

Запустим программу PuTTYgen, которая устанавливается вместе с PuTTY.

В следующем окне выбираем тип ключа SSH-2 RSA. И указываем в поле Numbers of bits in a generated key значение 2048.

После чего нажимаем Generate и водим курсором в пределах окна, пока полоса прогресса не заполнится.

Далее нажимаем Save public key и сохраняем публичный ключ под именем id_rsa.pub. Нажимаем Save private key и сохраняем приватный ключ под именем mykey.ppk, соглашаясь сохранить ключ без использования пароля.

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

Открываем программу и вводим:

psftp> open youserver.ru
psftp> put id_rsa.pub /tmp/id_rsa.pub

ssh-keygen -i -f /tmp/id_rsa.pub >> /root/.ssh/authorized_keys

И в завершении запускаем Pageant.

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

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

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

Bitvise SSH Client

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

SecureCRT

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

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

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

Сначала нужно скачать установщик программы. Для этого откройте официальный сайт и нажмите "You can download PuTTY here" :

Затем выберите установщик для вашей архитектуры, x86 или x64 и загрузите его.

На первом шаге нажмите "Next" :

Папку для установки можно оставить по умолчанию:

Компоненты тоже:

Дождитесь завершения установки:

Снимите галочку с "View README" и нажмите "Finish" :

Теперь перейдем к тому как выполняется работа в PuTTY.

Как пользоваться PuTTY

1. Интерфейс программы

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

Рассмотрим за что отвечают те или иные вкладки программы, чтобы вы ориентировались что и где искать. У нас есть четыре вкладки:

  • Session - отвечает за подключение удаленному серверу, тут мы вводим параметры подключения, порт, адрес, а также можем сохранить все настройки putty, чтобы не настраивать каждый раз заново.
  • Terminal - позволяет включать или отключать возможности терминала;
  • Window - настройка внешнего вида окна, цвет, шрифт, кодировка;
  • Connection - настройка параметров подключения, алгоритма шифрования, сжатия, ключей аутентификации, X11 и других параметров.

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

2. Подключение к удаленному компьютеру PuTTY

Чтобы подключиться к удаленному компьютеру по SSH перейдите на вкладку "Session" , здесь, в поле "Host Name" необходимо прописать ip адрес или имя хоста, компьютера, к которому вы хотите подключиться, в поле порт - нужно указать порт, на котором запущен SSH сервер, по умолчанию используется порт 22:

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

3. Сохранение сессии PuTTY

Чтобы не вводить каждый раз ip и порт можно сохранить эти данные в виде сессии, для этого пропишите новое имя в поле "Saved Sessions" , а затем нажмите кнопку "Save" :

Теперь вы сможете загрузить сохраненную сессию, нажав кнопку "Load" .

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

4. Имя пользователя по умолчанию

Вы можете не вводить имя пользователя каждый раз, для этого перейдите на влкадку "Connection" , затем "Data" и в поле "Auto-login Username" пропишите имя пользователя, например, root:

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

5. Авторизация по ключу ssh в PuTTY

Чтобы не вводить каждый раз пароль можно настроить авторизацию по ключу. В Linux такая возможность используется очень широко потому что это удобно. Первым делом необходимо создать ключ. Для этого запустите утилиту PuTTYgen и установите переключатель в положение "SSH-2 RSA" нажмите "Generate" :

Обязательно ключ должен быть SSH-2 RSA, если в главном окне нет, выберите в меню "Key" . Подвигайте мышкой, чтобы создать достаточное количество энтропии:

Ключ готов, затем, с помощью кнопок "Save Public Key" и "Save Private Key" сохраните оба ключа.

Здесь необходимо нажать кнопку "Browse" и добавить недавно сохраненный приватный ключ:

Далее, возвращаемся на вкладку "Session" , выбираем наше сохранение и нажимаем "Save" чтобы сохранить настройки. Осталось только отправить наш открытый ключ на сервер. Для этого авторизуйтесь на нем с помощью пароля и открытый ключ вставьте ключ в конец файла /root/.ssh/authorized_keys.

Ключ можно брать прямо из окна PuTTYgen "Public key for pasting" или из файла открытого ключа:

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

5. Передача файлов через scp в PuTTY

Не все знают, но PuTTY позволяет передавать файлы через ssh также как это делает linux с помощью утилиты scp. Нажмите Win+R, затем пропишите cmd, чтобы запустить командную строку.

Синтаксис утилиты pcsp выглядит следующим образом:

pscp опции путь_файлу имя_пользователя @ хост : /путь/к/файлу/на/удаленном/хосте

Например, мы можем отправить файл из текущей папки в папку пользователя /root/:

pscp test.txt [email protected]:/root/

С помощью опции -P можно задать удаленный порт:

pscp -P 2250 test.txt [email protected]:/root/

А опция load позволяет загрузить сохраенные настройки сессии PuTTY:

pscp -load losst-2 test.txt [email protected]:/root/

Теперь вы знаете как использовать putty для передачи файлов.

Выводы

В этой статье мы рассмотрели как пользоваться PuTTY для решения задач администрирования Linux в Windows. Иногда случаются ситуации, что без ssh в windows никуда, тогда эта утилита будет просто незаменимой.

PuTTY - это маленькая бесплатная программа для подключения к серверу, через Telnet или безопасное соединение SSH.

Зачем она нужна?

Как правило данную программу используют для передачи команд серверу. Т.е. вы настраиваете PuTTY -> она подключается к серверу -> вы вводите в командную строку команды -> сервер их выполняет.

Еще одно применение - это передача файлов с компьютера на сервер и обратно, но для таких целей чаще используют бесплатную программу Filezilla , Total Commander или Far Manager .

Где скачать PuTTY?

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

Как правильно настроить PuTTY?

1. Запускаем без установки

После того как вы скачаете программу с официального сайта, устанавливать ее не нужно. Просто запускаете файл PuTTY.exe и видите такое окно:

2. Находим настройки

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

3. Вводим настройки и подключаемся

Host Name (or IP-adress) - имя хоста или IP-адрес, которые присылаются в настройках от хостера.
Port - ставим 22.
Saved Session - вводим любое имя для сессии и жмем "Save" ("Open" пока еще рано жать).Далее в левой колонке выбираем вкладку SSH и видим следующее:

Здесь ничего не трогаем, но в поле Preferred SSH protocol version выбираем 2 only (на некоторых хостингах можно просто оставить 2). Чтобы подключиться к серверу жмем "Open".

После этого должен появиться черный экран с надписью "Login as ". Вводите логин но знайте, что когда вы его вводите, то экран остается черным. Т.е. на нем ничего не происходит, поэтому когда закончите ввод логина, просто нажмите Enter. Далее вас попросят ввести таким же образом и пароль. Если все было настроено правильно, то вы увидите перед собой командную строку сервера. Соответственно в нее нужно вводить команды.

Важные команды PuTTY

Широкий список команд смотрим в отдельной статье , а самые главные мы описываем здесь:

имя команды --help - покажет полную информацию о команде и что она делает;
mc - запускает Midnight Commander (файловый менеджер);
ls - покажет файлы на сервере;
ls - la - покажет все файлы на сервере (даже скрытые) + размер + владельца + права на фалы + дату изменения;
cd директория - перейдет в указанную директорию;
cd ../ - вернуться на директорию вверх;
mv - переименовать\перенести файл;
rm - удалить файл;
cp - копировать;
chmod - поменять права на папку или файл;
cat имя файла - покажет содержимое файла;
mkdir - создать папку.

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

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

В качестве Telnet-клиента можно использовать уже известную нам программу DCC.

DCC (Dreambox Control Center)

Если вы еще не установили эту программу, то скачиваем архив с программой dcc-dreambox-control-center и распаковываем папку в любое место на диске. Запускается программа файлом DCC_E2.exe, для удобства можно создать ярлык с ссылкой на этот файл на рабочем столе компьютера.

После запуска, необходимо указать IP-адрес дримбокса (IP-адрес компьютера должен прописаться автоматически). Если IP-адрес тюнера неизвестен, то можно воспользоваться поиском – нажимаем кнопку Search и попадаем в окно поиска. Сверху указываем диапазон поиска и опять нажимаем кнопку Search. В результате поиска DCC выдаст список активных устройств в локальной сети. Становимся на строчку с именем ресивера и нажимаем Accept.

Когда IP-адрес прописан жмем кнопку Reconnect. При успешном соединении в окошке Protocol будет написано:

Telnet Connected FTP Connected Enigma2 detected (DM800)

При подключении можно указывать логин и пароль для FTP-подключения. По умолчанию:

Name – root

Password – dreambox

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

Нажимаем кнопку Telnet в нижнем левом углу и попадаем в черное окно терминала с подсказкой

Root@dm800:~#

Для проверки работы телнета можно дать команду df

Команда df выводит количество свободного места на смонтированных в момент подачи команды устройствах, примерно это выглядит так:

Популярный телнет-клиент. Скачиваем свежий дистрибутив по адресу

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

1. Сначала выбираем тип подключения – Telnet.

2. Затем вбиваем в поле Host Name IP-адрес тюнера, например, 192.168.1.4

3. Сохраним настройки на будущее, в поле Saved Sessions пишем название для нашего подключения, например, dreambox800.

4. Сохраняем кнопкой Save.

5. Нажимаем кнопку Open для подключения.

Теперь при последующих запусках PuTTY, достаточно будет запускать нужное нам соединение двойным кликом на название сохраненной ссесии (dreambox800).

Если все было указано правильно, откроется окно Telnet

Вводим логин – root и пароль - dreambox, если он задан.

После появления подсказки root@dm800:~# - можно вводить команды.

Как сделать, чтобы запустить телнет-соединение PuTTY одним кликом?

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

Щелкаем на нем правой кнопкой мыши и приводим строчку «Объект» к такому формату:

«C:\Program Files\PuTTY\putty.exe» -ssh -pw dreambox [email protected]

Т.е. надо дописать соединение по SSH, указав логин (root) и пароль (dreambox), а так же IP-адрес тюнера.

Теперь щелкнув по ярлыку PuTTY сразу подключаемся к дримбоксу по telnet.

Замечу, что по умолчанию на Dreambox 800 нет пароля, а значит SSH не сработает. Сначала с помощью того же телнета:) надо поменять пароль командой:

При наборе символов пароля в строке ничего не отображается.

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

Откройте программу Puttygen и нажмите кнопку Generate . Для процесса генерации ключей программа требует совершать произвольные движения "мышью" - для заполнения массива случайных чисел:

Сохраните созданный секретный ключ Save secret key . При сохранении следует учесть, что с помощью этого ключа можно получить доступ ко всем ресурсам, доступ к которым Вы настроите. Попытайтесь не хранить его на компьютере, куда хотя бы иногда может иметь доступ кто-нибудь ещё. Сохраните например его на флешке. Будет правильным, если ключ будет защищён паролем:

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

Откройте PuTTY и установите соединение с сервером используя пароль. Создайте на сервере каталог.ssh командой

Mkdir .ssh

Затем выполните команду echo как показано на рисунке - наберите

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

" >> .ssh/authorized_keys

Настройте PuTTY для работы с секретным ключом. Для этого войдите в раздел Connection->SSH->Auth и выберите путь к сохранённому ключу.

Статьи по теме: