Лабораторна робота 4.4
Порти та firewall
Завдання
Створіть нову security group, яка дозволяє доступ до порту 80 лише зсередини підмережі, в якій буде розміщений ваш інстанс та дозвіл на підключення до порту 22 лише з вашої поточної IP-адреси. (Ви можете підгледіти ваші адресні простори підмереж у сервісі VPC)

Створіть інстанс з Ubuntu Server 22.04 або 24.04.
Призначте для нього security group, яку ви створили в попередньому завданні.

Для того, щоб скріпт спрацював коректно, не забудьте в розділі
Advanced optionsувімкнути доступ до метаданих, в тому числі версії V1.
При створенні вкажіть
user data(наведена нижче). Схожу операцію ми вже робили в ЛР 2.4.
Створіть у розділі Load balancers нову Target group і додайте ваш інстанс в неї

Створіть нову security group, яка дозволить доступ по порту 80 звідусюди

Створіть новий Load balancer (Application load balancer) та вкажіть для нього security group, яку ви створили в попередньому завданні. Також, при створенні load balancer увімкніть опцію Web Application Firewall (AWS WAF)

- Перевірте чи коректно все працює: при переході на DNS name балансувальника ви повинні бачити сторінку з інформацією про ваш інстанс, але при прямому підключенні до інстанса з’єднання не повинно відбуватись.

Завдання з зірочкою (опціональні)
- Залогіньтесь на ваш інстанс та створіть у директорії
/var/www/html/якусь субдиректорію. Всередині створіть файлsecret_admin_panel.htmlз наступним вмістом: - Перевірте що ви можете переглянути цей файл

- Розгляньте і дослідіть сервіс WAF в AWS. Видаліть правила, які були налаштовані в ньому за замовчуванням і створіть власне правило, яке б дозволяло доступ до директорії з файлом
secret_admin_panel.htmlлише для вашої поточної IP-адреси.

- Перевірте що це правило працює спробувавши переглянути цей файл через інше підключення до інтернету, наприклад з телефона. Після зміни IP через впн

- Поміркуйте які ще “скибочки” можна додати в цей бутерброд безпеки і які додаткові переваги вони можуть дати.
- налаштувати https для домену, ще не знаю як взаємодіє балансир з web-application, можливо щоб спілкування між ними також по https було.
- авторизація, аутентифікація для адмін панелі
- налаштувати ролі і права користувачів
- перед ssh поставити bastion
- сховати admin panel за vpn або zerotrust сервіси (cloudflare-tunnel і т.д.)
- і ще дуже багато чого на інших рівнях абстракції і забув найголовніше, налаштувати бекапи :)