Гид по технологиям

Как запустить Linux‑сервер в AWS EC2

7 min read Облако Обновлено 21 Dec 2025
Запуск Linux‑сервера в AWS EC2
Запуск Linux‑сервера в AWS EC2

  • Кратко: создайте EC2‑инстанс в консоли AWS, выберите AMI и тип инстанса, добавьте пару ключей, настройте security group (SSH/HTTP/HTTPS) и подключитесь через EC2 Instance Connect или SSH. Затем установите веб‑сервер (например, Apache) и разверните приложение.
  • Важное: всегда ограничивайте доступ по SSH по IP, используйте ключи и настройте бэкапы/шифрование для данных.

Linux-талисман в облаке

Владение и запуск веб‑серверов в интернете может быть сложной задачей для новичка. Облачные провайдеры облегчают задачу, позволяя быстро поднять виртуальные машины любых размеров. Amazon Web Services (AWS) — одна из наиболее надёжных и популярных облачных платформ. Ниже — подробная пошаговая инструкция по созданию Linux‑серверa в AWS EC2 и по подключению к нему для развёртывания веб‑приложений.

Что такое Amazon EC2?

Amazon Elastic Compute Cloud (EC2) — сервис для запуска виртуальных машин (инстансов) в облаке. EC2 позволяет выбирать образы операционных систем (AMI), масштабировать вычислительные ресурсы, настраивать сеть и хранилище. Основное назначение — запуск приложений и веб‑сервисов, доступных из интернета, с возможностью гибкой настройки безопасности и ресурсов.

Ключевые термины в одну строку:

  • AMI — образ виртуальной машины с предустановленной ОС.
  • Инстанс — запущенная виртуальная машина.
  • Security Group — виртуальный брандмауэр для инстанса.
  • Key pair — пара ключей для SSH‑аутентификации.

Как создать Linux EC2‑инстанс

AWS Management Console предоставляет пошаговый интерфейс для запуска инстанса без скриптов. Ниже — обновлённая инструкция с пояснениями и советами безопасности.

  1. Войдите в существующую учётную запись AWS или зарегистрируйтесь на portal.aws.amazon.com. Перейдите в панель EC2.

Поиск EC2 в консоли

  1. Нажмите кнопку “Launch instances” в правом верхнем углу, чтобы открыть мастер создания инстанса.

Нажмите запуск нового EC2‑инстанса

  1. Укажите имя инстанса и выберите AMI — образ операционной системы (Ubuntu, Amazon Linux, CentOS и т. п.). Ubuntu часто используется для веб‑серверов, но можно выбрать любую поддерживаемую дистрибуцию.

Выбор имени инстанса и AMI

Выбор типа инстанса

Тип инстанса определяет сочетание CPU, памяти, сети и дисковой подсистемы. Выбор зависит от нагрузки: тестовый сервер — маленький instance (например, t2.micro в демонстрации), для продакшена — большие семейства (m, c, r и т. д.).

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

Выбор типа инстанса

Важно: сравнивайте по четырём параметрам — CPU, RAM, дисковая подсистема, пропускная способность сети.

Выбор пары ключей

Для безопасного SSH‑доступа в большинстве случаев создаётся пара ключей (public/private). На этапе создания инстанса вы можете использовать существующую пару или сгенерировать новую.

Клик для создания новой пары ключей

При создании новой пары укажите имя, алгоритм (RSA — широко поддерживается) и формат приватного ключа (PEM — для OpenSSH, PPK — для PuTTY на Windows).

Всплывающее окно создания пары ключей

Практическая подсказка: загрузите приватный ключ и храните его в защищённом месте; не передавайте приватный ключ по почте.

Настройка сети и security group

Security Group — это виртуальный брандмауэр. По умолчанию создайте правила, которые разрешают только необходимые порты:

  • SSH (обычно порт 22) — ограничьте источники до вашего публичного IP.
  • HTTP (порт 80) — если это веб‑сервер, откройте внешнему трафику.
  • HTTPS (порт 443) — откройте, когда настроите SSL/TLS.

Настройка сетевых параметров для EC2

Важно: не оставляйте SSH открытым для всего интернета (0.0.0.0/0). Постепенно ужесточайте правила доступа, применяйте MFA к консоли и используйте IAM‑роли для доступа приложений к сервисам AWS.

Настройки хранилища

EC2 автоматически подключает корневой том. При необходимости можно добавить дополнительные Amazon EBS‑тома — это блочное хранилище, которое можно подключать, отсоединять и бэкапить (снимки). EBS полезен, когда данные должны сохраняться независимо от жизненного цикла инстанса.

Рекомендуемая практика: шифруйте EBS‑томы в продакшене и настраивайте автоматические снапшоты для критичных данных.

После проверки конфигурации нажмите “Launch Instance”. Консоль предложит перейти к просмотру запущенных инстансов — нажмите “View Instances”.

Как подключиться к Linux EC2‑инстансу

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

  • EC2 Instance Connect — быстрый браузерный SSH.
  • Session Manager — SSH‑подключение через AWS Systems Manager без открытого порта 22.
  • SSH Client — стандартный ssh‑клиент (OpenSSH, PuTTY).
  • EC2 Serial Console — низкоуровневый доступ для отладки загрузки и проблем с сетью.

Наиболее часто используются EC2 Instance Connect и традиционный SSH‑клиент.

  1. В панели EC2 выберите инстанс и нажмите “Connect”.

Шаг 1 для подключения к EC2

  1. Выберите вкладку “EC2 Instance Connect” и нажмите “Connect” — откроется браузерный терминал.

Успешное подключение через EC2 Instance Connect

Если вы подключаетесь по SSH из терминала — используйте приватный PEM‑ключ и команду вида:

ssh -i /path/to/key.pem ubuntu@PUBLIC_IPV4_DNS

(имя пользователя зависит от AMI: ubuntu, ec2‑user, centos и т. д.)

Пример: установка Apache

После подключения вы можете установить веб‑сервер. Для Ubuntu это обычно:

sudo apt-get update -y
sudo apt-get install apache2 -y
sudo systemctl start apache2.service
sudo systemctl enable apache2.service

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

sudo systemctl status apache2.service

Если Apache запущен, вы увидите статус active (running). Затем в браузере откройте Public IPv4 DNS или публичный IP инстанса — вы увидите демонстрационную страницу Apache.

Apache активен и запущен

Демонстрационная страница Apache

Поздравляем — ваш Linux‑сервер работает в облаке.

Развёртывание приложений в облаке с помощью AWS

Вместо Apache вы можете установить любое приложение: Node.js, Nginx, Docker, Git, Golang и т. д. Общая последовательность такая:

  1. Подключиться к инстансу.
  2. Обновить пакеты и установить зависимости.
  3. Развернуть код (git clone, scp, CI/CD).
  4. Настроить систему запуска (systemd, Docker Compose, Kubernetes агент).
  5. Настроить мониторинг и бэкапы.

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

Чеклист по ролям

DevOps:

  • Настроить IAM‑роль с минимальными правами для инстанса.
  • Шифровать EBS‑томы.
  • Настроить автоматические снапшоты и бэкапы.
  • Подключить мониторинг (CloudWatch) и оповещения.
  • Включить автоматический патчинг и обновления безопасности.

Разработчик:

  • Подготовить скрипт развёртывания (deploy.sh или CI/CD pipeline).
  • Настроить конфигурацию окружений (env vars, секреты в AWS Secrets Manager).
  • Тестировать локально прежде чем пушить в прод.

Сетевой/безопасность:

  • Ограничить SSH по IP.
  • Настроить WAF или Web ACL при необходимости.
  • Включить логирование доступа и систему IDS/IPS.

Руководство действий (SOP) для запуска веб‑сервера

  1. Подготовка:
    • Создать или выбрать AMI.
    • Подготовить key pair.
    • Создать security group с правилами SSH (ваш IP), HTTP и HTTPS.
  2. Запуск:
    • Запустить инстанс, выбрать нужный тип и размер EBS.
  3. Проверка:
    • Подключиться через EC2 Instance Connect или SSH.
    • Установить веб‑сервер и запустить его.
  4. Живучесть:
    • Настроить systemd для автозапуска.
    • Настроить мониторинг и алерты.
  5. Резервирование:
    • Создать AMI или EBS‑снапшоты.

Инцидентный сценарий и откат

Если приложение не запускается или инстанс недоступен:

  • Проверьте правила security group и ACLs.
  • Проверьте статус systemd и логи приложения (/var/log/*).
  • Используйте EC2 Serial Console для доступа при проблемах загрузки.
  • При критичной ошибке: запустить новый инстанс из AMI и переключить DNS на новый IP.

Модель принятия решения: выбор подключения и типа инстанса

Mermaid диаграмма для выбора способа подключения:

flowchart TD
  A[Нужно подключиться?] --> B{Порт 22 открыт?}
  B -- Да --> C{Shell в браузере нужен?}
  B -- Нет --> D[Использовать Session Manager]
  C -- Да --> E[EC2 Instance Connect]
  C -- Нет --> F[SSH Client с PEM/PPK]
  E --> G[Выполнить операции]
  F --> G
  D --> G

Безопасная эксплуатация и hardening

  • Всегда используйте key pair и отключайте аутентификацию по паролю.
  • Ограничьте SSH доступ конкретными IP‑адресами.
  • Применяйте обновления безопасности своевременно.
  • Используйте AWS IAM для управления привилегиями.
  • Шифруйте данные в покое (EBS) и в движении (HTTPS).
  • Включите журналирование доступа и анализ логов (CloudTrail, CloudWatch).

Конфигурации для распространённых сценариев

Docker‑среда:

  • Установите Docker CE и Docker Compose.
  • Храните образы в Amazon ECR для упрощённого развёртывания.

CI/CD:

  • Настройте пайплайн в CodePipeline или используйте внешние CI (GitHub Actions).
  • Подключите деплой через SSH или через автоматические образ‑создания AMI.

Советы по стоимости и оптимизации

  • Для тестовых задач используйте малые типы инстансов (t2.micro), которые часто попадают под бесплатный слой (при наличии).
  • Для стабильной нагрузки изучите авто‑скейлинг с балансировщиком нагрузки (ELB).
  • Отключайте ненужные инстансы и удаляйте неиспользуемые EBS‑тома, чтобы не платить за них.

Конфиденциальность и соответствие требованиям

Если вы храните персональные данные (PII), обратите внимание на местоположение регионов AWS и требования законодательства (например, GDPR). Практики:

  • Шифруйте данные в покое и при передаче.
  • Используйте минимальные права IAM и аудит доступа.
  • Документируйте, где и как хранятся данные, и обеспечьте возможность удаления по запросу.

Критерии приёмки

  • Инстанс запущен и отвечает по публичному IP/домену.
  • Веб‑сервер успешно запускается и отвечает 200 OK на корневой путь.
  • SSH доступ работает только с разрешённых IP.
  • Сняты снапшоты/AMI для быстрой замены при инциденте.
  • Мониторинг и оповещения настроены.

Частые ошибки и когда схема не подходит

  • Оставленный открытый SSH на 0.0.0.0/0 — частая причина взлома.
  • Для высоконагруженных сервисов одного EC2 может быть недостаточно — лучше рассмотреть ASG и балансировщик.
  • Для критичных данных одиночный инстанс без репликации и бэкапов не подходит.

Краткое резюме

Запуск Linux‑серверa в AWS EC2 — это последовательность: выбор AMI → выбор типа инстанса → настройка key pair и security group → подключение и установка софта → мониторинг и бэкапы. Простая конфигурация подходит для тестирования и разработки; для продакшена добавляйте шифрование, резервирование и автоматический масштаб.

Важно: всегда придерживайтесь принципа наименьших привилегий и ограничивайте доступ по сети.

Дополнительные ресурсы и следующая практика:

  • Изучите AWS Systems Manager Session Manager для доступа без открытия порта 22.
  • Автоматизируйте создание инстансов через Terraform/CloudFormation.

Проверьте перед запуском: корректный key pair, правила security group, регион и AMI.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Trakt.TV: как отслеживать сериалы и фильмы
Руководство

Trakt.TV: как отслеживать сериалы и фильмы

Автоматическая смена циферблата Apple Watch
Инструкции

Автоматическая смена циферблата Apple Watch

FTP на Windows с FileZilla — настройка и безопасность
Инструкции

FTP на Windows с FileZilla — настройка и безопасность

Создать Google Форму из Google Таблиц
Google Workspace

Создать Google Форму из Google Таблиц

Как запланировать событие в Google Chat
Руководство

Как запланировать событие в Google Chat

Как сменить аватар в Steam
Руководство

Как сменить аватар в Steam