¡Esta es una revisión vieja del documento!
108.2 System logging
Pertenece a Topic 108: Essential System Services
- Weight: 4
- Description: Candidates should be able to configure rsyslog. This objective also includes configuring the logging daemon to send log output to a central log server or accept log output as a central log server. Use of the systemd journal subsystem is covered. Also, awareness of syslog and syslog-ng as alternative logging systems is included.
- Key Knowledge Areas:
- Basic configuration of rsyslog.
- Understanding of standard facilities, priorities and actions.
- Query the systemd journal.
- Filter systemd journal data by criteria such as date, service or priority.
- Configure persistent systemd journal storage and journal size.
- Delete old systemd journal data.
- Retrieve systemd journal data from a rescue system or file system copy.
- Understand interaction of rsyslog with systemd-journald.
- Configuration of logrotate.
- Awareness of syslog and syslog-ng.
- The following is a partial list of the used files, terms and utilities:
/etc/rsyslog.conf/var/log/loggerlogrotate/etc/logrotate.conf/etc/logrotate.d/journalctlsystemd-cat/etc/systemd/journald.conf/var/log/journal/
108.2: Logs del sistema (Peso: 4) System Log Files Linux mantiene cada día una gran variedad de registros de logs sobre el estado del sistema. Para ello, hay un daemon corriendo que es el rsyslogd que hace que todo el sistema de registros funcione bien. Rsyslog se encarga de recoger los avisos de los diferentes servicios y redirigirlos a los archivos o dispositivos correspondientes La configuración de dicho daemon se realiza en /etc/rsyslog.conf 108.2: Logs del sistema (Peso: 4) System Log Files Cada entrada del fichero consiste en diferentes reglas que incluyen un selector y una acción. Cada selector es una combinación de una facility (servicio) y una prioridad, separados por un punto Ejemplos: # Los archivos de prioridad info se deben guardar en /var/log/mail.info mail.info /var/log/mail.info # Guarda todos los mensajes de nivel debug en el fichero /var/log/debug *.=debug /var/log/debug 108.2: Logs del sistema (Peso: 4) System Log Files Facility Uso auth / security Sistema de autenticación, incluyendo login, su y getty authpriv Programas de autorización privados cron cron y at daemon Demonios del sistema ftp Demonio de ftp kern Mensajes generados por el kernel local0-7 Reservado para uso local lpr Sistema de impresión mail Sistema de mail mark Mensajes internos de syslogd (no usable por aplicaciones) news Sistema de news en la red syslog Mensajes del demonio de syslog user Aplicaciones de usuario uucp Sistema UUCP * Todas las facilities menos mark 108.2: Logs del sistema (Peso: 4) System Log Files Prioridad Uso debug (7) Mensajes generados en la depuración de un programa info (6) Mensajes informativos notice (5) Mensajes no críticos que requieren investigación adicional warning (4) Mensajes de aviso err (3) Otros errores crit (2) Condiciones críticas como errores hardware alert (1) Condiciones que se deberían resolver rápidamente emerg (0) Condiciones de pánico muy importantes none Bloquea un facility 108.2: Logs del sistema (Peso: 4) System Log Files Acción Uso fichero Ruta absoluta al fichero donde se guardan los mensajes /dev/ttX Escribe los mensajes en el terminal @host o @ip Host remoto donde su syslogd recoge los mensajes :omusrmsg:user1 & user2 Escribe los mensajes a los usuarios si están conectados :omusrmsg:* Todos los usuarios conectados reciben los mensajes 108.2: Logs del sistema (Peso: 4) System Log Files Símbolo Significado , Define varias facilities para una misma prioridad ; Permite definir varios selectores para una misma accion = Especifica sólo una prioridad y no las superiores ! Ignorar esa prioridad * Todas las facilities o prioridades 108.2: Logs del sistema (Peso: 4) logger El comando logger nos permite enviar mensajes al sistema de log del sistema. logger [opciones] [-p prioridad] [mensaje] #Envía un mensaje con nivel err al sistema de mail logger -p mail.err “Prueba de mail.err“ #Registra el mensaje del fichero /etc/motd en auth.notice, poniéndole una etiqueta TEST logger -p auth.notice -t TEST -f /etc/motd
Unidad 108: Servicios esenciales del sistema 108.2: Logs del sistema (4) Systemd journal 108.2: Logs del sistema (Peso: 4) systemd-journal El proceso que gestiona las notificaciones de sistema en systemd es systemd- journal y tiene una herramienta para gestionarlo que es journalctl Esta herramienta genera sus logs de forma independiente a rsyslog y por defecto no los guarda en ficheros sino que se consultan en tiempo de ejecución, aunque podemos forzar su volcado a ficheros. Con esta herramienta podemos consultar todos los registros o hacer consultas específicas Al ejecutarlo, entramos en su interfaz propio y nos permite navegar por los logs desde el principio, como si fuera un less. 108.2: Logs del sistema (Peso: 4) systemd-journal journalctl → inicia la herramienta journalctl -e → nos manda directamente al final del log journalctl -x → añade explicaciones a cada línea journalctl –list-boots → muestra los inicios o reinicios journalctl –since “2017-08-16 18:46:30” –until “2017-08-16 18:55:00” → filtrar los datos por fecha journalctl -u cron → filtramos las entradas por servicio journalctl -f → añade las nuevas entradas (como tail -f) journalctl -p err → filtramos las entradas por prioridad journalctl –disk-usage → muestra es espacio ocupado por logs journalctl -k → muestra solo mensajes del kernel journalctl -g ‘patrón’ → busca según un patrón (soporta regex)
Unidad 108: Servicios esenciales del sistema 108.2: Logs del sistema (4) Logrotate 108.2: Logs del sistema (Peso: 4) logrotate Este servicio se encarga de gestionar como se generan y se almacenan los logs del sistema para evitar que crezcan desmesuradamente. Los divide, comprime y guarda copias. El archivo de configuración principal es /etc/logrotate.conf aunque cada servicio suele tener su propia configuración en /etc/logrotate.d/ El funcionamiento es por medio de un script, alojado en /etc/cron.daily por lo que la ejecución del script depende de cron 108.2: Logs del sistema (Peso: 4) logrotate Parámetros de configuración importantes: rotate [num] → servidores a los que se conecta número de copias rotadas que se conservan compress → servidores a los que se conecta comprimir copias antiguas delaycompress → servidores a los que se conecta deja la mas reciente sin comprimir hourly/weekly/monthly/yearly → servidores a los que se conecta periodicidad de la rotación maxsize/minsize [tam] → servidores a los que se conecta tamaño que pueden alcanzar antes de rotar minage/maxage [num] → servidores a los que se conecta rota los logs con ese numero de dias missingok → servidores a los que se conecta permite que el log no exista para crearlo mail [direccion] → servidores a los que se conecta notifica por mail cuando se rota el log
Unidad 108: Servicios esenciales del sistema 108.3: MTA Básico (3) MTA interno del sistema 108.3: MTA Básico (Peso: 3) MTA (Agente de Transferencia de Correo) Los MTA son aplicaciones de red que se encargan de enviar y recibir correos desde otros MTA. Los MTA más famosos en Linux son postfix y sendmail. Los protocolos por los que se mueven los MTA son en términos generales, SMTP y POP (También existen las versiones seguras de cada protocolo) 108.3: MTA Básico (Peso: 3) MTA (Agente de Transferencia de Correo) En Linux los diferentes software que tenemos son los siguientes: Sendmail: Uno de los principales MTA clásicos, pero obsoleto Postfix: El más predominante reemplazando a sendmail Exim: Bastante simple, de serie en la mayoria de los Linux. No soporta POP e IMAP Qmail: Moderno y similar a Postfix. 108.3: MTA Básico (Peso: 3) mail La herramienta mail nos permite mandar correos siempre que esté configurado bien nuestro MTA y tengamos salida a internet. mail [-v] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr Escribimos nuestro mail y acabamos con un . (punto) pulsamos enter y nuestro mail se intentará enviar. Si hubiese cualquier problema, podemos depurar mirando /var/log/maillog mail < file → volcar contenido a un mail desde un fichero 108.3: MTA Básico (Peso: 3) mailx el comando mailx es el cliente de correo de shell. Me permite acceder al contenido de la cola de correo de /var /mail ”/var/mail/root“: 38 mensajes 21 nuevos 17 sin leer U 1 Anacron lun oct 21 11:53 22/1093 Anacron job 'cron.daily' on Ego U 2 Anacron mar oct 22 07:39 24/1253 Anacron job 'cron.daily' on Ego U 3 Anacron mié oct 23 11:3 21/1067 Anacron job 'cron.daily' on Ego Usando los números puedo ver el contenido de los mensajes. Los mensajes leídos se almacenan en $HOME/mbox. El resto permanecen en /var/mail 108.3: MTA Básico (Peso: 3) CONFIGURACIÓN DE EXIM /etc/mailname → nombre del server /etc/exim4/update-exim4.conf.conf Update-exim4.conf → reconfigurar el server dpkg-reconfigure exim4-config /etc/exim4/conf.d /etc/exim4/exim4.conf.template → ficheros de configuración /etc/exim4/passwd.client → autenticación en Smarthost exim -bP → parametros configuracion del servidor 108.3: MTA Básico (Peso: 3) newaliases También tenemos la posibilidad de crear redirecciones de correos usando alias. Para ello usamos el comando newaliases Éste comando refresca la base de datos que podemos encontrar en /etc/aliases La sintaxis es nombre_alias:destinatarios quique:ecastillo@prueba.es Para crear redirecciones a nivel de usuario se puede crear el fichero ~/.forward en el home del usuario donde queramos aplicar el alias, usando la misma sintaxis
Unidad 108: Servicios esenciales del sistema 108.4: Administración de impresoras e impresiones (2) CUPS 108.4: Administración de impresoras e impresiones (Peso: 2) CUPS (Common Unix Printing System) Es un sistema de impresión para GNU/Linux y otros sistemas operativos basados sobre el estándar POSIX, distribuido bajo los términos de la licencia GNU/GPLv2. apt-get install cups El fichero de configuración del demonio cupsd es /etc/cups/cupsd.conf La cola de impresión se guarda en /var/spool/cups ó /var/spool/samba si es una impresora compartida 108.4: Administración de impresoras e impresiones (Peso: 2) /etc/cupsd/cupsd.conf El fichero de configuración del servicio CUPS tiene una serie de directivas que especifican el funcionamiento y los permisos para los usuarios. Para acceder a la administración del servidor lo podremos hacer de 2 maneras: por la línea de comandos, o a través de una aplicación web. El puerto por defecto de acceso al servidor CUPS es el 631 108.4: Administración de impresoras e impresiones (Peso: 2) /etc/cupsd/cupsd.conf Directivas WebInterface → activar el acceso web Listen → ip y puerto de escucha del servidor Browsing → compartir Impresoras en la red DefaultAuthType → Activar Autenticación Location → Reglas de acceso a áreas del servidor <Location /admin> AuthType none Order deny,allow Deny From All Allow From 192.168.10.* </Location> 108.4: Administración de impresoras e impresiones (Peso: 2) Comandos CUPS apt-get install cups-pdf → Instalar driver PDF lpinfo -v → lista dispositivos y drivers lpoptions -d <printer> → activar impresora por defecto lpstat -s → lista de impresoras disponibles lpmove → mover trabajo de una cola a otra lpadmin -p <printer> -E -v <device> -P <ppd> → instalar lp → imprimir cupsenable, cupsdisable → activar, desactivar impresora cupsaccept, cupsreject → aceptar o rechazar trabajos
Unidad 108: Servicios esenciales del sistema 108.4: Administración de impresoras e impresiones (2) lpr / lpd 108.4: Administración de impresoras e impresiones (Peso: 2) LPD: Line Print Daemon Es el antiguo demonio de impresión, anterior a CUPS apt-get install lpr Las impresoras están definidas en el fichero /etc/printcap lpq –P printerName → muestra la cola de impresión de la impresora lpr → Imprimir lpr –P printName documento.txt lprm → Eliminar trabajo de la cola lprm 26: elimina el trabajo número 26 lprm - : elimina todos los trabajos de la cola lpc → administración de impresoras lpc status all
