Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


master_cs:fortificacion:tm1

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
master_cs:fortificacion:tm1 [2025/02/17 16:47] thejuanvisumaster_cs:fortificacion:tm1 [2025/02/17 17:38] (actual) thejuanvisu
Línea 127: Línea 127:
    
  
-====== Comandos ====== 
-===== Obtener ID de una partición ===== 
-<code> 
-blkid /dev/sda4  
-</code> 
- 
-===== Crear un grupo de volúmenes ===== 
-Ponemos el nómbre que le queremos dar al grupo y los volúmenes que queremos usar para crear este. 
-<code> 
-vgcreate GRUPOVOLS /dev/sda4 
-</code> 
- 
-===== Estender un grupo de volúmenes ===== 
-Primero ponemos el grupo a modificar y después los volúmenes que queramos añadir. 
-<code> 
-vgextend GRUPOVOLS /dev/sdb1 /devsdb2 /dev/sdb3 
-</code> 
- 
-===== Mostrar grupo de volúmenes ===== 
- 
-<code bash> 
-vgdisplay 
-</code> 
- 
-===== Crear un volúmen lógico ===== 
-Con -L indicamos el tamaño, después el grupo de volúmenes que vamos a utilizar y finalmente el nombre del volúmen lógico. 
-<code bash> 
-lvcreate -L 15G GRUPOVOLS VOLUMILLO 
-</code> 
- 
-La ubicación resultante está en: /dev/GRUPOVOLS/VOLUMILLO 
  
 ===== Securización de Aplicaciones ===== ===== Securización de Aplicaciones =====
Línea 189: Línea 158:
  
 <code c> <code c>
-echo 5000000 > memory.high #Se limita a 500000 de memoria el suo del programa+echo 5000000 > memory.high #Se limita a 500000 de memoria el uso del programa
 </code> </code>
  
Línea 212: Línea 181:
 Se pueden ver los contenedores que se pueden crear en /usr/share/ Se pueden ver los contenedores que se pueden crear en /usr/share/
  
-<code>+<code c>
 lxc-create -t alpine -n NOMBRE_CONTENEDOR #En este caso alpine sería el tipo de contenedor lxc-create -t alpine -n NOMBRE_CONTENEDOR #En este caso alpine sería el tipo de contenedor
 </code> </code>
 +Para arrancar el container usamos el siguiente comando:
 +<code c>
 +lxc-start -F -n NOMBRE_CONTENEDOR #el -F indica que es en primer plano y el -n el nombre del contenedor.
 +</code>
 +Para parar el contanier se usa:
 +<code>
 +lxc-stop -n NOMBRE_CONTENEDOR
 +</code>
 +
 +Los containers tienen usuarios predefinidos que se suelen indicar al crear el container. 
 +Podemos ejecutar algo en el container con:
 +<code c>
 +lxc-attach -n NOMBRE_CONTENEDOR /bin/sh #Por ejemplo, ejecutamos un shell en el container
 +</code>
 +
 +Una vez conectados así al contanier le podemos poner una contraseña con el comando "passwd root" y podemos crear un usuario nuevo en esta con "useradd -m NOMBRE". Podemos ver los container arrancados y sus ips con:
 +<code>
 +lxc-ls -f
 +</code>
 +Para entrar en un container que no se ha iniciado con -F podemos usar SSH contra su IP. lxc crea una interface llamada bridge 0 para conectar los containers mediante NAT como si fuera virtualbox. para configurar la red de un container vamos a la dirección:
 +<code>
 +cd /var/lib/lxc
 +</code>
 +Aquí hay una carpeta por container, para configurar uno vamos al que queramos y modificamos el archivo config. Dentro de este se pueden ajustar más parámetros, como el autoarranque o la memoria entre otros. Mediante NFTables podemos comunicar el container con el exterior para que pueda prestar servicios. Esto nos permite arrancar aplicaciones de forma aislada. Dentro de /var/lib/lxc/NOMBRE_CONTAINER/rootfs podemos encontrar los archivos usandos dentro del container. Estos aparecen como pertenecientes al usuario que creó el container, a pesar de ello la máquina los puede usar, esto se debe a que comparte los identificadores con la máquina HOST
 +
 +==== Mandatory Access Control ====
 +Hay 2 tipos:
 +=== SELinux ===
 +Usado por Fedora. __Permisos por archivos__, todo tiene una etiqueta (Archivos, procesos, etc...) que dice que puede acceder a que. Solo se admiten los acceso permitidos por las etiquetas. Para convertir una máquina en SELinux primero hay que instalar los siguientes paquetes:
 +<code bash>
 +apt install selinux-basics selinux-utils selinux-policy-defualt auditd 
 +</code>
 +Tras es activamos selinux con el siguiente comando:
 +<code>
 +selinux activate
 +</code>
 +esto crea un archivo /.autorelabel para etiquetar los ficheros no etiquetados. Selinux necesita EXT4. Si se usa Selinux no se puede compartir el directorio home entre dos distros que no lo usen. Selinux tiene 2 modos:
 +  * Modo permisivo: selinux simplemente manda warnings al log, pero no bloquea el acceso.
 +  * Modo enforce: Bloquea accesos no autorizados, lo malo es que solo avisa la primera vez que se intenta realizar un acceso no autorizado.
 +También añade al grub en /boot/grub/grub.cfg el modo security = selinux. En /etc/selinux/config podemos cambiar el modo de selinux de permisive a enforce.
 +
 +Para ver los avisos generados por selinux podemos usar el siguiente comando:
 +<code>
 +audit2why -a
 +</code>
 +
 +
 +=== APParmor ===
 +Usado por debuan. __Permisos por aplicación__ indicando donde puede acceder y donde no.
 +Para habilitar un programa con apparmor usamos el comando:
 +<code>
 +apparmor_parser /etc/apparmor.d/usr.bin.programa
 +</code>
 +Por defecto el programa se pondrá en modo enforce.
 +Para saber el estado de las aplicaciones en apparmor usamos
 +<code>
 +aa-status
 +</code>
 +para que al usar un programa simplemente mande un warning usamos complain:
 +<code>
 +aa-complain /usr/bin/programa
 +</code>
 +
 +
 +
 +===== Securización de las cuentas de usuarios =====
 +Se trata de endurecer la autenticación y evitar que algunos usuarios tengan más permisos de los que deberían.
 +
 +
 +
 +
 +
 +
 +
 +
 +====== Comandos ======
 +===== Obtener ID de una partición =====
 +<code>
 +blkid /dev/sda4 
 +</code>
 +
 +===== Crear un grupo de volúmenes =====
 +Ponemos el nómbre que le queremos dar al grupo y los volúmenes que queremos usar para crear este.
 +<code>
 +vgcreate GRUPOVOLS /dev/sda4
 +</code>
 +
 +===== Estender un grupo de volúmenes =====
 +Primero ponemos el grupo a modificar y después los volúmenes que queramos añadir.
 +<code>
 +vgextend GRUPOVOLS /dev/sdb1 /devsdb2 /dev/sdb3
 +</code>
 +
 +===== Mostrar grupo de volúmenes =====
 +
 +<code bash>
 +vgdisplay
 +</code>
 +
 +===== Crear un volúmen lógico =====
 +Con -L indicamos el tamaño, después el grupo de volúmenes que vamos a utilizar y finalmente el nombre del volúmen lógico.
 +<code bash>
 +lvcreate -L 15G GRUPOVOLS VOLUMILLO
 +</code>
 +
 +La ubicación resultante está en: /dev/GRUPOVOLS/VOLUMILLO
 +
master_cs/fortificacion/tm1.1739810869.txt.gz · Última modificación: 2025/02/17 16:47 por thejuanvisu