Как подключиться к windows по ssh через интернет?
Содержание:
- ISPmanager
- Конфигурационные директивы файлов /etc/ssh/ssh_config и
- Как пользоваться PuTTY
- Что такое SSH?
- Установка, обновление и удаление пакетов
- Как подключиться по SSH с помощью PuTTY
- Настройка ssh клиента
- Установка и настройка на стороне сервера
- Командная строка
- Как подключиться по SSH с помощью ключа
- Windows
- Подключение по SSH
ISPmanager
Перед подключением по SFTP убедитесь, что у нужного пользователя есть shell-доступ. Это можно проверить в ISPmanager в разделе Учетные записи — Пользователи — выделить нужного пользователя — Изменить.
Необходимо, чтобы был отмечен пункт Доступ к shell.
По умолчанию в ISPmanager создан пользователь www-root. Если вы размещали сайты в разделе «WWW-домены» от имени данного пользователя, то подключиться по SFTP можно с реквизитами:
- Хост: IP-адрес сервера
- Имя пользователя: www-root (по умолчанию совпадает с паролем root)
- Пароль: пароль пользователя www-root
- Порт: 22
После подключения вы окажетесь в директории
Директории сайтов размещаются по адресу
Если вы создали дополнительного пользователя (например, user) и добавляли сайты от его имени, для подключения используйте его реквизиты:
- Хост: IP-адрес сервера
- Имя пользователя: user
- Пароль: пароль пользователя user
- Порт: 22
После подключения вы окажетесь в директории
Директории сайтов размещаются по адресу
Конфигурационные директивы файлов /etc/ssh/ssh_config и
Конфигурационные данные обрабатываются в следующем порядке и имеют следующий приоритет:
1. Опции командной строки
2. Файл со специфичными для пользователя настройками
3. Файл с общесистемными настройками /etc/ssh/ssh_config
Все значения конфигурации меняются только при первой их установке. Таким образом, специальные настройки хоста должны быть в начале, а значения по умолчанию в конце.
Конфигурационный файл клиента SSH поддерживает множество директив, но их настройка требуется для продвинутого использования SSH и для большинства случаев использования какие-либо настройки не требуются.
Необходимо отметить на специальные директивы Host и Match, которые разбивают файл на блоки.
Директива Host устанавливает имя хоста, к котором применяются все последующие настройки, пока не будет встречена другая директива Host или Match.
Если в качестве хоста указать ‘*’, то это позволяет задать глобальные настройки значений по умолчанию, применимые ко всем хостам.
Шаблон может иметь противоположное значение, если перед ним поставить восклицательный знак (‘!’). Если запись с отрицанием соответствует, то тогда пункт Host игнорируется, если не произойдёт совпадение с другими шаблонами. Следовательно, совпадения с отрицаниями полезны для обеспечения исключений из совпадений по подстановочным символам.
Далее показан небольшой фрагмент конфигурации, в которой для хоста 10.6.0.1 устанавливается порт подключения 55455, для хоста 192.0.100.8 в качестве порта подключения будет использован 2222, а для всех остальных хостов будет выполнено подключение к 22 порту:
Эти конфигурационные файлы содержат пары «ключевое слово — аргумент», одна пара на одной строке. Опционально аргументы можно заключить в двойные кавычки (), чтобы передать аргументы, содержащие пробелы.
Ключевые слова не чувствительны к регистру, а аргументы чувствительны к регистру.
Многие директивы закомментированы, но они указывают на значение по умолчанию, которое всё равно используется. Если вас устраивает значение по умолчанию, то не нужно ничего менять. Если же вы хотите другое значение, то нужно раскомментировать строку с соответствующей директивой (убрать символ #) и внести изменения.
Поскольку для каждого параметра используется первое полученное значение, в начале файла должны быть приведены более специфичные для хоста объявления, а в конце общие значения по умолчанию.
Выше уже рассмотрен пример подключения к удалённому SSH серверу по лаконичному имени вместо IP адреса. Это общесистемная настройка преобразования имени в IP адрес, в результате теперь имена suip и s можно использовать с любой программой — хоть в веб-браузере, хоть с утилитами, например с ping:
Но у ssh клиента есть свая собственная функциональность задать удобное (хорошо запоминающееся) имя хоста. Причём они позволяют сразу указать и порт, что с предыдущем методом сделать невозможно.
К примеру, IP адрес моего SSH сервера 185.117.153.79, его порт 54321 и я хочу добавить возможность подключаться к нему по имени Host, тогда в файл
/.ssh/config мне достаточно добавить следующее:
Как видим, используется директива HostName — она устанавливает настоящее имя хоста, в том числе можно указывать IP адрес.
Директива Port устанавливает порт, который должен использоваться для данного хоста.
В результате, теперь можно подключаться по обычной команде:
Либо применять её полный эквивалент:
С полным списком директив, которые можно использовать в конфигурационном файле, можно ознакомиться командой:
Для получения информации об опциях командной строки выполните:
Как пользоваться PuTTY
1. Интерфейс программы
Сразу же после запуска программы из меню пуск вы увидите графический интерфейс ее настройки. После подключения вы будете видеть только терминал, но настроить программу можно через удобный интерфейс.
Рассмотрим за что отвечают те или иные вкладки программы, чтобы вы ориентировались что и где искать. У нас есть четыре вкладки:
- Session — отвечает за подключение удаленному серверу, тут мы вводим параметры подключения, порт, адрес, а также можем сохранить все настройки putty, чтобы не настраивать каждый раз заново.
- Terminal — позволяет включать или отключать возможности терминала;
- Window — настройка внешнего вида окна, цвет, шрифт, кодировка;
- Connection — настройка параметров подключения, алгоритма шифрования, сжатия, ключей аутентификации, X11 и других параметров.
Каждая вкладка имеет несколько подразделов, но мы не будем сейчас их трогать, а перейдем сразу к практике и посмотрим как подключиться putty к удаленному узлу.
2. Подключение к удаленному компьютеру PuTTY
Чтобы подключиться к удаленному компьютеру по SSH перейдите на вкладку «Session», здесь, в поле «Host Name» необходимо прописать ip адрес или имя хоста, компьютера, к которому вы хотите подключиться, в поле порт — нужно указать порт, на котором запущен SSH сервер, по умолчанию используется порт 22:
Далее, нажмите кнопку «Open». После этого появится запрос на добавление ключа сервера в список доверенных ключей, нажмите «Да»:
Затем вам будет нужно ввести логин пользователя и пароль
Важно заметить, что скопировать логин или пароль у вас не получится, необходимо только вводить вручную:
Теперь авторизация прошла успешно, и вы можете выполнять нужные действия на сервере:
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» сохраните оба ключа.
Далее, откройте PuTTY, перейдите на вкладку «Connection», затем «SSH», затем «Auth»:
Здесь необходимо нажать кнопку «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/:
С помощью опции -P можно задать удаленный порт:
А опция load позволяет загрузить сохраенные настройки сессии PuTTY:
Теперь вы знаете как использовать putty для передачи файлов.
Что такое SSH?
В этой статье, мы поговорим про то, как подключиться по SSH. Но для начала, хотелось бы детальнее рассказать, что это за оболочка.
Secure SHell, иными словами «Безопасная оболочка» — это сетевой протокол прикладного уровня, который дает возможность пользователю вносить изменения или управлять операционной системой, через сеть «Интернет». Также происходит шифрования всех передаваемых данных. Кроме текстовых документов возможно передавать звуковые дорожки и медиа-файлы. Главное преимущество SSH —защита передаваемой информации между удаленным сервером и компьютером, пытающимся получить доступ. Безопасная оболочка использует только три вариации технологий шифрования:
Симметричные;
Обычно используется один ключ или пара ключей, из которых один ключ может быть легко вычислен с помощью другого.
Асимметричное;
Используется два ключа: приватный и публичный.
Хеширование.
Используется только при дешифровании.
Есть две SSH — SSH-1 и SSH-2, вторая более усовершенствованная.
Для тех, кто только начинает пользоваться Secure SHell, надо знать:
- Логин;
- Пароль;
- IP адрес сервера;
Установка, обновление и удаление пакетов
В Linux почти все программное обеспечение имеет открытый исходный код, поэтому в большинстве своем распространяется через открытые репозитории. Для его загрузки и установки используются менеджеры пакетов. В каждом семействе дистрибутивов он свой.
apt (в Debian, Ubuntu и им подобных)
sudo apt-get install название пакета — устанавливает пакет из подключенных репозиториев. Ищется по названию и версии.
sudo apt remove название пакета — удаляет из системы установленный пакет.
sudo apt purge название пакета — удаляет установленный пакет и вместе с ним уничтожает все зависимые данные. От приложения не остается никаких следов. Такой вариант подходит, когда нужна полная переустановка пакета «с нуля».
sudo apt autoremove — автоматически выполняет уборку среди установленных пакетов, убирая ненужные остатки кода.
sudo apt-add-repository адрес репозитория — подключает к системе дополнительный репозиторий с пакетами, не вошедшими в базу репозиториев по умолчанию. Требуется для установки некоторых редких open-source-приложений.
sudo apt-get update — обновляет информацию о пакетах, имеющихся в системе и тех, что хранятся в подключенных репозиториях.
sudo apt-upgrade — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.
dnf (в Red Hat Linux, CentOS, Fedora)
sudo dnf install название пакета — устанавливает программу на выбор.
sudo dnf config-manager –add-repo адрес репозитория — подключает к системе дополнительный репозиторий.
sudo dnf upgrade — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.
sudo dnf remove название пакета — стирает с жесткого диска имеющийся в системе пакет.
sudo dnf autoremove — разыскивает мусор среди имеющихся пакетов и в автоматическом режиме вычищает его.
pacman (в Arch Linux и Manjaro)
sudo pacman -S название пакета — устанавливает пакет на выбор.
sudo yaourt -S название пакета — устанавливает пакет на выбор из репозитория AUR.
sudo pacman -Sy — обновляет информацию о пакетах, имеющихся в системе и тех, что хранятся в подключенных репозиториях.
sudo pacman -Syu — обновляет версии установленных пакетов до самых свежих, доступных в подключенных репозиториях.
sudo pacman -R название пакета — стирает с жесткого диска имеющийся в системе пакет.
sudo pacman -Rs название пакета — стирает не только установленное приложение, но и все зависимые от него элементы.
Как подключиться по SSH с помощью PuTTY
Самой простой и проверенной утилитой для подключиться по SSH к VPS-серверу на данный момент является PuTTY. В ней есть классический юзер-интерфейс, в котором можно легко разобраться пользователям Windows.
Установка PuTTY
Попадаем на страницу скачивания утилиты, чуть ниже в блоке Package Files находим пункт MSI (‘Windows Installer’) и скачиваем установщик в формате . Выбираем тот, который соответствует разрядности нашей Windows.
Сама по себе установка довольно понятная и простая, описание каждого шага скорее всего не требуется.
Настройка и подключение по SSH
Теперь, когда PuTTY установлен, от подключения нас отделяет лишь один довольно простой шаг. Нужно выставить настройки, введя IP-адрес и SSH-порт сервера. Форма с этими настройками открывается сразу, после запуска утилиты.
Если мы покупали VPS-сервер у хостинг-провайдера, то он должен выдать после покупки данные для подключения примерно в таком виде:
- IP-адрес сервера: 80.90.255.255
- Логин: root
- Пароль: xvFkWsIys
Имея под рукой данные для подключения, открываем установленную PuTTY и вводим в основную форму IP-адрес и порт. Если хостинг-провайдер не указал SSH-порт конкретно, значит по-умолчанию он 22.
Если вы планируете подключаться к серверу в будущем, то следует его сохранить. Для этого в поле Saved Sessions вводим произвольное название для этих настроек, например и нажимаем Save.
После чего в списке ниже под должна появиться добавленная строчка . Теперь все готово к подключению, нажимаем Open
После нажатие кнопки откроется командная строка. И если мы правильно ввели IP-адрес сервера и порт, то нас спросят логин. В примере у нас используется root:
login as: root
Далее запрашивается пароль. Его можно ввести вручную или вставить из буфера обмена. При вводе пароля не будут появляться звездочки или какие-либо условные символы, это нормально. После ввода пароля вы попадаете в командную строку сервера, к которому подключались.
's password: Linux debian9 5.4.40-04224-g891a6cce2d44 #1 SMP PREEMPT Tue Jun 23 20:21:29 PDT 2020 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. :~#
Готово, теперь все введенные команды будут выполнятся на сервере. Чтобы прервать SSH-сессию нужно нажать Ctrl + D или просто закрыть окно.
Настройка ssh клиента
В Debian настройки клиентской части ssh делятся на глобальные и пользовательские. Глобальные клиентские настройки находятся в файле /etc/ssh/ssh_config и применяются ко всем пользователям. Пользовательские настройки могут находиться в домашнем каталоге пользователя, в ~/.ssh/config и применяются к одному пользователю. Файл пользовательских настроек не создаётся автоматически в отличие от файла глобальных настроек клиентской части ssh. Для большинства выполняемых задач подойдут настройки по умолчанию, но для удобства использования, так сказать для тюнинга или для выполнения нестандартных задач клиентские настройки изменяются. Рассмотрим вкратце некоторые из этих настроек. Полезно помнить о приоритетах настроек: высший приоритет имеют ключи командной строки, затем следуют настройки пользователя, а после них используются глобальные настройки клиентской части.
Параметр Host. Ограничивает множество хостов, к которым применяются последующие (до ближайшей новой директивы Host) директивы, по указанным шаблонам (хост должен соответствовать хотя бы одному шаблону). Шаблон, состоящий из одного символа *, соответствует любому хосту. Под хостом в данном контексте понимается аргумент имя_хоста передаваемый в командной строке (т.е. никаких преобразований перед сравнением не выполняется).
Параметр HostName. Устанавливает соответствие между псевдонимами, сокращениями и настоящими именами хостов. По умолчанию используется имя, передаваемое в командной строке. Допустимо непосредственное указание IP-адресов.
Параметр Port. Порт на удалённой машине, к которому следует подключаться. Значение по умолчанию — 22
Параметр User. Имя пользователя, которое следует использовать при регистрации в удалённой системе. Полезно, когда на разных серверах используются разные имена, т.к. избавляет от надобности вспоминать каждый раз нужное имя.
В качестве примера я создам файл пользовательских настроек /home/selifan/.ssh/config следующего содержания:
Host sunup
HostName sunup.aitishnik.local
Port 2203
User andrey
Host windbag
HostName windbag.nnov.ru
Port 2280
User joker
Host 212.177.65.1
HostName 212.177.65.1
Port 2222
User forester
Теперь при подключении к компьютерам sunup.aitishnik.local, windbag или по ip адресу 212.177.65.1 мне не нужно вспоминать, ни имя пользователя, ни ssh порт подключения, достаточно после ssh набрать имя сервера. Просто и удобно! Описания всех параметров, значений и некоторых примеров находятся в man ssh_config. Продолжаем настраивать SSH и читаем «Генерация ключей SSH».
Об авторе:
Меня зовут Андрей Золкин. Из более, чем пятнадцати лет работы в сфере информационных технологий, десять лет работаю с системами, базирующимися на открытом исходном коде. На страницах сайта Aitishnik.Ru веду блоги по CMC Joomla и Debian GNU/Linux.
Установка и настройка на стороне сервера
Перед установкой соединения установите программное обеспечение на стороне сервера для размещения вашего SSH-соединения. Для этого требуется, чтобы кто-то присутствовал для установки или включения SSH. Возможно, вы уже присутствуете для этого — в противном случае ваш коллега или инженер службы поддержки на стороне сервера настроит SSH.
Обратите внимание, что если вы используете пакет веб-хостинга, SSH должен быть включен по умолчанию. Если нет, обратитесь к своему веб-хосту, чтобы настроить SSH
Если SSH не включен на удаленном компьютере или сервере, установите его с помощью
sudo apt install openssh-server
Убедитесь, что это работало с
sudo systemctl status ssh
Команда должна запрещать ответ «активен».
В некоторых случаях брандмауэр Ubuntu ufw может блокировать SSH. Чтобы этого не произошло, используйте
sudo ufw allow ssh
В некоторых случаях вам также потребуется включить SSH на удаленном устройстве. Это мера безопасности, которую можно настроить с помощью
sudo systemctl enable ssh
Доступны и другие параметры ( , и ) для настройки службы SSH.
Командная строка
Если вы подключитесь к другому компьютеру по SSH, вы не увидите там рабочий стол и окна программ. Вы увидите чёрный экран и строки текста. Это нормально. Это называется командной строкой. Сейчас вы поймёте.
Когда вы работаете за компьютером, вы обычно видите окна, кнопки, страницы и всё подобное. Это называется графическим интерфейсом.
Графический интерфейс — это не сами программы. Это лишь способ представления программы. Сама программа — это то, что исполняется внутри компьютера: то, что считает, копирует, обрабатывает и так далее. Есть огромное количество программ без графического интерфейса: например, веб-сервер Apache — это программа. Сервер работает на вашем компьютере, занимает память, выдаёт страницы куда нужно, ведёт свою серверную работу, но у него нет графического интерфейса — нет никакого окошка, на которое вы можете сказать «Это сервер».
Или, например, ваш браузер. Если у вас Chrome, то вы видите окно с веб-страницей. А есть версия Headless Chrome, которая может выплёвывать любые страницы в виде картинок прямо на ваш жёсткий диск. У этого «Хрома» нет графического интерфейса со страницей (но есть небольшой интерфейс для настройки).
С нашей человеческой точки зрения интерфейс — это и есть программа. А с точки зрения компьютера интерфейс — это что-то побочное. И опытные программисты довольно часто используют в работе программы, у которых нет графического интерфейса, только командная строка.
Командная строка — это текстовый интерфейс программы. Вы вводите в эту строку команду, программа может в ответ что-то вас спросить текстом, вы ей текстом ответите, и программа сделает свою работу. Мы уже сталкивались с командной строкой, когда собирали своё приложение в электроне или объясняли, как устроен интернет:
Здесь в командной строке пользователь maximilyakhov на компьютере iMac-Maxim выполнил команду ping для адреса thecode.media — то есть проверил, откликается ли сервер с нашим сайтом. Это видно из второй строки. Программа Ping стала показывать статистику: получили пакеты по 64 байта за 79 мс. Пользователь удовлетворился результатом, вышел из программы клавишей Ctrl+C и получил итоговую статистику. Сейчас командная строка готова к новым командам
Бывают и другие интерфейсы программ. Например, может быть голосовой интерфейс: компьютер вас слушает, интерпретирует команды, задаёт вам вопросы голосом.
Может быть интерфейс в виде чата. Вместо того чтобы давать текстовые команды в командной строке, вы пишете команды чат-боту.
Может быть даже физический интерфейс: когда вы играете в приставку, вы даёте команду с помощью джойстика или каких-нибудь палок с датчиками. Когда в вас попадают враги, джойстики могут вибрировать — это приставка вам пытается что-то сказать. Так что графический интерфейс — это лишь одна из разновидностей.
Как подключиться по SSH с помощью ключа
Выше мы разобрали простое подключение по паролю, но гораздо безопаснее подключаться, используя ключ. В этом случае нужно вводить пароль от ключа, а не юзера сервера. Возможно даже вообще не вводить никаких паролей, а использовать только файл-ключ, что является очень удобным и относительно безопасным. Но обо всем по порядку.
Генерация (создание) SSH-ключа
Для начала нужно создать SSH-ключ на той машине, с которой будем подключаться к серверу, то есть ключ создается на стороне клиента, для этого не нужно заходить на сервер.
Чтобы создать ключ, нужно ввести команду . В примере мы будем использовать самую распространенную папку для ключей, которая находится в домашней папке пользователя: или ее укороченной версией :
После ввода утилита попросит задать пароль для ключа. Здесь довольно важный момент. Можно вовсе не задавать пароль и просто нажать Enter. В таком случае подключение к серверу будет осуществляться только по ключу и без всякого ввода пароля.
Но в примере мы будем «параноиками» и зададим пароль на использование ключа. Придумаем именно отдельный пароль, не тот, что от пользователя сервера. Можно выбрать вариант проще, который возможно будет без труда запомнить и ввести вручную, например . Его мы будем в будущем вводить каждый раз, как потребуется использовать ключ. И так, задаем…
ssh-keygen -f ~/.ssh/server-key Generating public/private rsa key pair. Enter passphrase (empty for no passphrase):
После этого нас попросят ввести пароль еще раз, повторяем его и если вы правильно ввели путь до папки для ключа, то должен получиться примерно такой вывод:
:~$ ssh-keygen -f ~/.ssh/server-key Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/uxumax/.ssh/server-key. Your public key has been saved in /home/uxumax/.ssh/server-key.pub. The key fingerprint is: SHA256:RX489Wcrb1rt/CRlEs08D8T5Wn//qydYZOpOlIs+cGE The key's randomart image is: +-------+ | . .o. | | o . oo= | | o + ooB| | E ..+ +B| | S .o+..+=| | . .o...+++| | o..oo .+=| | ...o .+*.| | .o. o+.O| +---------+ :~$
В выводе строка с текстом говорит в какой именно папке сохранился ключ.
Добавление ключа в список доверенных на сервере
В предыдущем этапе мы только создали ключ. Пока он не подходит ни к одному серверу. Чтобы использовать его для входа на наш сервер, необходимо добавить его в список доверенных ключей на этом сервере. Звучит сложно, но на самом деле все обходится лишь одной командой, которая содержит путь до ключа, логин и IP-адрес сервера в своих опциях и имеет такой вид: .
После ввода команды потребуется разово ввести пароль от сервера, после чего ключ будет авторизован на сервере.
:~$ ssh-copy-id -i ~/.ssh/server-key /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/uxumax/.ssh/server-key.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys 's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh ''" and check to make sure that only the key(s) you wanted were added. :~$
Подключение к серверу по ключу
Теперь можно подключаться к серверу, используя ключ. Для этого вводим команду, которая содержит логин, IP-адрес сервера и путь до ключа с опцией -i:
После ввода потребуется ввести пароль от ключа, который мы задавали в прошлом разделе. Если вы тогда просто нажали Enter, ничего не вводили, то вас сразу перекинет на север, без запроса пароля.
:~$ ssh -i ~/.ssh/server-key Enter passphrase for key '/home/uxumax/.ssh/server-key': Linux debian9 5.4.40-04224-g891a6cce2d44 #1 SMP PREEMPT Tue Jun 23 20:21:29 PDT 2020 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. :~#
Windows
СВЯЗАННЫЕ: 5 интересных вещей, которые вы можете сделать с SSH-сервером
Windows по-прежнему не предлагает встроенной команды SSH. Microsoft подняла шум по поводу интеграции официального SSH-клиента в PowerShell еще в 2015 году, но с тех пор мы мало что слышали об этом. Таким образом, наиболее популярным и широко рекомендуемым решением для подключения к SSH-серверам является стороннее приложение с открытым исходным кодом под названием PuTTY.
Обновление: в Windows 10 теперь есть официальная команда SSH, которую вы можете установить. Это часть Windows 10, но является «необязательной функцией».
Загрузите PuTTY и запустите его, чтобы начать работу. Вы можете загрузить установщик, включающий PuTTY и связанные с ним утилиты. или файл putty.exe, который может работать как портативное приложение.
Введите имя хоста или IP-адрес SSH-сервера в поле «Имя хоста (или IP-адрес)». Убедитесь, что номер порта в поле «Порт» совпадает с номером порта, который требуется серверу SSH. Серверы SSH по умолчанию используют порт 22, но зачастую серверы настроены на использование других номеров портов. Нажмите «Открыть» для подключения.
Вы увидите предупреждение системы безопасности при первой попытке подключения к серверу. Это означает, что вы ранее не подключались к этому серверу. Это ожидаемо, поэтому нажмите «ОК», чтобы продолжить.
Если вы увидите это предупреждение в будущем после того, как уже один раз подключились к серверу, это означает, что отпечаток ключа шифрования сервера отличается. Либо администратор сервера изменил его, либо кто-то перехватывает ваш трафик и пытается обманом заставить вас подключиться к вредоносному SSH-серверу-самозванцу. Быть осторожен!
Вам будет предложено ввести имя пользователя и пароль для вашей учетной записи на SSH-сервере. После того, как вы это сделаете, вы подключитесь. Просто закройте окно, чтобы завершить соединение SSH.
С PuTTY вы можете сделать гораздо больше. Например, если вам нужно использовать файл закрытого ключа для аутентификации на SSH-сервере, вы найдете эту опцию в Connection> SSH> Auth в окне конфигурации PuTTY, которое появляется при запуске приложения. Обратитесь к руководству PuTTY для получения дополнительной информации.
Подключение по SSH
Слово SSH — это сокращение от Secure SHell (англ. безопасная оболочка).Необходимость в подключении через SSH возникает тогда, когда у устройства нет графического интерфейса для настройки или есть потребность тонкой настройки. Давайте разберем на простой аналогии, что я имею в виду. Допустим, вам необходимо записаться на прием к врачу-невропатологу. Но ваша замечательная больница не предоставила такой возможности на своём сайте. Тогда вы по старинке идете на маршрутку, покупаете билет (или едете по проездному), доезжаете до больнички, приходите в регистратуру, берете папочку для записей к врачу и записываетесь на тот день, который вам нужен. Да долго и сложнее чем записаться через сайт, но других вариантов ведь нет?
На большинстве форумов, когда требуется подключиться к чему-либо через SSH, упоминается программа PuTTY. Но она есть только для Windows. Поэтому мы рассмотрим работу с приложением Termius, так как оно кроссплатформенное и работает в том числе и на мобильных устройствах.
Termius — это SSH клиент, то есть программа, которая позволяет осуществлять удалённое подключение на любой сервер, который поддерживает такой протокол. Преимущество этой программы заключается в его кроссплатформенности, то есть она может использоваться на всех популярных платформах.
Посмотрим, для каких платформ подходит Termius
Преимущества данной программы заключается в том, что, если вы авторизуетесь в приложении и внесете все подключения в аккаунт, то ваши данные будут храниться в облаке и к ним будет доступ с любого устройства, где вы авторизуетесь под своей учетной записью.
Синхронизация настроек в облако доступна только по подписке.
Выбор продукта оставлю на Вас, дорогой читатель, но в данной статье я буду использовать Termius.
После запуска приложения, регистрации и авторизации мы увидим рабочую область приложения, выглядит она примерно вот так (регистрироваться и авторизоваться не обязательно, без этого тоже все работает):
Сейчас рассмотрим работу программы Termius на всех операционных системах.
Рассмотрим работу программы на следующих операционных системах Mac OS X, Windows, iOS и Android. Какую операционную систему Вы будете использовать, решать только Вам.