62 lines
2.4 KiB
Markdown
62 lines
2.4 KiB
Markdown
# Security as Code for Automated Deployment k3s in Proxmox environment
|
||
|
||
## 📘 Описание
|
||
|
||
Этот проект предоставляет автоматизированный и безопасный способ развертывания кластера [K3s](https://k3s.io/) в среде [Proxmox VE](https://www.proxmox.com/en/proxmox-ve). Используются подходы **Security as Code**, чтобы обеспечить безопасную конфигурацию инфраструктуры на всех этапах — от создания виртуальных машин до установки кластерных компонентов и настройки сетевого взаимодействия.
|
||
|
||
## 🔧 Возможности
|
||
|
||
* 📦 Полная автоматизация развертывания K3s-кластера
|
||
* 🔐 Реализация лучших практик безопасности (SSH, firewall, user hardening и пр.)
|
||
* 📜 IaC (Infrastructure as Code) с использованием Ansible, Terraform и Bash
|
||
|
||
## 📁 Структура проекта
|
||
|
||
```
|
||
├── ansible/ # Ansible playbooks для настройки VM и K3s
|
||
├── terraform/ # Terraform модули для создания VM в Proxmox
|
||
└── README.md
|
||
```
|
||
|
||
## ⚙️ Требования
|
||
|
||
* Proxmox VE 7.x+
|
||
* Terraform 1.0+
|
||
* Ansible 2.10+
|
||
* Bash (Linux/macOS)
|
||
* Доступ к Proxmox через API
|
||
* SSH-ключ для доступа к виртуальным машинам
|
||
|
||
## 🚀 Установка
|
||
|
||
1. **Склонируйте репозиторий:**
|
||
|
||
```bash
|
||
git clone https://git.vadzik-iot.ru/vadzik/sac_project.git
|
||
cd k3s-proxmox-sec
|
||
```
|
||
|
||
2. **Настройте переменные окружения и secrets (Terraform/Ansible):**
|
||
|
||
|
||
3. **Создайте виртуальные машины через Terraform:**
|
||
|
||
```bash
|
||
cd terraform
|
||
terraform init
|
||
terraform apply
|
||
```
|
||
|
||
4. **Запустите Ansible-плейбук для настройки K3s и обеспечения безопасности:**
|
||
|
||
```bash
|
||
cd ../ansible
|
||
ansible-playbook site.yml -i inventory.ini
|
||
```
|
||
|
||
## 🔐 Безопасность
|
||
|
||
* Минимизация прав пользователей
|
||
* Только доступ по SSH-ключу (пароли отключены)
|
||
* Проверка хэшей и сертификатов при установке
|