3/5 - (2 голоса)

EC2 (Elastic Cloud) – это облачный хостинг от Amazon, позволяющий быстро и удобно развертывать приложения. К примеру, Docker, Kubernetes, Python и bash-скрипты. В статье рассмотрим, как войти на экземпляр EC2 с помощью ssh-клиентов PuTTY, Termius и Termux.

Для начала работы зарегистрируйтесь на сайте AWS и добавьте платежную карту. Рекомендую установить лимит на покупки в интернете, или иметь отдельную карту с 1$. Amazon однократно снимет и вернет его. После войдите в AWS в качестве пользователя root.

В течение первых 12 месяцев Amazon предоставляет бесплатно 750 часов для экземпляра t2.micro и ОС (AMI) с меткой Free tier eligible. Эти часы могут быть использованы одним экземпляром, работающим в течение полнолуния (31 день * 24 часа = 744 часа), или несколькими экземплярами Amazon EC2, используемыми в течение месяца. Любые часы, превышающие бесплатный уровень, будут взиматься по ценам по требованию.

Создание экземпляра

После входа перейдите к сервису EC2 (Services >> Compute >> EC2), по желанию выберите локацию сервера (в верхнем уголке справа) и нажмите Launch instance.

ec2

Дайте название, выберите операционную систему (AMI) со значком free tier eligible и Instance type — t2.micro.

Создание ключевой пары (Key pair)

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

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

key pair

Proceed without a key pair (not recommended) — продолжить с использованием пароля.

Create new key pair – создать новую ключевую пару.

После нажатия кнопки «Create key pair» на вашем компьютере сохранится файл с расширением .pem. Если для подключения к серверу вы будете использовать только PuTTy, можно сразу сгенерировать пару в формате .ppk.

Нажмите кнопку Launch instance.

Все виртуальные машины можно найти в боковом меню >> instances.

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

По умолчанию экземпляры ec2 не имеют аутентификации паролем. Однако его можно установить вручную через веб-интерфейс. Для подключения нажмите галочку в поле экземпляра и Connect.

Затем введите команду sudo nano /etc/ssh/sshd_config

Если переключиться на английскую раскладку, можно вставить команду с помощью Ctrl+V.

Найдите строку «PasswordAuthentication» и измените значение «no» на «yes». Нажмите
Ctrl+O сохранить изменения. Enter – подтвердить название файла. Ctrl+X – выйти.

Придумайте и измените пароль пользователя с помощью команды
sudo passwd ec2-user

Перезапустите службу ssh
sudo service sshd restart

Вход с паролем через PuTTY

PuTTY  – бесплатный и очень популярный ssh ​​клиент для Windows. Чтобы войти в экземпляр, введите [email protected] , где цифры после собачки — публичный IP-адрес вашего экземпляра.

Вход с ключевой парой через PuTTY

Для начала превратите .pem файл в .ppk (ключ в формате PuTTY). Откройте программу PuTTygen и нажмите Load.

В открывшемся окне справа выберите All Files (все файлы).

Выберите файл .pem. Вы получите сообщение об успешном импорте, нажмите ОК. Щелкните Save private key (сохранить приватный ключ).

Вы получите вопрос, нажмите «Да». Дайте любое название файла и сохраните в удобное вам место.

Для подключения к серверу откройте PuTTy. В строке Hostname укажите Public IP адрес в формате [email protected] или Public DNS в формате [email protected]

Чтобы загрузить ключ в боковом меню PuTTY, выберите SSH >> Auth и в строке Private file for authentication нажмите Browse. Выберите ранее сохраненный ключ .ppk.

Для удобства рекомендую сохранить сессию. Это позволит не указывать пользовательские данные. Для этого в боковом меню выберите Session, в строке Saved Session укажите произвольное название и нажмите кнопку Save.

Если вы получаете ошибки при входе, проверьте, выбран ли файл ключа (ssh >> auth), правильно ли указано имя пользователя, правильно ли указан публичный IP-адрес.

Вход с паролем через Termius

Termius  – удобный ssh-клиент для компьютеров (Windows, Mac, Linux) и мобильных (Android, IOS) с возможностью сохранения сессий, синхронизации сессий между клиентами, сохранения команд (снипеты). Чтобы войти на экземпляр EC2, укажите:

  • Hostname — IP-адрес экземпляра.
  • Username – имя пользователя.
  • Password — пароль экземпляра.

По желанию укажите удобное для вас имя – Alias.

Вход с ключевой парой через Termius

Чтобы войти на экземпляр с помощью ключевой пары, укажите:

  • Hostname — IP-адрес экземпляра.
  • Username – имя пользователя.
  • Key – выберите частный ключ.

По желанию укажите удобное для вас имя – Alias.

Чтобы добавить приватный ключ, откройте файл .pem в любом текстовом редакторе и скопируйте его содержимое на телефон. В Termius нажмите поле Key, затем на + вверху справа, выберите Paste Key и вставьте частный ключ.

Вход с паролем через Termux

Termux  – мощный эмулятор терминала Android с открытым кодом. Минимальная базовая система устанавливается автоматически – дополнительные пакеты доступны с помощью менеджера пакетов APT.

  • termux-change-repo — клавишей Enter выберите репозитарий Main.
  • apt update — обновление пакета.
  • apt upgrade – обновить пакеты. Терминал задаст вам несколько вопросов по поводу версии программ, выбирайте версию по умолчанию (буква «n»).
  • pkg install openssh — установка пакета openssh.

Войдите в свой экземпляр с помощью команды ssh [email protected]
Примите ключ шифрования (fingerprint), введя «yes».

Вход с ключевой парой через Termux

Частные ключи Termux находятся в каталоге `~/.ssh` Чтобы добавить приватный ключ, откройте файл .pem в любом текстовом редакторе и скопируйте его содержимое на телефон.

  1. Перейдите в каталог ssh: cd ~/.ssh.
  2. Создайте файл id_rsa: nano id_rsa.
  3. Вставьте содержимое приватного ключа.
  4. Ctrl+O – сохраните изменения.
  5. Enter – подтвердите название файла.
  6. Ctrl+X – выйдите.

Подключитесь к экземпляру с помощью команды: ssh -i id_rsa [email protected] , где цифры после собачки — публичный IP-адрес вашего экземпляра.

Как удалить экземпляр EC2

Чтобы удалить экземпляр, нажмите на галочку рядом с ним и в верхнем углу выберите меню Instance state, выберите «Terminate Instance». Вы получите сообщение о приостановлении экземпляра.