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:

5D
12H
10M
57S

Manejo de paquetes en sistemas basados en Debian

14/47
Recursos

Antes de actualizar el software de nuestro sistema debemos ejecutar el comando sudo apt update para saber qué paquetes pueden actualizarse y desde dónde se realizará la descarga. Luego de esto podremos actualizar todas las herramientas del sistema usando el comando sudo apt upgrade.

Recuerda que todo lo que tenga que ver con actualizaciones o modificaciones del sistema operativo necesitará permisos con sudo. También necesitarás conexión a Internet.

Aportes 82

Preguntas 18

Ordenar por:

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

o inicia sesión.

RESUMEN DE LA CLASE
|
Manejo de paquetes en sistemas basados en Debian
|
Comandos útiles
|
sudo apt update: Actualiza la información local sobre los repositorios de Ubuntu
sudo apt upgrade: Actualiza todos los programas que tenemos instalados en la máquina
sudo snap install paquete: Instala un paquete con el nuevo gestor de paquetes de Canonical, snap
date: Imprime la fecha actual

Mis apuntes de esta clase:

<h1>2.3 Manejo de paquetes en sistemas basados en Debian</h1>

apt-get update ó apt update
Actualización de los índices del SO.

Cualquier update del SO se debe ejecutar con sudo.

apt-get upgrade ó apt upgrade
Para descargar e instalar los paquetes de actualización.

En entornos productivos siempre se debe verificar que la información mostrada sea acorde a lo esperado.

apt dist-upgrade
Realiza actualizaciones a escala de kernel. Estas actualizaciones siempre requieren reinicio, a no de ser de tener Live Patch permite estas actualizaciones sin tener que hacer reinicio, pide registrar hasta 3 máquinas para este proceso.

apt seach paquete ó apt-cache search
Para realizar busqueda de paquetes. Para refinar la búsqueda agregar al final del nombre de paquete $, y encerrar todo el nombre del paquete entre comillas. “mysql-server$”.

tzdata es el paquete que configura la hora del servidor. Para reconfigurarlo utilizamos dpkg-reconfigure tzdata.

snap
Otra (nueva) manera de buscar paquetes.
snap search nombre_paquete ==> buscar un paquete.
snap refresh --list ==> Para ver toda la lista de paquetes.
snap info nombre_paquete ==> verificar la información de un paquete especifico.

Complemento un poco:

1 $ apt update

2 $ apt list --upgradable

-Antes de actualizar, lista los paquetes que están disponibles para actualizar, ya que puede haber como se menciono versiones de paquetes que no sean compatibles con algún aplicativo que esta corriendo en el server, ejemplo php o alguna versión de kernel nueva que no sea compatible con algún harware u otro cosa. Pero sobre todo checar bien las de nivel seguridad ya que esas tienen prioridad sobre el resto de actualizaciones disponibles.

_$ apt-cache show nombre_paquete

Con lo anterior podrías ver mas info del paquete sobre todo la opción Priority:

3 $ aptitude safe-upgrade
– instalas las actualizaciones disponibles

No recomiendo usar el parametro “-y” (aptitude safe-upgrade -y) para cuando se presente una pregunta si/no ó Y/N, para que acepte como si, ya que en estos casos no es buena practica aceptar que se instale todo sin verificar primero. Se evitaran muchos dolores de cabeza

aptitude install 
	Instala uno o más paquetes.

aptitude update
	Actualiza la lista de paquetes disponibles desde las fuentes de apt (equivale a “apt-get update”)

aptitude safe-upgrade
	Actualiza los paquetes instalados a su versión más reciente. Los paquetes instalados no se eliminarán a menos que no se utilicen. Los paquetes no instalados se pueden instalar para resolver dependencias a menos que se invoque la orden --no-new-installs.

aptitude full-upgrade
	Actualiza paquetes instalados a su versión más reciente, instalando o eliminando paquetes si es necesario. Esta orden es menos conservadora que safe-upgrade, y por ello más proclive a ejecutar acciones no deseadas. Sin embargo, es capaz de actualizar paquetes que safe-upgrade es incapaz de actualizar

Ohhh ahora todo cobra sentido, siempre quería saber la diferencia entre update, upgrade y dist-upgrade xD

Como dato curioso, si tienes un disco duro dañado es posible que estos comandos rompan tu sistema operativo, yo antes tenía una laptop con un disco duro ya un poco gastado, y siemore que quería ejecutar estos comandos se rompía todo mi sistema operativo, en especifico snap era el que me rompía todo y mi PC nunca iniciaba, así que le agarre miedo a eso comandos jaja, recientemente cambié a un SSD y todo parece ir bien (Por ahora)

Aproveche a actualizar los paquetes de mis servidores:D!

Fue maravilloso conocer SNAP 😳

“Los nuevos paquetes Snap incluyen todos los archivos necesarios para la correcta instalación y ejecución de una aplicación y todas las dependencias del mismo de manera que la instalación esté asegurada. Además, tanto la aplicación como las dependencias se instalan de manera aislada evitando conflictos entre ellas y que, si se modifica una dependencia, otra aplicación pueda dejar de funcionar.”

Fuente: https://www.redeszone.net/2016/05/02/funcionan-las-nuevas-aplicaciones-snap-ubuntu/

Entendido

sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt search mysql
sudo apt search "mysql-server$"
sudo apt-cache search "mysql-server$"
dpkg -l
sudo dkpg-reconfigure tzdata
date
sudo snap search aws-cli
sudo snap refresh --list
sudo snap info aws-cli
sudo snap install canonical-livepatch

Para el caso en que tal vez no se tenga instalado el package tzdata, que tampoco se disponga de internet en el servidor, pueden aplicar esta forma para reconfigurar el tiempo del sistema:

Para saber si en la actualización no se rompió algun paquete y si es así arreglarlo, sudo apt dist-upgrade

Diferencias entre apt-get update y apt-get upgrade

apt-get update: actualiza una lista de paquetes disponibles, pero no instala o actualiza ningún paquete
apt-get upgrade: Instala las nuevas versiones de los paquetes que se tienen
**apt-get update && apt-get upgrade **: Ejecuta ambos pasos

Diferencia entre apt y apt-get
apt es un subconjunto de apt-get y apt-cache. apt-get y apt-cache se usan comúnmente cpmp “backend”. apt por otro lado esta pensado en el usuario. Si bien apt-get y apt se pueden usar de forma casi idéntica, últimamente se recomienda más el uso de apt.

apt es un subconjunto de apt-get y apt-cache. apt-get y apt-cache se usan comúnmente como “backend”. apt por otro lado esta pensado en el usuario. Si bien apt-get y apt se pueden usar de forma casi idéntica, últimamente se recomienda más el uso de apt.

Lo que menciono de que antes de actualizar los paquetes es importante verificar que las aplicaciones que funcionan en ese servidor sean compatibles, es super importante porque a veces por un pequeño cambio de versión de algún paquete, puede llegar a detenerse toda la aplicación.

Complementando:

• upgrade, actualizará los paquetes disponibles, pero no todos. Descargará y actualizará paquetes, pero de software que no tenga que ver con, digamos, componentes importantes, como puede ser el kernel de Linux. Básicamente evitará actualizar paquetes que requieran que se eliminen otros paquetes por cambios de dependencias.
• dist-upgrade: lo que hace este segundo comando es parecido a lo que hace el primero, pero durante la actualización hará varias consultas sobre la configuración de los paquetes. Esta opción sí actualizará componentes como el kernel de Linux.
• full-upgrade: como hemos avanzado, se trata de otra manera de llamar a la anterior o viceversa. Ambas opciones eliminarán paquetes que se han instalado automáticamente si necesitan solucionar conflictos en las actualizaciones de dependencias de los paquetes.

Entonces todo va de esta manera:
sudo apt update Actualizacion de indices
sudo apt-get update Actualizacion de indices
sudo apt upgrade Realiza un upgrade
sudo apt dist-upgrade Realiza un upgrade
sudo apt search mysql buscar mysql
sudo apt search “mysql$” buscar mysql mas especifico
sudo apt-cachesearch “mysql-server$” buscar mysql server mas especifico

dpkg -l --> Listara todos los paquetes
sudo dkpg-reconfigure tzdata --> Reconfigurara zona horaria
date --> Mostrara la fecha y hora

sudo snap search aws-cli --> Busca con snap la consola de amazon
sudo snap refresh–list --> Busca con snap todos los paquetes
sudo snap info aws-cli --> Busca con snap la info de aws
sudo snap install canonical-livepatch --> Actualización kernel sin reiniciar

Muchas veces pueden tener errores a la hora de hacer un update por los paquetes .deb que no pueden ser accedidos (no por permisos, sino por mantenimiento de software). Como en el caso de este problema https://github.com/balena-io/etcher/issues/3084.
Hay que recordar que estos se encuentran en la ruta /etc/apt/sources/ y para borrar esos dominios que nos dan error podemos hacerlo con:

sudo nano /etc/apt/sources.list```

Borramos los dominios que esten dandonos error, damos CTRL+X, yes, ENTER y listo, ya podemos hacer el update.

El servicio para q’ realices actualizaciones del kernel, sin tener q reiniciar:

sudo snap install canonicall-livepatch 

Tienes que generar un token, aqui los estan los enlaces para eso
https://ubuntu.com/security/livepatch
https://snapcraft.io/docs/getting-started#5

En caso de instalar alguna actualizacion que me cause un conflicto con algun otro software o aplicativo, como puedo desinstalar esa actualizacion especifica?

sudo apt-get update: Actualiza los indices que están en el sistema operativo.

sudo apt-get upgrade: Verifica los paquetes nuevos del sistema operativo y los descarga e instala.

sudo apt-get dist-upgrade: Actualiza paquetes en el kernel

sudo apt search nombre_del_paquete: Busca el paquete.

sudo apt search “nombre_del_paquete$”: Busca más precisa del paquete.
dpkg -l: Muestra el nombre del paquete, la versión, la arquitectura y una descripción.

sudo dpkg-reconfigure nombre_del_paquete: Se puede configurar el paquete.

sudo snap search nombre_del_paquete:Gestor de paquetes.

Pueden usar el comando:

apt-cache policy <paquete>

para saber que version tenemos y cual es la version mas acual de esta

Ejemplo:

sudo apt-cache policy firefox

Output:

firefox:
  Instalados: (ninguno)
  Candidato:  102.0+build2-0ubuntu0.21.10.1

Con respecto a lo que se habla en el minuto 3:30 mi opinión es la siguiente:

Usen Docker y despreocúpense

Al recibir una respuesta del servidor, la letra en MAYUSCULA es la que esta predefinida (por default) al momento de no ingresar una cadena de texto y dar ENTER, el servidor (o el programa) tomara esa respuesta

En un servidor productivo: Hacer pruebas (en máquinas de prueba o máquinas virtuales) para ACTUALLIZAR los paquetes del sistema, para comprobar que el sistema siga funcionando, así como también hacer un BACKUP del servidor antes de actualizar el sistema)

sudo apt dist-upgrade solicita varias confirmaciones (dependiendo de la cantidad de paquetes a actualizar) ya que también actualiza componentes del kernel.

Muy buena clase instructor Jhon, ahora entiendo mejor el manejo de paquetes en este sistema, por cierto, me gusto el uso del comando sudo dpkg-reconfigure tzdata para establecer la hora de la zona horaria deseada.

La configuración de apt-get se encuentra en /etc/apt/sources.list, si quisiéramos agregar mas archivos con mas repositorios utilizamos el archivo sources.list.d localizado en /etc/apt/sources.list.d.

En este archivo podemos agregar líneas con los repositorios que queremos añadir a nuestro sistema.

apt list --installed | grep "nombre_paquete"
Esta es otra opción, para saber si esta o no instalado un paquete

PAra los que quieran copiar comando pueden conectarse atraves del cdm o descargarse una terminal y acceder via ssh

ssh [email protected] - 22

Para los que tenemos dudas sobre el comando snap:

Es un comando que permite instalar, configurar, remover y actualizar snaps. Los Snaps son paquetes que funcionan en diferentes distribuciones de Linux, permitiendo así una distribución segura y una operación de las más recientes aplicaciones. y utilidades.

Fuente: Simplemente utilicé el comando “man snap”, la definición aparece en el apartado de descripción 😃

Manejo de paquetes en sistemas basados en Debian

Antes de actualizar el software de nuestro sistema debemos ejecutar el comando sudo apt update para saber qué paquetes pueden actualizarse y desde dónde se realizará la descarga. Luego de esto podremos actualizar todas las herramientas del sistema usando el comando sudo apt upgrade.
Recuerda que todo lo que tenga que ver con actualizaciones o modificaciones del sistema operativo necesitará permisos con sudo. También necesitarás conexión a Internet.

  • Apt -get update : actualizar los repositorios y saber que paquetes pueden ser actualizados

  • Apt -get upgrade: actualiza todo los paquetes, se debe ver que pauqetes van a ser actualizados por temas de seguridad.

  • Apt search paquete: búsqueda de un paquete

  • apt-reconfigure: para configurar un paquete desde 0

  • snap: con snap podemos realizar las mismas funcionas que apt, buscar complementos y paquetes en el sistema
    o snap search paquete: buscar paquete
    o snap refresh –list: actualizar paquetes
    o snap info paquete:info de paquetes
    o snap install paquete: instalar paquetes

Es importante antes de actualizar ver que elementos se actualizaran debido que programas quedan obsoletos en versiones nuevas

Antes de actualizar el software de nuestro sistema debemos ejecutar el comando sudo apt update para saber qué paquetes pueden actualizarse y desde dónde se realizará la descarga. Luego de esto podremos actualizar todas las herramientas del sistema usando el comando sudo apt upgrade.

Excelente clase!. Asombrado de como en pocos minutos aborda temas que por tanto tiempo he tenido la duda. Gracias. Debian Rules! 🤘🏼🦾

Qué buena explicación sobre la letra (S) mayúscula al confirmar una operación.
La letra en mayúscula es la operación por default.

#apt update : Para saber qué paquetes pueden actualizarse y desde dónde se realizará la descarga.
#apt upgrade : Podremos actualizar todas las herramientas del sistema, con esto algunos paquetes nos pediran que aceptemos.
#apt dist-upgrade : Actulizara programas en el Kernel de linux, tendria que revisar estos paquetes que se actualizaran para que veas si se tendra que reiniciar el server. A no ser por la nueva actualizacion de ubuntu 14, Lighpach (Con esto podremos hacer este tipo de actualizaciones sin reinicios especificos).
#apt search myqsl : Busca todos los paquetes que podemos instalar que contengan mysql.
#apt -cache search “mysql-server$” : Otra forma de buscar lo mismo, paquetes de servidores de mysql.
#dpkg -l : Mostra todos los paquetes instalados. con descripcion.

Ejm: tzdata es un paquete que ya esta instalado asi que lo volveremos a instalar y poner en modo fabrica.
#dpkg -reconfigure tzdata : tzdata es un paquete que modifica la zona horaria.
#date : puedes ver la hora.

Si quieres usar otro paquete para instalar archivos: #snap
#snap search aws-cli : vemos el nombre la versión y aws-cli es el nombre de un paquete a descargar con snap.
#snap refresh --list : Nos actualiza la lista de paquete a descargar.
#snap info aws-cli: Muestra la información del paquete descargar.
#snap install canonical-livepatch : Este codigo instala el paquete que hace que no se reinicie el servidor cuando actualizas el kernel de linux, instalando un paquete que haga esto.

Hay un pequeño error en el comando para listar los paquetes SNAP. El comando correcto es:

sudo snap list

Este comando lista que paquetes SNAP están pendientes por ser instalados/actualizados:

sudo snap refresh --list

Para verificar si necesitamos reiniciar el servidor o pc personal cat /var/run/reboot-required

Una buena forma de ver si tu sistema requiere reinicio, es listar el archivo reboot-required
ls /var/run/reboot-required

RESUMEN DE LA CLASE
manejo de paquetes en sistema basados en debia
comandoutiles
sudo apt update:autualiza la informacion local sobre los repositorios de ubntu

exelente explicacion

Sin duda alguna puedo decir que se aprende sobre administración de servidores linux… mi jefe en géneral es como no creo mucho al respecto, pero sea como sea, ya sé más que antes.

**date ** para verificar el horario en el que estas
timedatectl list-timezones para ver las zonas horarias
timedatectl set-timezone <zona> escribir la zona como la vieron en el paso anterior para configurar esa zona especifica

Manejo de paquetes en sistemas basados en Debian
$ sudo apt dist-upgrade -> Actualizar paquetes, hay que tener cuidado
$ sudo apt search paquete ó “paquete$” -> Buscar paquete
$ sudo apt-cache search “paquete$”
$ dpkg-reconfigure tzdata -> Reconfigurar paquete tzdata
para configurar el tiempo

Snap: Otro manejador de paquetes de Debian package management
$ sudo snap search aws-cli = buscar paquete de amazon
$ sudo snap refresh --list = ver paquetes sin actualizar
$ sudo snap info aws-cli = InformaciOn del paquete aws-cli

Nunca había usado ubuntu server por que no me llamaba mucho la atención, ahora que sé que proviene de Debian, me está motivando, se ve interesante

Si como yo estan en ubuntu server, para recorrer la terminal para ver todo el output de un comando, usen more:
ls /home | more

Minuto 10:37 = snap solo se puede utilizar en ubuntu, es un sistema cerrado.

Flatpak si es un sistema de paquetes universal para cualquier distribucion Linux

Para paquetes de python me parece que es pip o pip3 para python3

Muy buena explicación no conocia snap pero me parece muy interesante.
Muchas gracias

sudo apt search mysql encontramos toda la información sobre los paquetes que podemos instalar en nuestro PC.
.
Para ver todos los paquetes instalados en nuestro OS usamos dkpg -l. Si no tenemos disponible esa función, simplemente usamos sudo apt-get dkpg.
.
Para reconfigurar un paquete usamos _dkpg-reconfigure (paquete a reconfigurar) mysql. _
.
Con sudo snap obtenemos los paquetes actualizados hasta su última versión, y con la versión más estable.
sudo snap search (paquete a buscar) aws-cli podemos obtener la información más reciente acerca de cualquier paquete
sudo snap install canonical-livepatch para actualizar el kernel sin tener que formatear o reiniciar.

Si no quieren darle S a todos los paquetes ponen al final del -y , dile yes a todo básicamente

Actualizar todo de una vez

sudo apt update -y && apt update -y

Manejo de paquetes basados en debian:

sudo apt update --->  para actualizar los indices de los paquetes, usando (debe ser con sudo)
sudo apt upgrade --->  para hacer upgrade de los paquetes  (debe ser con sudo)
sudo apt dist-upgrade ---> es como el anterior pero un poco mas brusco ya que puede tocar temas de kernel
sudo apt search mysql  ---> buscar un apquete que contenga, en este caso "mysql"
sudo apt-cache search mysql --> parecido al anterior, pero lo muestra de una forma diferente
date ---> ver la fecha
sudo snap search aws-cli ---> buscar en la paqueteria nueva de sistemas basadso en debian SNAP. (aca buscamos el cliente de aws)
sudo snap refresh ---> actualizar los paquete de snap
sudo snap info aws-cli ---> ver la info de un paquete , en este caso aws cli
sudo snap install  canonical-livepatch ---> paquete que permite actualizar kernel sin tener que reiniciar

Muy buena clase.

Nuevo gestor de paquetes, snap para ubuntu

comandos para actualizar el sistema operativo y los paquetes y la actualización de la zona horaria

La configuración de los repositorios de apt-get se encuentra en /etc/apt/sources.list, si quisiéramos añadir archivos con repositorios lo podemos hacer en /etc/apt/sources.list.d

En este archivo podemos agregar líneas con los repositorios que queremos añadir a nuestro sistema

Hay alguna diferente entre apt update y apt-get update?

tenia esa duda con apt

Puros problemas 😦

No conocia snap, Que buena clase

Es necesario mencionar que el comando sido también debe ser instalado para que pueda funcionar

actualizando… 😃

Recuerda que todo lo que tenga que ver con actualizaciones o modificaciones del sistema operativo necesitará permisos con sudo. También necesitarás conexión a Internet.

Buena herramienta snap.

¡Qué buen profe, mostrando posibles errores para que uno los comenta, excelente clase!

este snap sólo está disponible para debian? y distros derivadas de debian?

aaa ya olvidenlo en el link viene toda la info de snap JSJSJs

Cuidado cuando actualicen el kernel, puede que tambien tengan que actualizar el grub

Snap se puede instalar en cualquier distribución
Infor

apt uso

Con **sudo apt-get upgrade ** te pide confirmacion para la descarga
Con sudo apt-get -y upgrade no pide confirmación para la descarga

Buena clase!

Aclaración: Importante mencionar que no existe un usuario SUDO como lo indica Jhon durante la clase.

El comando SUDO el cual significa (Superuser Do) es una utilidad del sistema que permite a los usuarios realizar la ejecución como super-usuario (root). Aquí el enlace para más información.

Cuando se quiere cambiar de usuario, se puede dar exit y se loguea con el usuario root o el necesario.

Lo del livepatch me parece un gran dato ya que no debo reiniciar los servidores para actualizarlos

Nota: El snap no funciona con el ubuntu que trae windows 10

apt-get update actualiza la lista(indices) de paquetes disponibles y sus versiones, pero NO instala o actualiza ningún paquete. Esta lista la toma de los servidores con repositorios que tenemos definidos en el sources.list.

apt-get upgrade: una vez el comando anterior ha descargado la lista de software disponible y la versión en la que se encuentra, podemos actualizar dichos paquetes usando este comando: apt-get upgrade. Instalará las nuevas versiones respetando la configuración del software cuando sea posible (esta es la maravilla de este tipo de sistemas).

(especifico, especifico, especifico, especifico, especifico, especifico. )x10^23

Muy buena explicación de la clase…y buenos aportes del grupo…

muy util el comando dpkg-reconfigure tzdata. ya van varios servers que es necesario actualizar la zona horaria.

muy buen proceso de explicacion