PHP Defaults en Kali Linux
PHP Defaults en Kali Linux
El paquete php-defaults en Kali Linux (y en otras distribuciones basadas en Debian) es un "metapaquete". Esto significa que no contiene el código de PHP por sí mismo, sino que sirve para gestionar las dependencias y asegurar que el sistema utilice la versión de PHP recomendada actualmente.
Aquí tienes una guía rápida de lo que hace y cómo manejarlo:
¿Para qué sirve php-defaults?
Su función principal es actuar como un enlace o puntero. En lugar de que cada aplicación tenga que adivinar qué versión de PHP está instalada (8.2, 8.3, etc.), el sistema consulta php-defaults para saber cuál es la versión estándar del sistema.
Configura rutas: Establece dónde se encuentran los binarios de PHP.
Mantiene versiones: Cuando actualizas Kali, este paquete se encarga de que la transición entre versiones de PHP sea fluida.
Paquetes comunes: Instala archivos compartidos que todas las versiones de PHP necesitan.
Comandos útiles en Kali Linux
Si estás trabajando con PHP en Kali, estos son los comandos que más vas a necesitar:
1. Instalar el paquete predeterminado
Para asegurarte de tener la versión de PHP que Kali considera estándar:
sudo apt update
sudo apt install php-defaults php
2. Verificar la versión activa
Para ver qué versión está "apuntando" actualmente tu sistema:
php -v
3. Cambiar la versión de PHP
A veces, para herramientas de auditoría o desarrollo, necesitas una versión específica. Puedes gestionar esto con update-alternatives:
sudo update-alternatives --config php
Esto te mostrará una lista de las versiones instaladas y podrás elegir la principal mediante un número.
Estructura de Archivos Importante
Cuando instalas PHP a través de estos paquetes en Kali, los archivos de configuración (php.ini) suelen estar organizados así:
| Ruta del archivo | Propósito |
/etc/php/[version]/cli/php.ini | Configuración para la terminal (línea de comandos). |
/etc/php/[version]/apache2/php.ini | Configuración si usas el servidor web Apache. |
/etc/php/[version]/fpm/php.ini | Configuración para Nginx o servidores rápidos. |
Nota para usuarios de Kali
Si estás intentando ejecutar una herramienta de hacking antigua que requiere PHP 7.x y Kali ya tiene la 8.x, php-defaults no te servirá para hacer el "downgrade" automáticamente. En ese caso, deberás añadir repositorios externos (como el de Ondrej Sury) o compilar la versión antigua manualmente, ya que Kali siempre intenta mantener las versiones más recientes y seguras.
Configurar un servidor web en Kali Linux es una tarea común, ya sea para hospedar herramientas de pentesting, crear laboratorios de phishing (con fines educativos) o desarrollar aplicaciones.
Las dos opciones más robustas y utilizadas son Apache y Nginx. Aquí tienes cómo configurar cada uno desde cero.
1. Apache HTTP Server
Es el servidor "clásico" y viene preinstalado en muchas versiones de Kali. Es ideal si necesitas usar archivos .htaccess.
Pasos de configuración:
Instalación:
Bashsudo apt update sudo apt install apache2Iniciar el servicio:
Bashsudo systemctl start apache2 sudo systemctl enable apache2 # Para que inicie con el sistemaHabilitar PHP:
Como mencionamos
php-defaults, asegúrate de que el módulo esté activo:Bashsudo apt install libapache2-mod-php sudo a2enmod php[versión] sudo systemctl restart apache2Directorio raíz: Tus archivos deben ir en
/var/www/html/.
2. Nginx
Nginx es conocido por ser más ligero y rápido manejando conexiones simultáneas. Es la opción preferida para entornos modernos.
Pasos de configuración:
Instalación:
Bashsudo apt update sudo apt install nginxConfigurar PHP (vía PHP-FPM):
A diferencia de Apache, Nginx no procesa PHP internamente; necesita un "puente" llamado FPM.
Bashsudo apt install php-fpmEditar el archivo de sitio:
Debes decirle a Nginx que use el socket de PHP. Edita
/etc/nginx/sites-available/defaulty busca la sección de PHP:Nginxlocation ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php-fpm.sock; }Reiniciar:
Bashsudo systemctl restart nginx
Comparativa Rápida
| Característica | Apache | Nginx |
| Facilidad de uso | Alta (Configuración simple) | Media (Requiere PHP-FPM) |
| Rendimiento | Bueno | Excelente (Bajo consumo de RAM) |
| Configuración | Archivos .htaccess | Archivo de configuración central |
| Uso común | Servidores compartidos, WordPress | Aplicaciones de alto tráfico, Proxies |
Seguridad Básica en Kali
Recuerda que Kali está diseñado para ser una herramienta ofensiva, no para ser un servidor expuesto a internet permanentemente. Si vas a habilitar un servidor web:
Usa un Firewall: Configura
ufwpara permitir solo los puertos necesarios (80 para HTTP, 443 para HTTPS).Permisos de archivos: Asegúrate de que
/var/www/html/no tenga permisos de escritura para todo el mundo (chmod 755).Apágalo si no lo usas:
sudo systemctl stop apache2(o nginx).