Este proyecto documenta mi proceso de aprendizaje práctico en administración de sistemas Linux utilizando AlmaLinux como entorno base dentro de máquinas virtuales Hyper-V. A través de distintos módulos, configuro servicios esenciales, automatizo tareas y fortalezco la seguridad del sistema, consolidando conocimientos clave sobre el ecosistema Linux tipo RHEL.
- Adquirir experiencia práctica en administración de servidores Linux.
- Configurar servicios web, de red, seguridad y automatización.
- Preparar documentación clara y compartible sobre entornos empresariales.
- Desarrollar habilidades técnicas orientadas a roles DevOps, SysAdmin o IT Support.
- Sistema base: AlmaLinux 10.0 (Purple Lion)
- Virtualización: Hyper-V (Windows 11)
- Red configurada vía NAT con conectividad externa
- Usuarios, servicios y scripts configurados paso a paso
- Configuración de red e internet
- Actualización del sistema con
dnf - Creación de usuarios y asignación de permisos administrativos
- Instalación de herramientas esenciales
- Instalación y activación de Apache
- Verificación de servicio y pruebas locales
- Configuración básica de
firewalld - Exploración de
SELinuxen modo permisivo - Preparación para futuras medidas de seguridad (VPN, fail2ban, DNSCrypt)
- Creación de scripts para automatizar tareas
- Integración de MariaDB y PHP para completar un stack LAMP
- Automatización de tareas mediante scripts Bash y Ansible
- Migraciones simuladas entre versiones con ELevate
- Contenerización con Podman o Docker
📘 Servidor Web - Proyecto Netservices
🧩 Descripción general Netservices es un sistema web basado en PHP que gestiona accesos diferenciados por rol:
- 🔐 Administradores acceden a paneles de gestión.
- 👤 Usuarios normales visualizan su contenido personalizado.
📁 Estructura de la Aplicación
🔐 Gestión de accesos
- Sesiones activadas vía session_start().
- Usuarios son redirigidos según su rol (admin o usuario).
- Seguridad reforzada con:
- /controllers/admin/require_admin.php
- /controllers/usuario/require_usuario.php
- Reestablecimiento de contraseña y edición de perfil en /controllers/usuario/cambiar_password.php.
🚀 Navegación dinámica El archivo header.php muestra enlaces personalizados según el tipo de sesión activa. Las rutas se construyen con la constante BASE_URL definida en /config/routes.php.
🧩 Requisitos
- Servidor Apache (ej. XAMPP, AlmaLinux + Apache)
- PHP ≥ 8.0
- Base de datos MySQL/MariaDB
- Extensiones recomendadas:
- mysqli
- mbstring
- json
Este proyecto incluye un sistema de autenticación y panel administrativo usando PHP nativo + conexión segura a MySQL mediante archivo .env.
-
Cloná el repositorio:
git clone https://github.com/usuario/netservices.git cd netservices
2- Copiá el archivo .env.example y renombralo como .env: cp .env.example .env
3- Editá el .env con tus credenciales de MySQL: Dotenv DB_HOST=localhost DB_USER=tu_usuario DB_PASSWORD=tu_clave DB_NAME=tu_DB
4- Instalá las dependencias con Composer: >>composer install
5- Accedé desde el navegador:
http://localhost/netservices/public/
🔐 Seguridad
- .env protegido por .gitignore
- Conexión modular usando Dotenv
- Separación por capas (config, public, lógica)
- Documentación oficial AlmaLinux
- Laboratorios Linux recomendados
- Blog técnico personal (pendiente de integrar)
Este repositorio forma parte de mi portafolio técnico. Para colaboraciones, oportunidades o sugerencias:
- GitHub: github.com/dakardu
- LinkedIn: linkedin.com/in/dagobertoduran/

