Bases del sistema operativo

1

Aviso de renovación del curso

2

Lo que aprenderás sobre la administración de servidores linux

3

Distribuciones más utilizadas de Linux

4

Instalación de Ubuntu Server

5

Instrucciones para instalar CentOS

6

Gestión del árbol de directorios

7

Diferencias entre LESS, CAT, HEAD y TAIL para lectura de archivos

8

Interacción con archivos y permisos

9

Conociendo las terminales en linux

10

Manejo y monitoreo de procesos y recursos del sistema

11

Monitoreo de recursos del sistema

Instalación y manejo de software en Linux

12

Análisis de los parámetros de red

13

Administración de paquetes acorde a la distribución

14

Manejo de paquetes en sistemas basados en Debian

15

Administración de software con YUM y RPM para CentOS

16

Nagios: Desempaquetado, descompresión, compilación e instalación de paquetes

Administración de usuarios

17

Los usuarios, una tarea vital en el proceso de administración del sistema operativo

18

Creando y manejando cuentas de usuario en el sistema operativo

19

Entendiendo la membresía de los grupos

20

Usando PAM para el control de acceso de usuarios

Servicios en el sistema operativo

21

Autenticación de clientes y servidores sobre SSH

22

Configurando DNS con bind

23

Arranque, detención y recarga de servicios

24

NGINX y Apache en Ubuntu server

25

Instalación y configuración de NGINX

26

¿Qué es NGINX Amplify?

27

NGINX Amplify: Instalación y configuración de un servidor para producción

28

Monitoreo de MySQL con Nagios

29

Configuración de Nagios

30

Los logs, nuestros mejores amigos

31

Otros servicios de logs

Bash scripting

32

Las bases de bash

33

Las variables y su entorno de ejecución

34

Automatizando tareas desde la terminal

35

Automatizando la copia de seguridad

36

Crontab

Asegurando tu servidor

37

Entendiendo la gestión de vulnerabilidades

38

¿Qué es una superficie de ataque? Principio del menor privilegio

39

El firewall y sus reglas

40

Escaneo de puertos con NMAP y NIKTO desde Kali Linux

41

Lynis: Herramientas de auditoria de seguridad en Linux

Proyecto

42

Configuración de Node.js en un ambiente productivo

43

Configuración de NGINX para la aplicación de Node.js

Bonus: Linux en Azure

44

Aprende sobre Linux en Azure

45

Despliegue de una aplicación web MEAN

46

Crea una máquina virtual en la nube de Azure

Conclusiones

47

Lo que aprendiste sobre servidores linux

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

1D
0H
48M
22S

Usando PAM para el control de acceso de usuarios

20/47
Recursos

PAM es un mecanismo para administrar a los usuarios de nuestro sistema operativo. Nos permite autenticar usuarios, controlar la cantidad de procesos que ejecutan cada uno, verificar la fortaleza de sus contraseñas, ver la hora a la que se conectan por SSH, entre otras.

Con el comando pwscore podemos probar qué tan fuertes son nuestras contraseñas. Recuerda que para usar este comando en sistemas basados en Ubuntu debemos instalar el paquete libpwquality-tools.

El comando ulimit nos ayuda a listar los permisos de nuestros usuarios. Para limitar el número de procesos que nuestros usuarios pueden realizar ejecutamos ulimit -u max-numero-procesos.

Aportes 80

Preguntas 28

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Amigos para aquellos que no estén muy familiarizados con el tema de límites de recursos y ulimit, hice una guía muy básica y lo mas resumida posible (hasta donde dieron mis conocimientos) para entender un poco mejor el tema, hay un ejemplo práctico para que puedan probarlo. Espero les sea de ayuda. https://drive.google.com/drive/folders/1Veb3DTiNtZiwVziDD0dYp7BSJxtbNUXP?usp=sharing

RESUMEN DE LA CLASE
|
Usando PAM para el control de acceso de usuarios
|
|
Comandos
|
pwscore: Evalúa si una contraseña es buena o mala del 0 al 100
ulimit: Muestra los permisos que tiene el usuario actual. Modificadores:

  • -u numero: Cambia la cantidad de procesos que mi usuario puede ejecutar

|
|
Comandos útiles
|
sudo vi /etc/security/time.conf: Modifica el archivo que indica en que horarios pueden conectarse ciertos usuarios

Buen día todos, me gustaría aportar el siguiente experimento, me parece genial ya que el tema de limitar usuarios en Linux desde sudo es nuevo para mí, y por eso ahondé un poco en la función de ulimit y en el archivo limit.conf, solo para entretenernos un poco.

Consiste en un sencillo script que contará 100000 veces e imprimirá el mismo número la misma cantidad de veces:

#!/bin/bash
for i in {1..100000};
do
echo “contando…”$i
done

luego redirigir la salida del script a un segundo archivo para observar el espacio que ocupa el mismo al final, luego, poder aplicar una función limitadora de espacio (/etc/security/limit.conf) para el usuario que he usado para el experimento.

Pueden observar aquí ↓↓↓ como aumenta el consumo de la cpu tras poner a correr el script, lo cual también podría ser un parámetro más para controlar:

Por ultimo, compruebo como se puede hacer efectiva la función para controlar el espacio usado por el usuario…

Librería para ubuntu

sudo apt install libpwquality-tools

les juro que con este hack el pwscore te da como resultado un 1000%

Entendido, lastima que no se profundizo mucho más, ya que este tema es inmenso y demasiado importante.

ls /etc/pam.d
ls /lib64/security
ls /etc/security
pwscore
ulimit -u 10  --numero de procesos
vi script.sh
chmod +x script.sh
./script.sh
vi /etc/security/time.conf
sudo vi /etc/security/time.conf
gpasswd -a dbz wheel
groups dbz

Me parece que debió profundizarse mucho más en el uso de ulimit. De hecho, al hacer el cambio del número máximo de procesos en Ubuntu, ejemplo 10, ya no se puede volver a definir un número alto pues genera un error. Además al cerrar e iniciar sesión de nuevo, la configuración regresa a su estado predeterminado.
Entonces ¿Cuál es la forma correcta de gestionar ulimit?

pam por defecto tiene 3 carpetas por verificar

° /etc/pam.d
° /lib64/security/
° /etc/security/

pwscore ( validar robustes del password)
NOTA: para usar pwscore en Ubuntu libpwquality-tools



ulimit -a (verificar permisos del usuario)
ulimit -u 10 (cambiar permisos de max. de procesos)

Para configurar la lógica de PAM y darle permisos y horarios a los diferentes usuarios.

configurar la carpeta /etc/security/time.conf

NOTA : Debes darle permisos de usuario root a tu usuario:

gpasswd -a platzi wheel ( para comando de root en redhat)

;;usuario|usuario2;Wk0800-1800

; = nos deje loguear por cada uno de los usuarios de SO
usuario|usuario2 = usuarios que quiero que se logueen en horarios específicos
Wk = semana
0800-1800 = horario de 8am a 6pm

Solamente quería decirte que si llegaste hasta aquí, es porqué puedes lograr finalizar el curso, hay etapas más difíciles que otras, pero estoy seguro que con la ayuda de la comunidad y mirando nuevamente algún video podrás finalizar el curso. falta poco, a no rendirse!

Si están haciendo el curso con Ubuntu Server 20.04.4 al hacer el comando:

ls /lib64/security/

Les saldra el siguiente error:



Les dirá que el directorio no fue encontrado, buscando donde podía estar la carpeta use find para conseguir uno de los archivos que le aparece el profesor y encontré la carpeta en la siguiente ruta:

ls /lib/x86_64-linux-gnu/security

Espero que les ayude en caso que les pasara lo mismo.

Todos los intentos de registro están en: /var/log/auth.log, por lo que es recomendable ejecutar el comando:

tail -n 25 /var/log/auth.log

para ver los últimos 25 registros o usar el comando grep para localizar registros por medio de expresiones regulares.

Lamentablemente está muy incompleto todo lo referente a ulimit, máximo numero de archivos abiertos, como modificarlo y porque modificarlo, por ejemplo he sabido que hay muchas aplicaciones como MariaDB y Mongo exigen un limite mínimo de 60000, en el caso de MDB es de 500000, el curso debería servir para profundizar en esto ya que se llama Administración de servidores Linux.

Comandos de la clase:

pwscore: Evalúa el nivel de seguridad de una contraseña en una escala de 0 a 100
ulimit: limita el numero de procesos que puede tener un usuario
ulimit -u 10: limita el numero de procesos del usuario a 10
vi /etc/security/time.conf: Archivo que indica las configuraciones para limitar los horarios de acceso de los usuarios.
gpasswd -a nodejs wheel : Brinda permisos de administrador al usuario
** ;;ariana|nodejs;Wk0800-1800 **: Si se añade al archivo, deja que se logueen por los usuarios y servicios que se tengan en el sistema operativo, le establecemos quienes seran los usuarios (nodejs y ariana) y podrán loguearse entresemana de 8 am a 6 pm.

PAM: Pluggable Authentication Modules
Colección de librerías para configurar métodos de administración de usuarios

PAM tiene 3 carpetas principales:

  • ls /etc/pam.d información de toda la configuración que se puede hacer sobre PAM.

  • ls /lib/lib64/security accesos de PAM

  • ls /etc/security/ cambios de configuración para que los tome PAM

PAM es un framework en Linux utilizado para la autenticación módulos de autenticación conectables (Pluggable Authentication Modules). Su einfoque principal es autenticar usuarios.
Los cuatro tipos de servicios PAM:
Módulos de servicio de autenticación.
Módulos de administración de cuentas.
Módulos de gestión de sesiones.
Módulos de gestión de contraseñas.

no me siento muy familiarizado con centos jejeje pero realice la instalacion de pwscore en mi ubuntu virtual 😄

Problema interesante al realizar el ulimit -u 100 me indica el sistema lo siguiente:

bash: fork: retry: resource temporarily unavailable
bash: fork: retry: resource temporarily unavailable
bash: fork: retry: resource temporarily unavailable
bash: fork: retry: resource temporarily unavailable
bash: fork: Resource temporarily unavailable
bash: fork: retry: resource temporarily unavailable

al parecer limitar la cantidad de procesos por usuario a tan poco, hace que los recursos para el usuario se sobrecarguen

usando PAM:

PAM tiene 3 carpetas por defecto:
1 - /etc/pam.d/
aca encontaras la info sobre todas las configuracino que puedes hacer sobre PAM
2 - /lib64/security/
aca veremos los accesos de PAM
3 - /etc/security/
pwscore ---> para evaluar la calidad de una contraseña (no esta por defecto en ubuntu)
ulimit -a
ulimit ---> ambos para verificar el numero de permisos en cuanto procesos que tiene el usuario
ulimit -u 10 ---> limitamos el numero de procesos a 10
/etc/security/time.conf ---> este archivo modifica los permisos de ingreso con ssh , permite modificar lso dias donde puedo acceder, las horas, etc

sudo = wheel , sudo es en dist basadas en debian , wheel en red hat
en el time.conf esta la documentacion de como usarlo
ej:

*;*;anthony:nodejs;WK0800-1900

ahi seria dar todos los permisos, para usuario anthony, y nodejs, dias de semana de 8AM a 7PM

Debian/Ubuntu = Grupo sudo
RedHat/CentOS = Grupo wheel

sin duda alguna no me equivoque de curso …exelente

He usado CentOS 8 para hacer las pruebas. Con ulimit, si no le pongo un límite de 240 mínimo, ya empieza a decirme que no hay recursos:

Aparte, aunque le ponga el límite alto, al cerrar y abrir la consola de nuevo, el límite desaparece. ¿Es normal que no se quede guardado?

RESUMEN CLASE 19

Con el comando “pwscore” podemos probar qué tan fuertes son nuestras contraseñas.

$ pwscore

** Si tienes ubuntu puedes instalar con el siguiente comando

$ sudo apt install libpwquality-tools

El comando “ulimit” nos ayuda a listar los permisos de nuestros usuarios.

$ ulimit

Para limitar el número de procesos que nuestros usuarios pueden realizar ejecutamos.

$ ulimit -u max-numero-procesos

NOTA:
Para ver las librerias de pam en Ubuntu se tiene que ingresar el comando

$ ls /lib/x86_64-linux-gnu/security

y no “$ ls /lib64/security/”

PAM es un mecanismo para administrar a los usuarios de nuestro sistema operativo. Nos permite autenticar usuarios, controlar la cantidad de procesos que ejecutan cada uno, verificar la fortaleza de sus contraseñas, ver la hora a la que se conectan por SSH, entre otras

Si estas en CentOS y no puedes instalar libpwquality, sigue estos pasos:

sudo yum update
sudo yum install libpwquality
rpm -qa | grep libpwquality

Espero sea de tu ayuda, saludos!

Cabe mencionar que también existe un archivo llamado /etc/pam.conf, en donde de igual manera se especifican reglas de servicios idénticas a las que se pueden observar en /etc/pam.d, pero especificando un nombre de aplicación en definición de la regla al inicio de la línea o sentencia. Este archivo será consultado solo si el directorio /etc/pam.d no existe.

El suite de PAM viene instalada por defecto en casi todas las distribuciones de Linux basadas en Debian o RedHat, y si como yo tu directorio de módulos no se encuentra ni en /lib/security ni en /lib64/security, puedes utilizar el gestor de paquetes de tu preferencia para buscar los paquetes instalados en tu sistema operativo. En mi caso, Raspbian 10 (básciamente Debian), utilicé el gestor dpkg:

$ dpkg-query --seach "pam"

Luego, busqué en la lista resultante algún paquete que comenzara por libpam-modules y me di cuenta que mi directorio de módulos se ubicaba en /lib/arm-linux-gnueabihf/security/.

Yo administro servidores Linux pero este curso me ha permitido ver mas cosas útiles para reforzar mis conocimientos.

Gracias y Saludos.

Existe PAM en distro basadas en debian > ubuntu ?

¿Alguno tiene la extrapolacion de este concepto para Debian?.
En Ubuntu 20.04 no encuentro el archivo de times.config

el grupo que permite ejecutar comandos de **root** se denomina:
sudo para distribuciones Debian/Ubuntu
wheel para distribuciones Redhat/CentOS

pregunta de examen diría un profesor mio!

El comando ulimit nos ayuda a listar los permisos de nuestros usuarios. Para limitar el número de procesos que nuestros usuarios pueden realizar ejecutamos ulimit -u max-numero-procesos.

Con el comando pwscore podemos probar qué tan fuertes son nuestras contraseñas. Recuerda que para usar este comando en sistemas basados en Ubuntu debemos instalar el paquete libpwquality-tools.

buenas, no he podido instalar paquetes en mi version de ubuntu para utilizar el comando pwscope, que me parece muy interesante.
Comando ejecutado: sudo apt-get install libpwquality-tools
mensaje: E: no se ha podido localizar el paquete libpwquality-tools
he probado algunas fuentes y me arroja el mismo mensaje.
Desde ya gracias!

este es un excelente libro si quiere saber mas, aunque esta en ingles, es muy recomendable, no se si lo pueden conseguir en español,
Linux Command Line and Shell Scripting Bible.

PAM es un mecanismo para administrar a los usuarios de nuestro sistema operativo. Nos permite autenticar usuarios, controlar la cantidad de procesos que ejecutan cada uno, verificar la fortaleza de sus contraseñas, ver la hora a la que se conectan por SSH, entre otras.

Pero si el mismo usuario se configura sus restricciones, no veo mucho sentido porque después podría cambiarlos, cómo lo limitaría esto?

Me aparece ese error

Que velocidad la de estos docentes, van a 7200rpm! Que cosa tan berraca!

para instalar esta libreria en ubuntu se hace de esta manera :

sudo apt install libpwquality-tools

Si estas en CentOS y en el 2023, no es necesario abrir una nueva consola solo en la terminal teclea el comando:

su

Posteriormente la contraseña del usuario root y entraras al modo root, saludos!

Me hizo falta en aprender a cambiar nombre de usuario 😦
Pero encontré un articulo y lo agregue en este link.

PAM
Tiene tres carpetas

  • . /etc/pam.d
  • . /lib64/security
  • /etc/security/ --> si estas en wsl probablemente tengas que acceder a esta carpeta /lib/x86_64-linux-gnu/security

para usar el comando pwscore en algunas ocaciones pedira isntalar el paquete, esto sirve para validar que tan fuerte o segura es la contraseña

sudo apt install libpwquality-tools

ulimit identifica los procesos que un usuario puede ejecutar. en el apartado de max user processes

Para cambiarlo se utiliza ulimit -u 10

vi /etc/security/time.conf

muy buena explicacion del profe

me encanta este curso xq da aconocer con el tema de limites de recursos

Resumen

  • Agregar usuario
    sudo adduser <usuario>

  • Eliminar usuario
    sudo userdel <usuario>

  • Mover de grupo a usuario
    sudo gpasswd -a <usuario> <grupo>
    Ej. sudo gpass -a testuser sudo

  • Cambiar de usuario
    sudo su <usuario>

  • Editar acceso de ingreso al servidor
    sudo vi /etc/securoty/time.conf

hubiera sido bueno que hubieras especificado en que sistemas estamos trabajando si en en Ubuntu o en el CentOS, solo es un comentarios, me gustan tus cursos 👍

Compañeros si desean ingresar al usuario root sin recurrir a otra terminal pueden ejecutar el comando sudo su y para salir del usuario root su - nombre-usuario

Muy interesante

rangos de horario que un usuario esta habilitado a usar ssh

limites

limites

pwscore es bueno…si eres muy principiante en temas de seguridad; esto porque puedes poner una contraseña en minusculas con veinte caracteres usando tu nombre, y la calificará como 100, no tiene criterios de uso de números, mayusculas, minúsculas y caracteres especiales…

Modify etc/security/time.conf: manage user's permissions for ssh connections to the server

Para usar pwscore en Ubuntu hay que instalar libpwquality 1.4.2 no lo pude hacer por consola asi que lo hice por synaptic y ahi quedo

Este curso si me costo porque era PAM, y tuvo otros temas como ulimit, y tuve que volverlo a ver v

Muy buen aporte el de probar las contraseñas con pwscore.
Realmente no la conocia.
Muchas gracias

Increibleeeee

Veía esto de restringir procesos como algo molesto para el usuario pero con el ciclo infinito ya veo la utilidad, casi que una obligación

Excelente explicación.

pam
control de procesos
control de usuarios

El documento que está en los Archivos y enlaces es acerca de la jerarquización de archivos en linux?

restringir el acceso al servidor

PAM : Pluggable Authentication Modules

para instalar pwscore:
apt-get install libpwquality-tools

bracketed-paste-magic:12: fork failed: resource temporarily unavailable
como arreglo esto jeje

Importantísimo limitar el número de procesos por https://es.wikipedia.org/wiki/Bomba_for. Aunque en la Wikipedia pone otra forma de limitar el número de procesos…

Hay un problema creo que ya no se encuentra disponible libpwdquality-tools

excelentes comandos que no lo tenia dentro de mi bitacora.

una gran herramienta PAM

excelente

y cuando creó el grupo wheel?

instalado en centos y ubuntu 😃

Gracias

Excelente esto no lo sabía!!

Me gusta mucho estos temas, muy buena clase

PAM "un método para autenticar usuarios en el sistema"

genial para administracion de usuarios

muy buen aporte!!!

belleza