Cómo configurar un servidor de archivos / crontab / bash Apache para permitir el acceso a ciertas horas durante el día y / o de direcciones IP específicas?

Jordan:

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!

Matias Barrios :

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!

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=320407&siteId=1
Recomendado
Clasificación