Diferencia entre revisiones de «Scripts»

Sacado de cristobal.wiki, presentado sin garantia y con mucho <3.
Ir a la navegaciónIr a la búsqueda
Línea 44: Línea 44:
Entre otras cosas, cambia si se decide que los profesores no salen a internet por el proxy y si los alumnos pueden acceder al router de los profesores.
Entre otras cosas, cambia si se decide que los profesores no salen a internet por el proxy y si los alumnos pueden acceder al router de los profesores.


=== instalar.sh ===
==== instalar.sh ====
Instala los paquetes necesarios, si la variable del entorno "interfaz" es "no", no instala ni NGINX ni PHP.
Instala los paquetes necesarios, si la variable del entorno "interfaz" es "no", no instala ni NGINX ni PHP.



Revisión del 11:21 17 dic 2025

En el GitHub hay varios scripts.

Hay tres tipos de script, los auxiliares, los "testing" y los finales.

Auxiliares

Los scripts auxiliares se encuentran en la carpeta /aux/ en el repositorio. entre ellos están:

generar_cert.sh

generar_cert.sh nos genera un certificado openssl y lo mete en /etc/squid/ssl_cert, esta carpeta se podrá cambiar dentro de poco.

No acepta argumentos, pero puedes abrirlo manualmente y escribirle la información que te pide.

También intenta recrear la base de datos de SSL de Squid, si esto falla, es por que ya existe. No te preocupes.

Ejemplo de uso:

aux/generar_cert.sh

generar_dhcp.sh

Este script genera la config para el servidor dhcp (dhcpd.conf), toma varios argumentos, numerados, son:

  1. IP de la Red (La maquina donde estamos ejecutando esto)
  2. El dispositivo (Por ejemplo, enp0s8, eth2...)
  3. Red (La IP de la red (NO ES LO MISMO QUE EL 1), por ejemplo: 10.0.0.0)
  4. (Opcional) --append, le decimos que no re-cree el archivo cosas/dhcp.custom, sino que añade a el. --append **tiene** que estar en la posición 4, si no, sera ignorado.

La salida va por defecto a cosas/dhcp.custom

Ejemplo de uso:

aux/generar_dhcp.sh 10.0.0.1 enp0s8 10.0.0.0 --append

generar_red.sh

Toma varios argumentos, que luego usa como pistas (No son estrictamente necesarios, pero los recomiendo)

  1. 1, o cualquier otra cosa (1=Generar todo de nuevo (Sobrescribe en vez de añadir), cualquier otra cosa=ignorado)
  2. IP de tu maquina en la red
  3. Adaptador de red (enp0s8, eth0...)
  4. Dirección de la red
  5. Mascara de red

Si faltan estos, el script funcionara con normalidad, pero no te dara "pistas" sobre lo que puede ir en cada campo.

generar_squid.sh

Genera un archivo de squid.conf "valido" con las opciones del entorno establecidas por los scripts de configuración, y las marca en el archivo de configuración como comentarios, esto sirve para hacer el sistema mas reproducible.

Entre otras cosas, cambia si se decide que los profesores no salen a internet por el proxy y si los alumnos pueden acceder al router de los profesores.

instalar.sh

Instala los paquetes necesarios, si la variable del entorno "interfaz" es "no", no instala ni NGINX ni PHP.

iptables.sh

Hace la configuración de IPTABLES, para dejar pasar a internet lo que entre por la interfaz enp0s8, 9 y 10, pasándolos al proxy (La enp0s8 solo pasa por el proxy si se configura como "si")

pers2.sh

Te hace preguntas sobre la interfaz de configuracion, los alumnos y si los profesores salen a internet a traves del proxy.

personalizaciones.sh

Es un boilerplate que llama a los scripts de generar redes y generar DHCP, o genera sus propias configuraciones si le dices que "N"(o).

rootssh.sh

El script que se activa si activas "permitir login por ssh de root con contraseña", esto toma como entrada el archivo /usr/share/openssh/sshd_config y lo cambia, descomentando y cambiando la linea "PermitRootLogin" de "prohibit-password" a "yes", guardando el nuevo archivo sin ningun otro cambio al archivo "/etc/ssh/sshd_config", luego reinicia el servicio de openssh

gen_variables.sh

Guarda las variables en un fichero, solo se ejecuta si has decidido romper las cosas y ejecutar el script principal sin superusuario (Lo cual no recomiendo)