Как через putty подключиться к серверу windows

Puttty — программа для удалённого подключения к серверу. ⚡ Как правильно подключиться к серверу на Linux по SSH.

Содержание

  • Применение и возможности PuTTY
  • Установка на Windows
  • Работа с программой
  • Распространенные ошибки

PuTTy

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

  • удаленного администрирования;
  • взаимодействия с VPS-серверами.
  • работы с Telnet-терминалами;
  • настройки маршрутизаторов через RS-232;

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

Возможности программы

  • Сохранение информации и конфигурационных параметров для многократного применения.
  • Работа с SSH-ключами.
  • Поддержка разных версий SSH-протокола.
  • Встроенные клиенты SCP и SFTP, используемые для различных операций с файлами. Возможности первого ограничиваются только функцией копирования.
  • Перенаправление портов через протокол SSH.
  • Поддержка xterm, ECMA-48 и VT-102.
  • Возможность соединения по IPv6.
  • Работа с алгоритмами шифрования.
  • Аутентификация через ключ, который расположен на удаленной машине.
  • Соединение через proxy.
  • Использование порта RS-232.

Установка на Windows

  1. Программа PuTTY для Windows 10 скачивается с официального сайта.
    Инсталляция на Windows PuTTY
  2. Далее нужно перейти по ссылке, скачать пакет для архитектуры x86 или x64, а затем запустить установку.
    Инсталляция на Windows PuTTY
  3. После установки необходимо проверить программу на работоспособность, запустив исполняемый файл на Windows.
    Инсталляция на Windows PuTTY

Работа с программой

Интерфейс

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

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

Соединение с удаленным сервером

Принцип подключения не зависит от операционной системы. Это могут быть разные версии Windows (7, 10) или популярные дистрибутивы на основе Linux — Ubuntu, CentOS, Debian.

Подключиться по SSH через PuTTY просто. Для этого нужно следовать приведенной ниже инструкции.

  1. Ввести IP-адрес или имя хоста, к которому необходимо подключиться.
  2. Указать порт (по умолчанию везде 22).
  3. Выбрать тип соединения SSH.
  4. Ввести название подключения и сохранить его, нажав кнопку «Save».
  5. Активировать соединение, нажав на «Open».
    Соединение с удаленным сервером PuTTY
  6. Указать данные для авторизации (логин и пароль).

После этого работа с терминалом осуществляется, как на локальном компьютере. Чтобы узнать информацию о версии Ubuntu, нужно ввести команду:

sudo lsb_release -a.

Соединение с удаленным сервером PuTTY

Для удобства можно создать жесткую ссылку (ярлык) на программу для быстрого запуска.

Использование SSH-ключей

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

Для примера, продемонстрируем ниже, как подключиться через PuTTY, установленного в Windows 10, при помощи SSH-ключа к серверу на Ubuntu.

Шаг №1

Для начала, нужно выполнить ряд действий на компьютере с ОС Windows.

  1. Установить  программу для генерации ключа «Putty Key Generator» и запустить ее.
  2. Задать параметр «RSA» и активировать процесс кнопкой «Generate». Нужно постоянно вводить указателем мыши в зоне окна выполнения операции для успешной генерации.
    Использование SSH-ключей PuTTY
  3. Сохранить private key, для чего скопировать текст из консоли в документ. Предварительно нужно указать тип файла «.ppk».
    Использование SSH-ключей PuTTY
  4. Затем сохраняем public key. Для этого необходимо скопировать и вставить текст из буфера обмена в любой пустой текстовый файл.
    Использование SSH-ключей PuTTY
  5. Свернуть программу.

Шаг №2

Далее необходимо перенести SSH-ключ на сервер Ubuntu, выполнив перечисленные ниже действия.

  1. Запустить программу PuTTY.
  2. Подключиться к серверу, используя его параметры для доступа (хост, порт и SSH-протокол).
  3. Командой «mkdir .ssh» создаем папку «.ssh». Затем командой «ll» проверяем наличие папки.
    Использование SSH-ключей PuTTY
  4. Прописываем права доступа для папки .ssh только для владельца, командой «сhmod 700 .ssh/».
    Использование SSH-ключей PuTTY
  5. При помощи команды «cd .ssh» переходим в системную папку «./ssh».
    Использование SSH-ключей PuTTY
  6. Создаем файл «authorized_keys», используя редактор nano, командой:

    touch authorized_keys

    Использование SSH-ключей PuTTY

  7. Прописываем права доступа для файла «authorized_keys», только для владельца, командой:

    сhmod 600 authorized_keys

    Использование SSH-ключей PuTTY

  8. Редактируем файл с помощью команды:

    cat >> authorized_keys << EOF»
  9. Добавляем ваш public key и заканчиваем редактирование файла командой «EOF».
    Использование SSH-ключей PuTTY

Шаг №3

Возвращаемся к программе PuTTY на Windows 10.

  1. Переходим в программу.
  2. Добавляем данные для подключения.
  3. Переходим во вкладку «Connection SSH Auth». Выбираем для аутентификации сохраненный файл «.ppk».
    Использование SSH-ключей PuTTY
  4. Активируем соединение при помощи нажатия «Open».
    Использование SSH-ключей

Работа с файлами

Программа позволяет делать операции с файлами. Чтобы закачать файл на сервер, находящийся под управлением Linux Ubuntu (с компьютера на ОС Windows), нужно действовать по приведенной ниже инструкции.

  1. Сохранить тестовый файл «mydoc.txt» на диске C: вместе с исполняемым файлом для безопасного копирования — pscp.exe.
  2. Открыть командную строку Windows: «Win+R → cmd → Enter».
  3. Зайти в папку с программой pscp.exe, для чего ввести команду: «cd /d c:Puttypscp.exe»*, где «c:Putty» — путь к файлу pscp.exe.
    * Путь к файлу «c:Puttypscp.exe» приведен в качестве примера.
  4. Далее можно приступать непосредственно к работе с файлом. Например, передать файл «mydoc.txt» на сервер «192.241.7.16»* со стандартным портом и пользователем Ubuntu74 в папку «root» можно командой:
    * IP-адрес «192.241.7.16» приведен только в качестве примера.

    pscp.exe mydoc.txt Ubuntu74@192.241.7.16:/root/

    Если для соединения используется нестандартный порт (например, 25), то команда примет вид:

    pscp.exe -P 25 mydoc.txt Ubuntu74@192.241.7.16:/root/
  5. Ввести пароль для Ubuntu74.

Скачать файл через PuTTY с сервера «192.241.7.16» в текущую папку можно с помощью команды:

pscp.exe Ubuntu@192.241.7.16:/root/mydoc.txt

Чтобы объединить файлы, нужно их загрузить на удаленную машину, а затем выполнить команду «sudo cat mydoc1.txt mydoc2.txt > mydoc.txt».

Распространенные ошибки

Проблемы с аутентификацией

PuTTY выдает при подключении сообщение: «Access denied». Это указывает на отказ в доступе, причиной которого являются ошибки при вводе логина или пароля.

Распространенные ошибки PuTTY

Если соединение с удаленным сервером происходит при помощи SSH-ключа, то PuTTY выдаст в диалоговом окне такие строки:

Permission denied (publickey).
PuTTY Error output

Причины ошибки

Ошибка «Access denied» связана с некорректной аутентификацией на основе ключей. Вызвать ее может отсутствие соответствующих прав доступа к файлам или невозможность подтвердить права владельца.

Как решить

  1. Проверить параметры аутентификации (логин и пароль).
  2. Проверить наличие и правильность имени SSH-ключа в PuTTY.
  3. Выполнить проверку содержимого кода SSH-ключа в «authorized_keys».

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

  1.   Перейти в папку «/etc/ssh/», а затем открыть файл «sshd_config».
  2. Далее необходимо найти строки «PasswordAuthentication: YES» и «PermiRootLogin: NO». Значения переменных требуется поменять на противоположные значения, т. е. «PasswordAuthentication: NO» и «PermiRootLogin: YES».
  3. После сохранения изменений необходимо перезапустить PuTTY и соединиться с удаленным сервером.

Подробнее о том, как создать удаленное соединение для разных дистрибутивов Linux, можно узнать из отдельных руководств:

  • Для Ubuntu;
  • Для CentOS;
  • Для Debian.

Ошибка подключения

Если программа PuTTY выдает ошибку «Unable to open connection to mysite.ru Host does not exist»*, то это свидетельствует о том, что ссылка на SSH-хост не соответствует сетевому адресу.
Домен mysite.ru приведён для примера.

При истекшем времени подключения или отказе в соединении PuTTY выдаст сообщения «Network error: Connection timed out» и «Network error: Connection refused» соответственно.

Причины ошибки

  • Отсутствие сетевого подключения. 
  • Неверно указан IP-адрес. 
  • Порт не поддерживается или его значение задано неверно. 
  • Блокировка исходящего подключения антивирусом или брандмауэром.

Как решить

Чтобы исправить ошибку, рекомендуется действовать по приведенной ниже инструкции.

  1. Проверить IP-адрес хоста.
  2. Убедиться, что порт не блокируется какой-либо программой. При необходимости внести его в список исключений.
  3. Проверить конфигурацию PuTTY во вкладках «Session» и «Connection».
  4. В список исключений антивируса или брандмауэра необходимо внести стандартный порт 22.

Подключение между двумя компьютерами в среде Linux осуществляется через SSH. Это сетевой протокол прикладного уровня, производящий удаленное управление ОС и туннелирование TCP-соединений. Его использование обусловлено простотой и надежностью, что позволяет выполнять безопасное подключение к серверу.

Соединение по SSH дает возможность выполнять любые команды на удаленном компьютере так, будто мы находимся прямо перед ним. Такой процесс обычно осуществляется через специальные утилиты, особенно если нужно получить доступ к Linux через Windows. Одной из программ таких является PuTTY, о которой речь пойдет в сегодняшней статье. Как ее настроить и подключиться через нее к серверу – читайте далее.

Где скачать PuTTY

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

Putty

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

Как установить putty на компьютер

После успешной установки в меню «Пуск» появится новый ярлык под названием PuTTY – с ним мы и будем работать в последующих разделах.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Как настроить PuTTY

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

Putty как настроить

Программа включает в себя 4 основных раздела:

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

Нам потребуется всего две вкладки: Session и SSH. Первым делом перейдем ко второй и убедимся, что версия протокола стоит в значении «2». Как правило, сейчас используется понятие SSH-2, так как первая версия практически не применяется из-за существенных недостатков, например, ошибки в схеме обеспечения безопасности.

Как настроить putty

Вернемся к разделу Session, где находятся основные параметры, которые потребуются нам для подключения к серверу по SSH. Давайте немного остановимся и поговорим о них:

  1. Первый блок включает в себя основные параметры, необходимые для подключения: окно ввода IP-адреса и порта, строку с выбором типа подключения.Как удаленно подключиться по ssh
  2. Следующий блок предназначен для создания пресетов, которые можно использовать для быстрого подключения к удаленному компьютеру. В строку «Saved Sessions» вводится название сессии, оно сохраняется с помощью кнопки «Save». Чтобы воспользоваться сохраненным пресетом, достаточно его загрузить с помощью кнопки «Load».Как подключиться удаленно через putty
  3. Последний блок – параметры закрытия окна при выходе. Доступные значения: always, never, only on clean exit.Как подключить по ssh через putty

Как видите, в настройках PuTTY нет ничего сложного. Теперь давайте перейдем к подключению по протоколу SSH.

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

Нам понадобится IP-адрес удаленного компьютера или сервера, к которому мы хотим подключиться. Последующие действия мы будем рассматривать на примере VDS от Timeweb – все шаги аналогичны любому хостингу, поэтому у вас не должно возникнуть никаких вопросов. Если же подключаетесь не к серверу, а к компьютеру, то можете сразу переходить ко второму пункту.

Подключаемся по SSH:

  1. Первым делом узнаем, какой используется адрес у VDS – для этого переходим в личный кабинет хостинга и заходим в список подключенных серверов. На Timeweb адрес можно узнать в специально отведенном для этого столбце.Как узнать ip vds на timeweb
  2. Переходим к PuTTY – запускаем программу и открываем раздел «Session». Там вводим адрес удаленного компьютера, указываем порт 22 и в нижней части приложения кликаем по кнопке «Open».Как удаленно подключиться к linux
  3. При успешном вводе данных перед нами отобразится консольное окно, в котором нужно ввести логин и пароль для подключения к серверу. Как правило, логин – root, а пароль отправляется хостингом в почтовом письме после установки ОС.Как удаленно подключиться к vds серверу
  4. Если логин и пароль были введены корректно, то мы увидим окно приветствия.Как подключиться к серверу через ssh

Таким образом мы подключились к ПК на операционной системе Linux. Здесь мы можем вводить команды и удаленно взаимодействовать с компьютером.

VDS Timeweb арендовать

Основные команды PuTTY

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

ls — предназначена для вывода файлов, содержит в себе набор команд:

  • ls -la — выводит различные документы и показывает права доступа, включая имя создателя и владельца;
  • ls -lha — также выводит файлы, но показывает размер файла в байтах;
  • ls -lha | less — используется для постраничного просмотра документов.

cd — необходима для перемещения между директориями, например, cd [путь] перенаправляет пользователя в указанную папку, cd../ перемещает в верхний уровень, cd ~ открывает корневую папку.

echo — позволяет перемещать текст в файл. Например, если нам требуется создать новый текстовый документ или добавить текст в уже созданный файл, достаточно ввести «echo Привет, мир! >> new.txt».

sudo — наиболее используемая команда, означающая «SuperUser Do». Она позволяет выполнять любые команды от имени администратора.

df — дает возможность увидеть доступное дисковое пространство в каждом из разделов операционной системы. Синтаксис: df [опции устройство].

mv — используются для переименования файлов и перемещения их в другую директорию. Синтаксис: mv [опции исходные_файлы куда].

rm — если нужно удалить файлы или директорию целиком, то используйте эту команду. Синтаксис: rm [опции файл(ы)].

cp — для копирования файлов и целых директорий воспользуйтесь этой строчкой. Синтаксис: cp [опции файл-источник файл-приемник].

mc — предназначена для запуска файлового менеджера Midnight Commander, который позволяет работать с файлами по FTP внутри консольного окна.

Как запустить midnight commander в linux

cat — наиболее популярная команда в Linux, позволяющая считывать данные из файлов и выводить их содержимое. Наиболее простой способ отображения содержимого в командной строке. Синтаксис: cat [опции файл].

mkdir — позволяет создать одну или несколько директорий с указанным именем. Например, mkdir mdir1 mdir2 mdir3 добавит сразу 3 директории.

chmod — изменяет права доступа к файлам и каталогам. Синтаксис: chmod [ключи установка_прав имя_файла].

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

touch — используется для создания любого типа файлов: от пустого txt до пустого zip. Синтаксис: touch [имя файла].

man и —help — нужны для того, чтобы узнать информацию о команде и о том, как ее можно использовать (man). Например, «man cat» покажет доступную информацию о команде cat. Ввод имени команды и аргумента помогает показать, каким образом можно использовать команду, например, cd –help.

locate — предназначена для поиска файла в системе Linux.

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

Как подключиться к серверу без пароля

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

  1. Для выполнения данной операции нам потребуется отдельная утилита под названием «PuTTYgen». Она автоматически устанавливается вместе с PuTTY, поэтому зайдем в меню «Пуск» и запустим ее оттуда.Как включить вход без пароля в putty
  2. Далее перемещаемся в меню «Key» и устанавливаем значение «SSH-2 RSA key». После этого кликаем по кнопке «Generate key pair».Как сгенерировать ssh-ключ
  3. Как только ключ будет сгенерирован, сохраним его в публичном и приватном варианте.Как создать ssh-ключ в putty
  4. Теперь перемещаемся в PuTTY и открываем раздел «Auth» — в него добавляем приватный ключ.Как добавить приватный ключ в putty
  5. Открываем раздел «Session» и сохраняем в нем пресет для подключения, как мы делали ранее. Затем подключаемся к серверу по своему адресу.Как получить доступ к серверу по ssh
  6. Осталось подключиться к серверу и отправить на него открытый ключ. Для этого вставляем его в конец файла /root/.ssh/authorized_keys. Ключ мы можем скопировать напрямую из утилиты, в которой он был сгенерирован.Как отправить ssh-ключ на сервер

Готово! Теперь при повторном входе на сервер авторизация не потребуется. Главное – сохранить настройки сессии, чтобы не вводить ключ каждый раз.

Сегодня мы разобрали одну из важнейших тем, с которой сталкивается каждый, кто начинает изучать администрирование серверов. Использование PuTTY позволяет подключаться по протоколу SSH и удаленно работать с компьютером на операционной системе Linux. Такой способ позволяет легко администрировать устройство и всегда быть в курсе возникающих проблем. Надеемся, что наша статья была полезной, и у вас не осталось вопросов. Спасибо за внимание!

PuTTY is a free (MIT-licensed) Windows Telnet and SSH client. This manual documents PuTTY, and its companion utilities PSCP, PSFTP, Plink, Pageant and PuTTYgen.

Note to Unix users: this manual currently primarily documents the Windows versions of the PuTTY utilities. Some options are therefore mentioned that are absent from the Unix version; the Unix version has features not described here; and the pterm and command-line puttygen and pageant utilities are not described at all. The only Unix-specific documentation that currently exists is the man pages.

This manual is copyright 1997-2019 Simon Tatham. All rights reserved. You may distribute this documentation under the MIT licence. See appendix C for the licence text in full.

  • Глава 1: Introduction to PuTTY
    • 1.1 What are SSH, Telnet and Rlogin?
    • 1.2 How do SSH, Telnet and Rlogin differ?
  • Глава 2: Getting started with PuTTY
    • 2.1 Starting a session
    • 2.2 Verifying the host key (SSH only)
    • 2.3 Logging in
    • 2.4 After logging in
    • 2.5 Logging out
  • Глава 3: Using PuTTY
    • 3.1 During your session
    • 3.2 Creating a log file of your session
    • 3.3 Altering your character set configuration
    • 3.4 Using X11 forwarding in SSH
    • 3.5 Using port forwarding in SSH
    • 3.6 Making raw TCP connections
    • 3.7 Connecting to a local serial line
    • 3.8 The PuTTY command line
  • Глава 4: Configuring PuTTY
    • 4.1 The Session panel
    • 4.2 The Logging panel
    • 4.3 The Terminal panel
    • 4.4 The Keyboard panel
    • 4.5 The Bell panel
    • 4.6 The Features panel
    • 4.7 The Window panel
    • 4.8 The Appearance panel
    • 4.9 The Behaviour panel
    • 4.10 The Translation panel
    • 4.11 The Selection panel
    • 4.12 The Copy panel
    • 4.13 The Colours panel
    • 4.14 The Connection panel
    • 4.15 The Data panel
    • 4.16 The Proxy panel
    • 4.17 The Telnet panel
    • 4.18 The Rlogin panel
    • 4.19 The SSH panel
    • 4.20 The Kex panel
    • 4.21 The Host Keys panel
    • 4.22 The Cipher panel
    • 4.23 The Auth panel
    • 4.24 The GSSAPI panel
    • 4.25 The TTY panel
    • 4.26 The X11 panel
    • 4.27 The Tunnels panel
    • 4.28 The Bugs and More Bugs panels
    • 4.29 The Serial panel
    • 4.30 Storing configuration in a file
  • Глава 5: Using PSCP to transfer files securely
    • 5.1 Starting PSCP
    • 5.2 PSCP Usage
  • Глава 6: Using PSFTP to transfer files securely
    • 6.1 Starting PSFTP
    • 6.2 Running PSFTP
    • 6.3 Using public key authentication with PSFTP
  • Глава 7: Using the command-line connection tool Plink
    • 7.1 Starting Plink
    • 7.2 Using Plink
    • 7.3 Using Plink in batch files and scripts
    • 7.4 Using Plink with CVS
    • 7.5 Using Plink with WinCVS
  • Глава 8: Using public keys for SSH authentication
    • 8.1 Public key authentication — an introduction
    • 8.2 Using PuTTYgen, the PuTTY key generator
    • 8.3 Getting ready for public key authentication
  • Глава 9: Using Pageant for authentication
    • 9.1 Getting started with Pageant
    • 9.2 The Pageant main window
    • 9.3 The Pageant command line
    • 9.4 Using agent forwarding
    • 9.5 Security considerations
  • Глава 10: Common error messages
    • 10.1 «The server’s host key is not cached in the registry»
    • 10.2 «WARNING — POTENTIAL SECURITY BREACH!»
    • 10.3 «SSH protocol version 2 required by our configuration but remote only provides (old, insecure) SSH-1»
    • 10.4 «The first cipher supported by the server is … below the configured warning threshold»
    • 10.5 «Remote side sent disconnect message type 2 (protocol error): «Too many authentication failures for root»»
    • 10.6 «Out of memory»
    • 10.7 «Internal error», «Internal fault», «Assertion failed»
    • 10.8 «Unable to use key file», «Couldn’t load private key», «Couldn’t load this key»
    • 10.9 «Server refused our key», «Server refused our public key», «Key refused»
    • 10.10 «Access denied», «Authentication refused»
    • 10.11 «No supported authentication methods available»
    • 10.12 «Incorrect MAC received on packet» or «Incorrect CRC received on packet»
    • 10.13 «Incoming packet was garbled on decryption»
    • 10.14 «PuTTY X11 proxy: various errors»
    • 10.15 «Network error: Software caused connection abort»
    • 10.16 «Network error: Connection reset by peer»
    • 10.17 «Network error: Connection refused»
    • 10.18 «Network error: Connection timed out»
    • 10.19 «Network error: Cannot assign requested address»
  • Приложение A: PuTTY FAQ
    • A.1 Introduction
    • A.2 Features supported in PuTTY
    • A.3 Ports to other operating systems
    • A.4 Embedding PuTTY in other programs
    • A.5 Details of PuTTY’s operation
    • A.6 HOWTO questions
    • A.7 Troubleshooting
    • A.8 Security questions
    • A.9 Administrative questions
    • A.10 Miscellaneous questions
  • Приложение B: Feedback and bug reporting
    • B.1 General guidelines
    • B.2 Reporting bugs
    • B.3 Reporting security vulnerabilities
    • B.4 Requesting extra features
    • B.5 Requesting features that have already been requested
    • B.6 Support requests
    • B.7 Web server administration
    • B.8 Asking permission for things
    • B.9 Mirroring the PuTTY web site
    • B.10 Praise and compliments
    • B.11 E-mail address
  • Приложение C: PuTTY Licence
  • Приложение D: PuTTY hacking guide
    • D.1 Cross-OS portability
    • D.2 Multiple backends treated equally
    • D.3 Multiple sessions per process on some platforms
    • D.4 C, not C++
    • D.5 Security-conscious coding
    • D.6 Independence of specific compiler
    • D.7 Small code size
    • D.8 Single-threaded code
    • D.9 Keystrokes sent to the server wherever possible
    • D.10 640×480 friendliness in configuration panels
    • D.11 Automatically generated Makefiles
    • D.12 Coroutines in the SSH code
    • D.13 Single compilation of each source file
    • D.14 Do as we say, not as we do
  • Приложение E: PuTTY download keys and signatures
    • E.1 Public keys
    • E.2 Security details
    • E.3 Key rollover
  • Приложение F: SSH-2 names specified for PuTTY
    • F.1 Connection protocol channel request names
    • F.2 Key exchange method names
    • F.3 Encryption algorithm names

Что такое SSH

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

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

Что такое PuTTY

PuTTY – это бесплатная программа под Windows для работы по SSH. Она позволяет подключиться к удаленному серверу или компьютеру. Скачать PuTTY можно с официального сайта. Для ознакомления рекомендуем скачивать портативную версию 32 или 64 бита без необходимости установки.

Скачивание PuTTY

Скачивание PuTTY

Подключение по SSH через PuTTy

  1. В строку «Host Name (or IP address)» введите сервер и нажмите «Open».
  2. В открывшейся консоли, введите имя пользователя, нажмите «Enter».
  3. Введите пароль, нажмите «Enter».

Работа с PuTTY

Работа с PuTTY

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

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

Использование SSH клиента PuTTy

Общие команды терминала

Просмотр процессов (top)

С помощью команды top можно посмотреть список активных процессов, а также использование процессора и оперативной памяти сервера.

Просмотр процессов через top

Завершение процессов (kill и killall)

Бывают ситуации, когда какой-либо процесс зависает и его нужно завершить. В команде top можно посмотреть идентификатор процесса и завершить его с помощью kill 100, где 100 — это идентификатор процесса. Иногда процесс может продолжить выполняться, в данном случае можно выполнить принудительное завершение с помощью kill -9 100.

Если процессов много, можно завершить их по имени с помощью команды killall. Например, для завершения всех PHP процессов, которые выполняются при вызове сайта в браузере, а также консоли, можно вызывать killall php lsphp, если это не помогло, выполните принудительное завершение killall -9 php lsphp.

Очистка консоли (clear)

С помощью команды clear можно очистить консоль.

Просмотр процессов через top

Просмотр истории (history)

С помощью команды history можно посмотреть последние выполненные команды.

[~]$ history
  1  ls
  2  curl -o 10MB https://speedtest.selectel.ru/10MB
  3  ls
  4  clear
  5  history

Команды для работы с файлами и каталогами

Список файлов и каталогов (ls)

С помощью команды ls можно получить список файлов и каталогов в текущей директории.

[~]$ ls
Maildir  application_backups  domains  imap  public_html

Если передать параметры l и h, то можно увидеть детальную информацию по владельцу, правам и размер файлов.

[~]$ ls -lh
total 20K
drwxrwx--- 5 akkyoh mail   4.0K May 16  2019 Maildir
drwx------ 2 akkyoh akkyoh 4.0K Oct 12  2021 application_backups
drwx--x--x 3 akkyoh akkyoh 4.0K Nov  2  2021 domains
drwxrwx--- 3 akkyoh mail   4.0K Aug 20  2017 imap
-rw-rw-r-- 1 akkyoh akkyoh   18 Nov 28 15:33 phpinfo.php
lrwxrwxrwx 1 akkyoh akkyoh   39 Aug 20  2017 public_html -> ./domains/phoenix.p-host.in/public_html

Для просмотра каталога, отличного от текущего, можно передать аргумент в виде полного или относительного пути.

[~]$ ls domains
phoenix.p-host.in

Размер файлов и каталогов (du)

Команда du выполняет подсчет размера файлов и каталогов.

[~]$ du *
4       Maildir/tmp
8       Maildir/new
4       Maildir/cur
20      Maildir
4       application_backups
17572   domains
300     imap
4       phpinfo.php
0       public_html

Пример выше немного сокращен (убран вывод размера вложенных каталогов), однако простой вызов du * не очень удобен, так как размер выводится в байтах, выводится размер всех подкаталогов. Удобнее передать параметры s для запрета вывода размера каждого подкаталога, h для получения размера каталогов в человеко-понятном виде (мегабайтах и гигабайтах), а также c для получения общего размера данных.

[~]$ du -hsc *
20K     Maildir
4.0K    application_backups
18M     domains
300K    imap
4.0K    phpinfo.php
0       public_html
18M     total

Вместо * (все каталоги и файлы в текущей директории) можно передавать полный или относительный путь для подсчета размера одной директории.

[~]$ du -hs domains
18M     domains

Просмотр содержимого файла (cat)

С помощью команды cat можно посмотреть любой файл.

[~]$ cat phpinfo.php
<?php
phpinfo();

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

[~]$ cat phpinfo.php | less
<?php
phpinfo();

Создание каталога (mkdir)

Для создания каталога нужно использовать команду mkdir.

[~]$ ls
Maildir  application_backups  domains  imap  phpinfo.php  public_html
[~]$ mkdir files
[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html

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

[~]$ mkdir -p files/photos/2022
[~]$ ls files
photos
[~]$ ls files/photos
2022

Переход между каталогами (cd).

Для перемещения по каталогам нужно использовать команду cd. Можно использовать как полные, так и относительные пути. Передача ~ приведет к переходу в домашний каталог пользователя, передача .. направит Вас в каталог на уровень ниже. С помощью команды pwd можно посмотреть полный путь каталога, в котором Вы находитесь.

[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ cd domains
[domains]$ ls
phoenix.p-host.in
[domains]$ cd ~
[~]$ cd domains/phoenix.p-host.in
[phoenix.p-host.in]$ ls
logs  private_html  public_ftp  public_html  stats
[phoenix.p-host.in]$ pwd
/home/akkyoh/domains/phoenix.p-host.in
[phoenix.p-host.in]$ cd ~
[~]$ cd /home/akkyoh/domains/phoenix.p-host.in
[phoenix.p-host.in]$ ls
logs  private_html  public_ftp  public_html  stats
[phoenix.p-host.in]$ cd ../
[domains]$ ls
phoenix.p-host.in

Создание файлов (touch)

С помощью команды touch можно создать пустой файл.

[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ touch empty.txt
[~]$ ls
Maildir  application_backups  domains  empty.txt  files  imap  phpinfo.php  public_html

Удаление файлов и каталогов (rm)

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

[~]$ ls
Maildir  application_backups  domains  empty.txt  files  imap  phpinfo.php  public_html
[~]$ ls files/photos
2022
[~]$ rm empty.txt
[~]$ rm -r files/photos/2022
[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ ls files/photos

Копирование файлов и каталогов (cp, scp, rsync)

Для копирования элементов можно использовать cp, scp и rsync, но каждая из этих команд обычно используется для своих целей. cp используется для копирования файлов и каталогов в пределах одного сервера (команды scp и rsync можно использовать идентично при копировании данных в пределах одного сервера).

[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ ls files
photos
[~]$ cp -r domains files
[~]$ cp phpinfo.php files
[~]$ ls files
domains  photos  phpinfo.php

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

[~]$ rsync phpinfo.php user@lite.host:/home/user
The authenticity of host 'lite.host (127.0.0.1)' can't be established.
RSA key fingerprint is c1:4a:72:68:fe:7a:e0:b1:95:3d:78:78:01:27:1f:13.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'lite.host,127.0.0.1' (RSA) to the list of known hosts.
user@lite.host's password:

Сначала нужно подтвердить соединение с сервером путем ввода yes (запрашивается только один раз при первом подключении) и нажатия Enter, далее вводим пароль и передача будет завершена. scp для передачи файлов между серверами работает идентично.

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

[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ rm phpinfo.php
[~]$ ls
Maildir  application_backups  domains  files  imap  public_html
[~]$ rsync user@lite.host:/home/user/phpinfo.php .
user@lite.host's password:
[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html

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

Перемещение и переименование (mv)

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

[~]$ ls
Maildir  application_backups  domains  files  imap  phpinfo.php  public_html
[~]$ mv phpinfo.php index.php
[~]$ mv files test.lite.host
[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host
[~]$ mv index.php domains
[~]$ mv test.lite.host domains
[~]$ ls
Maildir  application_backups  domains  imap  public_html
[~]$ ls domains
index.php  phoenix.p-host.in  test.lite.host

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

[domains]$ ls
index.php  phoenix.p-host.in  test.lite.host
[domains]$ mv index.php test.lite.host ..
[domains]$ cd ..
[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host

В этом примере мы находились в каталоге domains, откуда переместили файл index.php и каталог test.lite.host в подкаталог ниже ...

Работа с правами доступа (chmod)

Права доступа — это тема отдельной статьи, в рамках вводной статьи мы ограничимся тем, что в большинстве случаев для работы сайтов на каталоги должны быть установлены права 755, а на файлы 644.

Просмотреть текущие права каталога или файла можно с помощью команды stat. Изменить права можно с помощью команды chmod. В примере ниже мы установим права 644 на файл index.php.

[~]$ stat index.php
  File: `index.php'
  Size: 18              Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d      Inode: 146026      Links: 1
Access: (0600/-rw-------)  Uid: (  502/  akkyoh)   Gid: (  504/  akkyoh)
Access: 2022-11-28 16:26:05.204491581 +0300
Modify: 2022-11-28 16:26:05.204491581 +0300
Change: 2022-11-28 16:45:46.942786977 +0300
[~]$ chmod 644 index.php
[~]$ stat index.php
  File: `index.php'
  Size: 18              Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d      Inode: 146026      Links: 1
Access: (0644/-rw-r--r--)  Uid: (  502/  akkyoh)   Gid: (  504/  akkyoh)
Access: 2022-11-28 16:26:05.204491581 +0300
Modify: 2022-11-28 16:26:05.204491581 +0300
Change: 2022-11-28 16:46:15.808402631 +0300

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

[~]$ ls -l
total 24
drwxrwx--- 5 akkyoh mail   4096 May 16  2019 Maildir
drwx------ 2 akkyoh akkyoh 4096 Oct 12  2021 application_backups
drwx--x--x 3 akkyoh akkyoh 4096 Nov 28 16:41 domains
drwxrwx--- 3 akkyoh mail   4096 Aug 20  2017 imap
-rw-r--r-- 1 akkyoh akkyoh   18 Nov 28 16:26 index.php
lrwxrwxrwx 1 akkyoh akkyoh   39 Aug 20  2017 public_html -> ./domains/phoenix.p-host.in/public_html
drwx------ 4 akkyoh akkyoh 4096 Nov 28 16:19 test.lite.host

Иногда нужно поменять права на файлы и каталоги массово, это удобно делать с помощью комбинации команд find и chmod. Приведенные ниже команды установят 644 на файлы и 755 на каталоги для всех элементов внутри текущего каталога (включая подкаталоги).

find . -type f -exec chmod 644 {} ;
find . -type d -exec chmod 755 {} ;

Редактирование файлов (vi и nano)

Основными редакторами в операционных системах Linux являются vi и nano. Для новичков будет удобнее nano, так как он очень похож на обычные редакторы в Windows.

Для редактирования файла в nano достаточно первым аргументом передать название файла, например, nano index.php. Далее, нужно внести нужные изменения, для выхода нужно нажать Ctrl + X и подтвердить сохранение файла путем ввода Y и нажатия Enter.

Изменение файла через nano

Открыть редактор vi можно по аналогии vi index.php. Для ввода текста нужно нажать кнопку i. Когда будут внесены изменения, нужно выйти из режима редактора с помощью кнопки Esc. После введите :, слева внизу появится строка ввода, введите туда wq и нажмите Enter для сохранения изменений и выхода из редактора.

Изменение файла через vi

Работа с архивами

Команда для работы с архивами зависит от типа архива, рассмотрим наиболее популярные — zip, tar.gz, tar и gz.

Для создания ZIP архива нужно использовать команду zip, рекомендуем передавать параметр r для запаковки данных в подкаталогах, первым аргументом будет название архива, последующие — файлы и каталоги, которые мы добавляем в архив.

[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host
[~]$ zip -r test.zip index.php test.lite.host
  adding: index.php (stored 0%)
  adding: test.lite.host/ (stored 0%)
  adding: test.lite.host/photos/ (stored 0%)
  adding: test.lite.host/phpinfo.php (stored 0%)

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

[~]$ unzip test.zip
Archive:  test.zip
 extracting: index.php
   creating: test.lite.host/
   creating: test.lite.host/photos/
 extracting: test.lite.host/phpinfo.php

Архивы GZ используются для сжатия одиночных файлов (это может быть простой PHP, SQL файл, а также TAR архив со множеством вложенных файлов). Для сжатия файлов нужно использовать команду gzip, а для распаковки gunzip. Обратите внимание, что при вызове команд исходные файлы удаляются.

[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host
[~]$ gzip index.php
[~]$ ls
Maildir  application_backups  domains  imap  index.php.gz  public_html  test.lite.host
[~]$ gunzip index.php.gz
[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host

Для запаковки файлов и каталогов в архив TAR.GZ нужно использовать команду tar со специальным набором параметров. Для запаковки мы передаем параметры c (создать архив), z (использовать gzip сжатие), f (указываем имя архива). При распаковке параметр c заменяется на x (извлечь архив). Первым аргументом передаем название архива, последующие — файлы и каталоги для запаковки. Также можно передать параметр v для отображения процесса запаковки.

[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host
[~]$ tar -czvf test.tar.gz index.php test.lite.host
index.php
test.lite.host/
test.lite.host/photos/
test.lite.host/phpinfo.php
[~]$ ls
Maildir  application_backups  domains  imap  index.php  public_html  test.lite.host  test.tar.gz
[~]$ tar -xzvf test.tar.gz
index.php
test.lite.host/
test.lite.host/photos/
test.lite.host/phpinfo.php

При работе с архивами TAR (без сжатия), нужно опустить параметр z, все остальное идентично.

Скачивание файлов (wget и curl)

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

[~]$ ls
Maildir  application_backups  domains  imap  public_html 
[~]$ wget https://speedtest.selectel.ru/10MB
--2022-11-28 18:01:36--  https://speedtest.selectel.ru/10MB
Resolving speedtest.selectel.ru... 2a00:ab00:600:1::5, 188.93.16.211
Connecting to speedtest.selectel.ru|2a00:ab00:600:1::5|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10485760 (10M) [application/octet-stream]
Saving to: `10MB'

100%[==================================================================================================================>] 10,485,760  10.8M/s   in 0.9s

2022-11-28 18:01:37 (10.8 MB/s) - `10MB' saved [10485760/10485760]

[~]$ ls
10MB  Maildir  application_backups  domains  imap  public_html

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

[~]$ ls
Maildir  application_backups  domains  imap  public_html
[~]$ curl -o 10MB https://speedtest.selectel.ru/10MB
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10.0M  100 10.0M    0     0  9412k      0  0:00:01  0:00:01 --:--:-- 10.8M
[~]$ ls
10MB  Maildir  application_backups  domains  imap  public_html

Установка PuTTy

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

Для того, чтобы начать работу с PuTTy, скачайте её с официального сайта здесь или с нашего сайта. Документацию по программе Вы можете найти здесь (только на англ.), FAQ по ней здесь.

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

Тех. информация

Для начала работы запустите файл putty.exe. Перед Вами появится окно, представленное на рисунке ниже.

В поле Host Name or IP address) вводите имя сервера или его ip, которые Вы узнали в разделе «Тех. информация» (например, robin.beget.com или pixel.beget.com). Порт оставляйте по умолчанию 22. В поле Saved Sessions введите любое имя сессии (коннекта), например my_session, и нажмите Save. После этого нажмите Open и Вы увидите такое окно.

В поле login as введите имя Вашего пользователя (совпадает с логином аккаунта для доступа в ПУА), нажмите Enter. После чего появится надпись Password. Вводите Ваш пароль для доступа по SSH (также совпадает с паролем от ПУА). Не пугайтесь — во время ввода пароля на экране ничего не отображается (ни звёздочек, ни чего-либо подобного). После того, как Вы закончили вводить пароль, нажмите Enter.

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

Также заметим, что сочетание Ctrl+V и Ctrl+C в PuTTy не работают. В буфер обмена копируётся всё, что выделено с помощью мыши, а вставка осуществляется либо правой кнопкой мыши, либо сочетанием клавиш SHIFT+INSERT.

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

В панели управления на странице VPS можно найти строку вида «ssh root@45.67.56.72»:

Подключение по SSH

Для подключения через Putty эту строку нужно разбить на части. В поле “Host Name (or IP-address)” мы записываем только IP-адрес сервера, который идет после символа @.

Далее нажимаем «Open». В открывшемся окне нажимаем «Да».

После этого в командной строке нас спросят: сначала логин — вводим root, затем пароль от пользователя root.

Полезные команды

Рассказать о всех командах Unix будет сложно, поэтому напишем лишь несколько полезных команд:

man [имя команды] — выдаст подробную информацию по команде, например: man mv
Для выхода из man, т.е. из руководства по команде, нажмите q (Quit — Выход). 
[имя команды] —help — также позволит посмотреть описание команды.

ls — вывести список файлов;
ls -la — покажет все файлы (включая скрытые), размер файлов, владельца и группу владельца, права на них, дату последнего изменения;
ls -lha — то же, что предыдущая команда, только размер файлов будет показан в удобном виде;
ls -lha | less — позволит просматривать файлы постранично (если их много);

cd [имя директории] — переход в выбранную директорию;
cd ../ — переход на директорию выше;
cd ~ — переход в корневую директорию;

mv — переименовать и/или переместить;

rm — удалить;

cp — копировать;

> — очистка файла. Например, можно применить к файлам логов ( > access.log, > error.log, > combined.log);

mc — запуск Midnight Commander — что-то вроде Norton Commander, в котором удобно работать с файлами, а также возможно работать с ними по sftp (ftp внутри ssh);

chmod — установка прав на файл или директорию;

cat -объединяет файл или несколько файлов, либо ввод со стандартного устройства ввода и выводит результат на стандартное устройство вывода;
cat [имя файла] — выведет на экран содержимое файла;
cat [имя файла] | grep [искомая строка] — выведет на экран строки файла, включающие искомую строку;

mkdir [имя директории] — создание директории (папки);

Удачной работы! Если возникнут вопросы — напишите нам, пожалуйста, тикет из Панели управления аккаунта, раздел «Помощь и поддержка».

This page is about the PuTTY SSH client on Windows. For information about PuTTY on Mac, see the PuTTY Mac page. For PuTTY on Linux, see the PuTTY Linux page.

This page explains how to use the PuTTY terminal window on Windows. How to configure PuTTY, how to create and save profiles, and what configuration options to change. Advanced topics, such as configuring public key authentication, are also addressed.

quantum-safe secure file transfer, quantum-safe tunneling, quantum-safe secure remote access

Getting and installing

You can download a copy of the software for the Windows platform from the download page. Detailed installation instructions are provided on the installation instructions page.

Running PuTTY and connecting to a server

If you selected to create a desktop icon during installation, you can start the software simply by (double-)clicking on the icon. Otherwise, open the software from the Windows Start menu.

When the software starts, a window titled PuTTY Configuration should open. This window has a configuration pane on the left, a Host Name (or IP address) field and other options in the middle, and a pane for saving session profiles in the lower right area.

For simple use, all you need to do is to enter the domain name or IP address of the host you want to connect to in the Host Name field and click Open (or press Enter). A domain name looks like students.example.edu. An IP address looks something like 78.99.129.32.

What if you don’t have a server

If you don’t have a server to connect to, you can try Tectia SSH on Windows or OpenSSH on Linux.

Security alert dialog box

When you connect to a server for the first time, you are likely to see a PuTTY Security Alert dialog about the server’s host key not being cached in the registry. This is normal when you are connecting to a server for the first time. If you ever get this with a server, it could mean that someone is trying to attack your connection and steal your password using a man-in-the-middle attack.

But as said, the first time you connect, this is normal, and you should just click Yes. If you want to be fancy, you can check the displayed key fingerprint and make sure it is the same that is used by the server. In real life, almost nobody does that. It is more secure to use a proper SSH key management solution anyway.

Security Alert Dialog about unknown server host key

Terminal window and login credentials

After the security alert, you should get a terminal window. By default, this is a black, very bland window. It should first ask for your user name and then password. After these, you should get a command line on the server.

You can then type into the terminal Window. You are now connected to the server, and anything you type in the Window is sent to the server. Server’s responses are displayed in the Window. You can run any text-based applications on the server using the window. The session terminates when you exit the command-line shell on the server (typically by typing exit) to the command line or pressing Control-D. Alternatively, you can forcibly terminate the session by closing the terminal window.

PuTTY SSH terminal window

Configuration options and saved profiles

The initial configuration window contains a lot of options. Most of them are not needed in normal use.

PuTTY Windows configuration and connection screen with profile save option

Port

The port field specifies the TCP/IP port to connect. For SSH, this is the port on which the SSH server runs. Normally it can be left to 22. If for some reason you need to connect to a different port number, just change the value. Usually only developers would change this to a different value, but some enterprises are known to run SSH servers in non-standard ports or to run multiple SSH servers on the same server at different ports.

Connection type

The Connection type selection almost never needs to be touched. Just leave it as SSH. SSH is a secure, encrypted communications protocol designed to ensure your password and data are maximally protected.

Raw connections might be used for developers to connect a TCP/IP socket for testing (e.g., when developing a network application that listens on a TCP/IP port).

Telnet is an old legacy protocol that is almost never used, unless you manage equipment that is more than 10 years old. Telnet is not secure. Passwords are sent in the clear on the network. Attackers can easily eavesdrop on plaintext communications and steal user names and passwords. Rlogin is another legacy protocol with similar woes.

Serial refers to a serial port, another legacy communications mechanism for connecting computers to peripheral devices. Most PCs these days no longer have serial ports, but they are still sometimes used for controlling physical equipment, instrumentation, machinery, or communications devices. Another use for serial ports is debugging operating systems or embedded software.

Load, save, or delete a stored session

This section allows you to save your settings as named profiles. Just write the name of your new profile in the Saved Sessions box and click Save to create a new profile. The host name and your other settings are saved in the profile.

Saved profiles appear in the larger box below it. Initially it will contain just Default Settings. Profiles you save will be included there. Select a profile and click Load to use a previously saved profile. Select a profile and click Delete to delete a profile that is no longer needed.

Close window on exit

Finally, the Close window on exit setting specifies whether the terminal window should be automatically closed when the connection is terminated. There is rarely any need to change it from the default value of Only on clean exit.

Left pane configuration options

More options can be found in the left pane titled Category. Select a category from the tree, and the right pane will change to show configuration options for that category. The initally shown options belong to the Session category.

Only the more relevant options are described here. There are lots of options, and most of them would never be used.

Terminal options

The options in this category influence terminal emulation and keyboard mappings. They are largely self-explanatory, and will not be covered here. Very few people need to touch these. Some people may change how the bell character is handled; people using exotic operating systems might change what is sent by the backspace or delete character.

Window options

The window options influence the appearance and behavior of the terminal window. It can also specify how characters are translated on output and to select fonts and colors for the window.

Connection options

Of the connection options, the Data options can be useful. The Auto-login user name specifies the user to log in as, so that the name will not have to be entered every time. The Proxy options are rarely useful for home users, but may be needed in enterprises that do not allow outgoing Internet connections without using a SOCKS proxy or other similar mechanisms. Don’t worry if you don’t know what a SOCKS proxy is; just stay out of that section.

The Telnet, Rlogin, and Serial categories only contain options for those protocols, and very few people would ever use them.

The SSH options, however, are important and useful for some people. The ordinary user or student need not worry about them. But if you want to use public key authentication, then they are needed. Note that you need to open the SSH options subtree by clicking on the small [+] symbol. Otherwise you won’t see all the options.

Key exchange, host keys, and cipher options

You almost never want to touch the Kex (key exchange), Host Keys, or Cipher options. They all have reasonable default values, and most people don’t know enough about cryptography to select any better values. Thus just skip these options, unless you know what you are doing.

Authentication options — public key authentication

The Auth subtree contains some options that may be useful. When Auth is clicked, it shows a pane titled Options controlling SSH authentication. To enable public key authentication, you just generate an SSH key and then click the Browse button in the Authentication parameters box in the middle right area of this configuration pane. For more information, see also configuring public key authentication for PuTTY. Advanced users may also want to check the Allow agent forwarding checkbox to use key-based single sign-on.

Most users have no need to generate SSH keys and need not know what public key authentication is. System administrators, however, should learn it and should also familiarize themselves with SSH key management and ensure their organization implements proper provisioning and termination processes and audits for SSH keys.

PuTTY authentication public key options

Active Directory authentication (GSSAPI / Kerberos)

One of the interesting features of PuTTY is support for Active Directory single sign-on. Technically it uses the Kerberos protocol via a programming interface called GSSAPI. In the SSH protocol, the mechanism is called GSSAPI authentication. Enterprise users using Kerberos authentication (e.g., via the Centrify or Quest Authentication Services aka Vintela) may want to take advantage of the single-sign-on capability. Other users don’t need to care. The settings for GSSAPI authentication can be found under the SSH / Auth section. Note that you must again expand the Auth section by clicking on the [+] symbol to see the GSSAPI options.

X11 forwarding options

X11 is a protocol and system for running graphical applications on Unix and Linux. It supports running graphical applications remotely over a network out-of-the-box.

PuTTY does not implement an X11 server (the display side), but it can work with some other product that implements X server functionality on Windows. A popular free alternative is XMing.

To use an X11 server, you need to check the Enable X11 forwarding box and enter localhost:0.0 in the X display location box. The other settings need not be touched. Detailed instructions can be found, e.g., here.

X11 forwarding options for use with Xming

Tunneling options

The final category of configuration options we’ll discuss is Tunnels. They are used for configuring SSH tunneling, also called SSH port forwarding. This panel can be used for defining forwardings for the connection. Forwardings are saved in the profile.

To add a local forwarding (i.e., TCP/IP port on local machine forwarded to a port on the remote machine or to a machine reachable from the remote machine), write the source port in the Source port field, the destination host and port (e.g., www.dest.com:80) in the Destination field, and select Local. The click Add.

To add a remote forwarding (i.e., a TCP/IP port on the remote machine forwarded to a port on the local machine or to a machine reachable from the local machine), specify Source port on the destination machine and Destination that is reachable from the local machine (your desktop).

Normally you need not check Local ports accept connections from other hosts or the same for remote ports. However, if the connection to the forwarded port is from a over a network instead of from localhost, then you need to check these. There is a small security risk, but usually it is not a problem in the cases where SSH tunneling is used. However you should understand that anyone who can connect to the respective computer can then connect to the forwarded port. In some cases port forwarding can be used to traverse firewalls. We suggest you read our article on the risks of SSH port forwarding.

11 августа, 2014 12:25 пп
4 725 views
| Комментариев нет

VPS

1: Загрузка PuTTY

Пользователям Windows для входа на сервер понадобится установить SSH-клиент PuTTY.

Скачать PuTTY можно с этого сайта. Выберите Windows Installer.

 2: Настройки экрана конфигурации

По завершении загрузки и установки PuTTY запустите программу; это выведет экран конфигурации, куда нужно внести всего пару изменений.

  • В поле «Host Name (or IP address)» укажите IP-адрес сервера (его можно найти в приветственном письме), убедитесь, что в настройках указаны порт 22 и тип соединения SSH.
  • Кроме того, нужно открыть боковую панель и выбрать пункт «2 only» как предпочтительную версию протокола SSH.
  • Когда все настройки внесены, можно сохранить их на будущее, нажав на Session в боковой панели и введя название в поле Saved Sessions. Затем нажмите Save.

3: Подключение к серверу

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

Tags: PuTTY, VPS, Windows

В последних билдах Windows 10 появился встроенный SSH сервер и клиент на базе OpenSSH. Это значит, что теперь вы можете удаленно подключаться к компьютеру Windows 10/11 (Windows Server 2019/2022) с помощью любого SSH клиента, как к Linux. В этой статье мы покажем, как настроить OpenSSH в Windows 10 и подключится к нему с помощью putty или любого другого SSH клиента.

Убедитесь, что ваша версия Windows 10 1809 или выше. Проще всего это сделать, выполнив команду:

winver

Совет. Если у вас более старая версия Windows 10 вы можете обновить ее через Windows Update или с помощью ISO образа с более новой версией Windows 10 (можно создать его с помощью Media Creation Tool). Если вы не хотите обновлять Windows 10, вы можете вручную установить порт OpenSSH для Windows с GitHub — Win32-OpenSSH (https://github.com/PowerShell/Win32-OpenSSH).

Вы можете включить OpenSSH сервера в Windows 10 через панель Параметры:

  1. Перейдите в Settings -> Apps -> Optional features; установка дополнительных компонентов в windows 10
  2. Нажмите Add a feature, выберите OpenSSH Server и нажмите Install; установка openssh сервера в windows 10 и 11

Также вы можете установить sshd сервер в Windows с помощью PowerShell:

Add-WindowsCapability -Online -Name OpenSSH.Server*

установка OpenSSH.Server в Windows с помощью OpenSSH.Server

Или с помощью DISM:

dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0

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

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Server*'

Name : OpenSSH.Server~~~~0.0.1.0
State : Installed

проверить что OpenSSH установлен

Проверьте статус служб ssh-agent и sshd с помощью командлета Get-Service:

Get-Service -Name *ssh*

службы SSH в Windows 10

Как вы видите, обе службы находятся в состоянии Stopped и не добавлены в автозагрузку. Чтобы запустить службы и настроить для них автозапуск, выполните команды:

Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Start-Service ‘ssh-agent’
Set-Service -Name ‘ssh-agent’ -StartupType 'Automatic'

настроить автозапуск для sshd сервиса в windows

Также нужно разрешить входящие подключения на порт TCP 22 в Windows Defender Firewall:

netsh advfirewall firewall add rule name="SSHD service" dir=in action=allow protocol=TCP localport=22

Теперь вы можете подключиться к Windows 10 с помощью любого SSH клиента. Для подключения из Linux используете команду:

ssh -p 22 admin@192.168.1.90

где, admin – имя локального пользователя Windows, под которым вы хотите подключиться

192.168.1.90 – ip адрес вашего компьютера с Windows 10

putty: подключение к windows 10 через ssh

После этого откроется окно командной строки Windows.

Совет. Чтобы вместо оболочки cmd.exe при подключении к Windows 10 через SSH запускалась консоль PoweShell, нужно выполнить команду:

New-ItemProperty -Path "HKLM:SOFTWAREOpenSSH" -Name DefaultShell -Value "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" -PropertyType String –Force

Так вы измените оболочку, которая стартует через OpenSSH. Теперь при подключении к Windows по SSH у вас будет сразу открываться консоль PowerShell вместо командной строки cmd.exe.

изменить ssh shell с cmd на powershell в Windows 10

Если вы хотите использовать key-based ssh authentification вместо парольной аутентификации, нужно на вашем клиенте сгенерировать ключ с помощью ssh-keygen.exe.

Затем содержимое файла id_rsa.pub нужно скопировать в файл c:usersadmin.sshauthorized_keys в Windows 10.

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

ssh -l admin@192.168.1.90

Вы можете настроить различные параметры OpenSSH сервера в Windows с помощью конфигурационного файла %programdata%sshsshd_config

sshd_config  конфигурационный файл openssh в windows

Например, вы можете отключить аутентификацию по паролю и разрешить вход только по ключу:

PubkeyAuthentication yes
PasswordAuthentication no

Понравилась статья? Поделить с друзьями:
  • Как через live cd восстановить систему windows 7
  • Как форматировать флешку через diskpart windows 10
  • Как через lan передать данные на другой компьютер windows 10
  • Как форматировать флешку после установки windows 10
  • Как через huawei share подключиться к пк windows 10