🧭 Recursos generales
En esta página se recopilan materiales de referencia y consulta para el módulo de Administración de sistemas operativos (ADD): enlaces de interés recopilados a lo largo del curso, la prueba de nivel inicial y una chuleta de comandos Linux organizada por categorías.
Enlaces de interés
Enlaces recopilados en la Unidad de Trabajo 4 (Administración remota), útiles como documentación y referencia complementaria durante todo el módulo.
- Documentación oficial de Windows Server - comandos de Windows
- Documentación oficial de PowerShell
- Demostración de uso de RDS y RemoteApp
- Openssh en entornos Windows
- Cómo instalar y configurar un cliente y un servidor en entornos Windows
- VPN en un dispositivo móvil
- Consejos de seguridad para implantar teletrabajo
- Configuración de un servidor VPN IKEv2 con Strongswan
- VPN con Wireguard y Ubuntu
- Documentación de Microsoft sobre Windows Admin Center
- Instalar IIS y Administración remota
- Activar el acceso remoto en los clientes a través de GPO
- Documentación oficial de Guacamole
- Guacamole y configuración de Windows Server
- Configuración manual de VPN
- Configurando VPN con L2TP/IPSec
- Configuración de OpenVPN con túnel SSL en Ubuntu 18.04
- Alta de servidores con el Administrador del Servidor
- Administración remota de servidores con Server Manager
- Instalación de las Herramientas de Administración Remota en Windows 10 (RSAT)
- Túnel SSH con PuTTY
- Acceso vía RDP a Ubuntu a través de una conexión segura SSH
- Instalación de NoMachine
- Conexión remota SSH usando PuTTY y Xming
- Instalación remota de Windows 10 a través de WDS
- Gestión de imágenes en WDS
- Crear imagen de captura
- Captura de una imagen de un SO previamente instalado
- Archivo de respuestas para instalación desatendida
- Instalación personalizada y desatendida en Windows 10
- Instalación de WSUS
- Opciones de configuración de WSUS
- Aprobar las actualizaciones de WSUS
- Actualizar los clientes a través de GPOs
- Repositorio espejo de Ubuntu con apt-mirror
Repositorios y proyectos de referencia
Selección de repositorios públicos de GitHub, revisados y filtrados por relevancia real para el módulo (se han descartado los que no aportaban contenido específico de ASIR/ADD o cuyo acceso no pudo verificarse).
UT1 · Servicio de directorio
- fjavier-hernandez/aso — apuntes de otro docente sobre Administración de Sistemas Operativos, buen contraste con el enfoque de este material.
- iesgn/gestiona_iesgn (organización IES Gonzalo Nazareno) — scripts de gestión de cuentas y directorio en entornos educativos.
- ilanami — guías centradas en Active Directory desde la perspectiva de seguridad (auditoría y pentesting), útil como ampliación del RA1 más allá de la administración básica.
UT3 · Automatización de tareas / UT6 · Integración de sistemas
- omorest/ASIR — prácticas de otro ciclo de ASIR, incluye una carpeta específica de ADD como referencia comparativa.
- tteck/Proxmox — colección muy popular de scripts de automatización para Proxmox VE (creación y mantenimiento de contenedores/VMs).
- iesgn — cursos completos de Docker, Kubernetes y Proxmox en formato de apuntes abiertos.
UT4 · Administración remota
- ngoduykhanh/wireguard-ui — interfaz web para gestionar servidores WireGuard, complementa la parte de VPN de esta UT.
Automatización y Monitorización (06auto-monit)
- iesgn — playbooks Ansible de despliegue (OpenStack, servicios educativos).
- mablanco/ansible-lynis — rol Ansible para auditoría de seguridad con Lynis, ejemplo real de automatización aplicada.
- jose-emilio/terraform-on-aws — ejemplos de Terraform sobre AWS Academy, útiles como referencia adicional para el archivo de Terraform.
- asir-idp (organización) — apuntes y playbooks de Ansible de otro grupo de ASIR-IDP.
Sobre esta selección
Algunos perfiles aportados (dvarrui, josedom24) no pudieron consultarse por fallos de acceso temporales; si el alumnado los conoce y considera que aportan material relevante, puede proponerlos para revisión.
Prueba de nivel
Al inicio del módulo se realiza una prueba de nivel para conocer los conocimientos previos del alumnado sobre sistemas operativos, administración de dominios y scripting. Las preguntas planteadas son las siguientes:
- Define lo qué es un directorio activo.
- Explique la experiencia que tiene con el directorio activo de Windows.
- ¿Conoce algún directorio activo en otros sistemas operativos? En caso afirmativo, especifique el nombre, si lo ha utilizado y para qué.
- ¿Qué es un controlador de dominio?
- Indique algunos objetos que se pueden administrar desde un controlador de dominio.
- Explique qué es un servidor de impresión. ¿Sabes qué puerto se utiliza?
- Diferencia entre un sistema operativo en red libre y un sistema operativo propietario. Indique un ejemplo.
- Explique lo qué es un script y para qué se utiliza.
- Defina lo que es un proceso.
- ¿Conoces algún algoritmo para gestionar procesos?
Comandos Linux
Chuleta de referencia rápida de comandos Linux organizada por categorías: manejo de ficheros y directorios, visualización y edición, búsqueda, filtrado de texto, compactación, gestión de usuarios y grupos, red, y comandos varios del sistema.
Ayuda en Linux (modo texto)
Formas habituales de obtener ayuda sobre un comando en la terminal:
| Vía | Descripción | Ejemplo |
|---|---|---|
-h, --help, -? |
Ayuda breve integrada en el propio comando | comando --help |
man |
Manual completo, organizado en secciones | man chmod |
help |
Ayuda de los comandos internos (builtin) del bash: cd, fg, bg, logout, exit, umask, set, help, source, alias, echo, kill, jobs, export |
help logout |
info |
Documentación con estructura arbórea navegable, a veces más amplia que man |
info ln |
whatis |
Descripción abreviada del comando en cada sección del man (usa la base de datos creada con makewhatis) |
whatis shadow |
apropos |
Busca una palabra en toda la base de datos de whatis |
apropos passwd |
Manipular ficheros y directorios
| Comando | Función | Ejemplo |
|---|---|---|
ls |
Lista el contenido de un directorio. Opciones: -l (formato largo), -R (recursivo), -a (incluye ocultos), -h (tamaños legibles), -i (i-nodo) |
ls -hl /etc |
cd |
Cambia el directorio actual | cd /tmp, cd o cd ~ (va al home) |
pwd |
Muestra el camino absoluto del directorio actual | pwd |
mkdir |
Crea directorios (-p crea los intermedios necesarios) |
mkdir -p docs/linuxdocs/howtos/pdf |
mv |
Mueve o renombra ficheros/directorios. -i interactivo, -u solo si el origen es más reciente |
mv mail.cf mail.cf.old |
cp |
Copia ficheros. -R recursivo, -i interactivo, -l enlaces fuertes |
cp -i /usr/bin/*sh /tmp |
rm |
Borra ficheros/directorios. -r recursivo, -f forzado, -i interactivo |
rm -rf temp/ |
chown |
Cambia el propietario (y grupo) de un fichero; chgrp cambia solo el grupo. -R recursivo |
chown -R root /tmp/oculto |
Paginar, visualizar y editar ficheros
cat: concatena ficheros y los imprime en la salida estándar (existezcatpara comprimidos). Ejemplo:cat /etc/passwd /etc/shadow.- Editor
vi(yvim, Vi IMproved): editor estándar de Unix orientado a comandos, con modo inserción (i) y modo comando (Esc). Comandos útiles en modo comando: dd— borra la línea actual.D— borra desde la posición actual hasta el final de línea.dG— borra hasta el final del fichero.u— deshace el último comando.:q— sale (error si hay cambios sin guardar).:q!— sale sin guardar.:w— guarda.:wq/:x— guarda y sale.<n><comando>— ejecuta el comando n veces.more/less: paginan uno o varios ficheros en la terminal.lesspermite moverse libremente por el texto;morees más restrictivo y termina automáticamente al llegar al final. Teclas útiles:q(salir),/patrón(buscar),[n]b/[n]f(retroceder/avanzar). Existenzlessyzmorepara ficheros comprimidos.
Búsquedas de ficheros y patrones
grep(Globally Regular Expressions Pattern): busca patrones de texto en ficheros.- Sintaxis:
grep [opciones] <patrón> [ficheros] - Opciones:
-c(cuenta coincidencias),-i(ignora mayúsculas/minúsculas),-H(muestra el fichero),-l(solo nombres de fichero),-v(líneas que NO contienen el patrón),-r(recursivo),-n(número de línea). - Ejemplo:
grep -i pepe /etc/passwd find: búsqueda recursiva de ficheros según condiciones (nombre, tamaño, tipo, permisos, fechas...).- Sintaxis:
find [camino] [opciones] - Opciones:
-name/-iname(patrón de nombre),-type(ddirectorio,ffichero,lenlace,b/cdispositivos,ptubería,ssocket),-size +/-<n>,-perm,-exec <comando> ;. - Ejemplo:
find /etc -name '*.conf' locate: busca en una base de datos (actualizada conupdatedbolocate -u) rutas que contengan una cadena. Ejemplo:locate passwd
Filtrar ficheros
| Comando | Función | Ejemplo |
|---|---|---|
sort |
Ordena líneas. -r invierte, -f ignora mayúsculas, -g orden numérico |
sort -f /etc/passwd |
uniq |
Elimina líneas repetidas consecutivas de un fichero ordenado. -c cuenta ocurrencias, -d solo duplicadas |
uniq -d lista.txt |
tail / head |
Muestran el final / comienzo de un fichero (10 líneas por defecto). -f sigue el fichero en tiempo real (tail), -<n> cambia el número de líneas |
tail -f /var/log/messages |
wc |
Cuenta líneas, palabras y bytes. -l, -c, -w |
wc -l /etc/passwd |
cut |
Recorta una línea por caracteres o campos: -c N-M, -c N-, -c -N, -d":" -f1 |
cut -c 3-9 /etc/passwd |
sed |
Mini-lenguaje de sustitución de texto | ver más abajo |
awk |
Lenguaje de procesamiento de patrones de texto | ver más abajo |
sed — sintaxis: sed -n -e"comandos" -f archivo [opciones] [ficheros]. Comandos principales: a\ (añade tras la línea), c\ (cambia contenido), d (borra), s (sustituye), g (sustitución global), i\ (inserta antes), p (imprime), q (sale), r arch (lee e inserta), w arch (escribe a fichero), = (número de línea). Ejemplos:
sed "3d" canciones # borra la línea 3
sed "a\Hola" canciones # añade "Hola" tras cada línea
sed -n 2p canciones # muestra solo la línea 2
sed -n '3,$p' canciones # muestra de la línea 3 al final
sed 's/antes/despues/g' canciones # sustituye todas las apariciones
sed '1,6s/antes/despues/g' canciones # sustituye solo en las líneas 1-6
awk — verdadero lenguaje de programación para análisis de texto (mezcla de grep y sed). Sintaxis: awk [-f archivo_programa] [-Fc] ['programa'] [variable=valor ...] [archivo]. Variables internas: $0 (línea completa), $1, $2... (campos), FS (separador de campo), NF (nº de campos), RS (separador de registro), NR (nº de registro procesado), OFS (separador de salida). Admite estructuras if/else, for, do/while y funciones (length(), substr(), split(), sub(), gsub(), tolower(), toupper(), system(), etc.). Ejemplo:
awk -F: '{ print $1 }' /etc/passwd # muestra el primer campo (usuario) de passwd
awk '{print NR, $0}' fichero # muestra cada línea con su número
Compactar y agrupar ficheros
gzip/gunzip: comprimen/descomprimen ficheros.-rrecursivo en un directorio,-1a-9nivel de compresión,-S <sufijo>extensión de salida. Ejemplo:gzip -9 *. Compatibles en ambos sentidos con Winzip; existen tambiénzip/unzipycompress/uncompress.tar(Tape Archiver): agrupa ficheros sin comprimir (la opción-zañade compresión gzip). Opciones:-c(crear),-x(extraer),-v(modo detallado),-f <fichero>(usar fichero en vez de entrada/salida estándar),-z(comprimir/descomprimir),-t(listar contenido),-M(volúmenes). Ejemplos:
tar cvzf grande * # agrupa y comprime todo el directorio actual
tar xvzf grande # desagrupa y descomprime
tar tf uconf.tar # lista el contenido
Desconectarse del sistema
exit: termina el shell actual (o el subshell si se está en uno).logout: cierra la sesión desde un login shell.Ctrl-dequivale alogoutoexitsegún el contexto.halt,reboot,poweroff: suspenden, reinician o apagan el sistema.shutdown: apaga o reinicia el sistema de forma controlada. Opciones:-c(cancela),-f(reinicio rápido sin comprobar el sistema de ficheros),-h(apaga),-r(reinicia). Se indica cuándo actuar:now, una hora (20:00) o un retardo (+10). Ejemplo:shutdown -h +4.
Administrar usuarios y grupos
| Comando | Función |
|---|---|
useradd |
Añade un usuario con las opciones por defecto (useradd -D muestra los valores por defecto) |
adduser |
Alternativa más amigable a useradd; pregunta contraseña y datos. También adduser usuario grupo añade un usuario a un grupo |
addgroup |
Crea un grupo nuevo |
userdel |
Elimina un usuario (-r borra también su directorio base) |
groupdel |
Elimina un grupo |
passwd |
Cambia la contraseña de un usuario. -d elimina la contraseña, -l bloquea la cuenta, -u la desbloquea |
usermod |
Modifica propiedades de un usuario: shell (-s), grupos secundarios (-G), expiración (-e), etc. |
chfn |
Cambia la información de contacto del usuario (nombre completo, oficina, teléfonos) en /etc/passwd |
gpasswd |
Administra grupos: añadir/eliminar usuarios, definir administrador o contraseña de grupo |
su |
Cambia de usuario (por defecto a root). su - abre un login shell completo |
sudo |
Ejecuta un comando con privilegios de root (equivalente a su -c) |
id |
Muestra los identificadores de usuario (uid), grupo principal (gid) y grupos secundarios |
chage |
Gestiona la caducidad de las contraseñas |
last |
Muestra las últimas conexiones de usuarios al sistema |
Comandos de red
| Comando | Función |
|---|---|
tracepath |
Traza la ruta de red hasta un host, mostrando los saltos intermedios |
write |
Envía un mensaje a un usuario conectado (requiere mesg y habilitado en destino) |
wall |
Envía un mensaje a todos los usuarios conectados con mensajes habilitados |
netstat |
Muestra conexiones de red, tablas de enrutamiento y estadísticas de interfaces (-i, -l -t, -l -u) |
route |
Gestiona la tabla de enrutamiento del sistema |
nslookup |
Consulta a un servidor DNS información sobre un host |
tty |
Muestra el dispositivo de terminal en el que se está trabajando |
who |
Muestra los usuarios conectados, terminal, fecha y hora |
w |
Muestra usuarios conectados y qué proceso están ejecutando, junto con carga del sistema |
finger |
Muestra información detallada de un usuario (login, nombre, directorio, shell, teléfonos, etc.) |
ping |
Envía paquetes ICMP ECHO_REQUEST para comprobar si un host es alcanzable. Opciones: -c <n>, -i <n>, -s <n>, -q |
ifconfig |
Configura y muestra el estado de las interfaces de red; permite activarlas/desactivarlas (up/down) y asignar IP, máscara o MAC |
hostname / dnsdomainname |
Muestran o cambian el nombre del equipo (host) o su nombre FQDN |
Comandos varios
| Comando | Función |
|---|---|
echo |
Muestra en la salida el texto pasado como argumento |
set |
Gestiona variables y funciones del shell |
history |
Muestra el histórico de comandos ejecutados (almacenado en ~/.history) |
uname |
Información del sistema: kernel, versión, nombre de máquina (uname -a) |
date |
Consulta y cambia la fecha y hora del sistema; admite expresiones como date --date="2 days ago" |
time |
Cronometra la ejecución de un comando y los recursos que consume |
uptime |
Tiempo que lleva el sistema funcionando, usuarios conectados y carga media |
top |
Muestra los procesos en ejecución y su consumo de recursos en tiempo real |
dmesg |
Lista los mensajes generados durante el arranque del sistema |
NOTA: esta chuleta resume la referencia de comandos Linux usada en el módulo; para el detalle completo de opciones y ejemplos adicionales, consultad el documento original "Comandos Linux" facilitado en el aula.