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

Владение и запуск веб‑серверов в интернете может быть сложной задачей для новичка. Облачные провайдеры облегчают задачу, позволяя быстро поднять виртуальные машины любых размеров. 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 предоставляет пошаговый интерфейс для запуска инстанса без скриптов. Ниже — обновлённая инструкция с пояснениями и советами безопасности.
- Войдите в существующую учётную запись AWS или зарегистрируйтесь на portal.aws.amazon.com. Перейдите в панель EC2.
- Нажмите кнопку “Launch instances” в правом верхнем углу, чтобы открыть мастер создания инстанса.
- Укажите имя инстанса и выберите AMI — образ операционной системы (Ubuntu, Amazon Linux, CentOS и т. п.). Ubuntu часто используется для веб‑серверов, но можно выбрать любую поддерживаемую дистрибуцию.
Выбор типа инстанса
Тип инстанса определяет сочетание 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.
Важно: не оставляйте 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‑клиент.
- В панели EC2 выберите инстанс и нажмите “Connect”.
- Выберите вкладку “EC2 Instance Connect” и нажмите “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.
Поздравляем — ваш Linux‑сервер работает в облаке.
Развёртывание приложений в облаке с помощью AWS
Вместо Apache вы можете установить любое приложение: Node.js, Nginx, Docker, Git, Golang и т. д. Общая последовательность такая:
- Подключиться к инстансу.
- Обновить пакеты и установить зависимости.
- Развернуть код (git clone, scp, CI/CD).
- Настроить систему запуска (systemd, Docker Compose, Kubernetes агент).
- Настроить мониторинг и бэкапы.
Ниже — набор дополнительных материалов и готовых чеклистов для разных ролей.
Чеклист по ролям
DevOps:
- Настроить IAM‑роль с минимальными правами для инстанса.
- Шифровать EBS‑томы.
- Настроить автоматические снапшоты и бэкапы.
- Подключить мониторинг (CloudWatch) и оповещения.
- Включить автоматический патчинг и обновления безопасности.
Разработчик:
- Подготовить скрипт развёртывания (deploy.sh или CI/CD pipeline).
- Настроить конфигурацию окружений (env vars, секреты в AWS Secrets Manager).
- Тестировать локально прежде чем пушить в прод.
Сетевой/безопасность:
- Ограничить SSH по IP.
- Настроить WAF или Web ACL при необходимости.
- Включить логирование доступа и систему IDS/IPS.
Руководство действий (SOP) для запуска веб‑сервера
- Подготовка:
- Создать или выбрать AMI.
- Подготовить key pair.
- Создать security group с правилами SSH (ваш IP), HTTP и HTTPS.
- Запуск:
- Запустить инстанс, выбрать нужный тип и размер EBS.
- Проверка:
- Подключиться через EC2 Instance Connect или SSH.
- Установить веб‑сервер и запустить его.
- Живучесть:
- Настроить systemd для автозапуска.
- Настроить мониторинг и алерты.
- Резервирование:
- Создать 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.
Похожие материалы
Trakt.TV: как отслеживать сериалы и фильмы
Автоматическая смена циферблата Apple Watch
FTP на Windows с FileZilla — настройка и безопасность
Создать Google Форму из Google Таблиц
Как запланировать событие в Google Chat