Estoy intentando un ejercicio determinado por mi instructor. Nos la tarea de la creación de un host virtual que se puede acceder de lunes a viernes / 1-5. Además de eso, hay que permitir el acceso al sitio de la propiedad intelectual "XX.XX.XX.XXX" en cualquier momento.
crontab actual:
* 13 * * 1-5 root apachectl start
* 17 * * 1-5 root apachectl stop
* * * * * root ./bash
Bash archivo:
currIP=$(hostname -I)
case "$currIP" in
*XX.XX.XX.XXX*)
???????
;;
esac
¿Puede alguien explicarme cómo voy a servir a este sitio a la IP sin servir a todo el mundo a la vez?
¡Gracias!
Digamos que esto es su archivo de configuración.
/etc/apache2/httpd.conf
Ejecutar estos comandos:
sudo cp /etc/apache2/httpd.conf all.conf
sudo cp /etc/apache2/httpd.conf restricted.conf
Ahora cree esto en alguna secuencia de comandos en el sistema:
#!/bin/bash
[[ "$1" = "all" ]] && { ln -s --force /etc/apache2/all.conf /etc/apache2/httpd.conf ;}
[[ "$1" = "restricted" ]] && { ln -s --force /etc/apache2/restricted.conf /etc/apache2/httpd.conf ;}
sudo systemctl restart httpd
Y añade permisos de ejecución a la misma:
sudo chmod +x /path/to/your/script.sh
Ahora modifique /etc/apache2/restricted.conf a las solicitudes de filtro de IP. Puede encontrar información sobre ese aquí: https://httpd.apache.org/docs/2.4/es/mod/mod_authz_core.html#require
Ahora fijar la raíz que cron:
sudo crontab -e
Y allí añadir lo siguiente:
* 13 * * 1-5 /path/to/your/script.sh "all"
* 17 * * 1-5 /path/to/your/script.sh "restricted"
¡Y se feliz!