diff --git a/2/ASO/assignments/openbsd-project/imgs/OpenBSD.png b/2/ASO/assignments/openbsd-project/imgs/OpenBSD.png new file mode 100644 index 0000000..ea4cc2b Binary files /dev/null and b/2/ASO/assignments/openbsd-project/imgs/OpenBSD.png differ diff --git a/2/ASO/assignments/openbsd-project/openbsd-presentation.pdf b/2/ASO/assignments/openbsd-project/openbsd-presentation.pdf new file mode 100644 index 0000000..06d09c1 Binary files /dev/null and b/2/ASO/assignments/openbsd-project/openbsd-presentation.pdf differ diff --git a/2/ASO/assignments/openbsd-project/openbsd-presentation.tex b/2/ASO/assignments/openbsd-project/openbsd-presentation.tex new file mode 100644 index 0000000..3b02f7c --- /dev/null +++ b/2/ASO/assignments/openbsd-project/openbsd-presentation.tex @@ -0,0 +1,212 @@ +\documentclass{beamer} +\usepackage[spanish]{babel} +\usepackage{hyperref} +\usepackage{graphicx} +\usepackage{subcaption} + +\usetheme{Frankfurt} + +\title{Administración de OpenBSD} +\author{Nicolás A. Ortega Froysa} +\institute{CEU San Pablo} +\date{\today} + +\begin{document} +\begin{frame} + \titlepage +\end{frame} + +\begin{frame}{Tabla de Contenidos} + \tableofcontents +\end{frame} + +\section{Introducción} + +\begin{frame}{Introducción} + \begin{itemize} + \item {\em No es} una distribución de Linux, sino de {\em BSD}. + \item Su enfoque principal es la seguridad. + \item No usa {\tt apt}, sino los llamados {\it OpenBSD package tools}. + \item No usa {\it Systemd}, sino {\it rc init}. + \end{itemize} + + \hfill + + \begin{figure} + \includegraphics[width=0.3\textwidth]{imgs/OpenBSD.png} + \caption{{\it Puffy}, la mascota de {\it OpenBSD}.} + \end{figure} +\end{frame} + +\section{Instalación} + +\begin{frame}{Instalación} + \begin{itemize} + \item {\em No} es gráfico. + \item Opciones para instalar: + \begin{itemize} + \item {\tt (I)nstall}: instalar por medio de un {\it prompt} en shell. + \item {\tt (U)pgrade}: actualizar un OpenBSD que ya tienes instalado. + \item {\tt (A)utoinstall}: auto-instalar, tomando todos los valores por + defecto. + \item {\tt (S)hell}: entrar en un {\it shell} e instalar todo de forma + manual. + \end{itemize} + \end{itemize} +\end{frame} + +\begin{frame}{{\it File Sets}} + \begin{itemize} + \item {\tt bsd}: {\it kernel} de BSD ({\bf obligatorio}). + \item {\tt bsd.mp}: {\it kernel} multi-procesador. + \item {\tt bsd.rd}: {\it kernel} de uso en memoria. + \item {\tt base72.tgz}: sistema base o {\it userland} ({\bf obligatorio}). + \item {\tt comp72.tgz}: colección de compiladores. + \item {\tt man72.tgz}: páginas de manual. + \item {\tt game72.tgz}: juegos de consola (modo texto). + \item {\tt xbase72.tgz}: librerías y utilidades básicas para X11. + \item {\tt xfont72.tgz}: fuentes utilizadas para X11. + \item {\tt xserv72.tgz}: los servidores X de X11. + \item {\tt xshare72.tgz}: las páginas de manual, configuración, e {\it + includes} de X11. + \end{itemize} +\end{frame} + +\begin{frame}{Primer Arranque} + \begin{figure} + \centering + \includegraphics[width=0.75\textwidth]{imgs/00-initial-load.png} + \caption{Primer arranque de OpenBSD.} + \label{fig:initial-load} + \end{figure} +\end{frame} + +\section{Gestión de Paquetes} + +\begin{frame}{Gestión de Paquetes} + \begin{itemize} + \item {\tt pkg\_add}: instalar y actualizar. + \item {\tt pkg\_delete}: eliminar/desinstalar. + \item {\tt pkg\_info}: buscar información. + \item {\tt pkglocate}: encontrar paquetes por archivo (en el paquete {\tt + pkglocatedb}). + \end{itemize} +\end{frame} + +\begin{frame}{Encontrar Paquetes} + \begin{itemize} + \item {\tt pkg\_info -Q }: encontrar un paquete que tenga el + nombre {\tt }. + \item {\tt pkglocate }: encontrar los paquetes que puedan + contener un archivo con el nombre {\tt }. + \end{itemize} +\end{frame} + +\section{Gestión y Configuración de Servicios} + +\begin{frame}{{\it RC Init}} + \begin{itemize} + \item {\tt rcctl start}: iniciar un servicio. + \item {\tt rcctl stop}: parar un servicio. + \item {\tt rcctl restart}: reiniciar el servicio. + \item {\tt rcctl enable}: habilitar un servicio para iniciarse al arrancar + la máquina. + \item {\tt rcctl disable}: deshabilitar un servicio para que no se inicie + cuando arranque la máquina. + \item {\tt rcctl check}: mostrar el estado de un servicio. + \item {\tt rcctl ls}: mostrar una lista de los servicios. + \end{itemize} + + Los subcomandos {\tt start}, {\tt stop}, {\tt restart}, {\tt enable}, {\tt + disable}, y {\tt check} se pueden correr desde los archivos en {\tt + /etc/rc.d/} (e.g.\ {\tt /etc/rc.d/nginx restart}) +\end{frame} + +\begin{frame}{Servicios Configurados} + + Servicios instalados y configurados: + \begin{itemize} + \item NGinx: servidor web. + \item MariaDB: servidor de base de datos. + \item RSyncd: servidor de archivos. + \end{itemize} + +\end{frame} + +\begin{frame}{NGinx} + \begin{itemize} + \item Instalación: {\tt pkg\_add nginx} + \item Inicialización: {\tt rcctl start nginx; rcctl enable nginx} + \item Arch. Conf.: {\tt /etc/nginx/nginx.conf} + \item Logs: {\tt /etc/nginx/logs/} + \end{itemize} +\end{frame} + +\begin{frame}{MariaDB} + \begin{itemize} + \item Instalación: {\tt pkg\_add mariadb-server mariadb-client} + \item Inicialización: {\tt rcctl start mysqld; rcctl enable mysqld} + \item Arch. Conf.: {\tt /etc/my.cnf} + \item Logs: {\tt /var/db/mysql/} + \end{itemize} +\end{frame} + +\begin{frame}{RSyncd} + \begin{itemize} + \item Instalación: {\tt pkg\_add rsync} + \item Inicialización: {\tt rcctl start rsyncd; rcctl enable rsyncd} + \item Arch. Conf.: {\tt /etc/rsyncd.conf} + \item Logs: {\tt /var/log/rsyncd.log} + \end{itemize} +\end{frame} + +\section{Prueba de {\it Stress}} + +\begin{frame}{Test de NGinx} + + \begin{center} + Usando {\tt wrk} a 50 conexiones en 10 hilos distintos sobre el servidor. + \end{center} + + \begin{figure} + \centering + \includegraphics[width=0.95\textwidth]{imgs/02-load-wrk-test.png} + \caption{Test de NGinx.} + \end{figure} +\end{frame} + +\begin{frame}{Test de RSyncd} + + \begin{center} + Descargando varios ISO del servidor RSync, utilizando compresión para + facilitar la transferencia. + \end{center} + + \begin{figure} + \centering + \includegraphics[width=0.95\textwidth]{imgs/03-load-rsyncd.png} + \caption{Test de RSyncd.} + \end{figure} + +\end{frame} + +\section{Fin} + +\begin{frame}{Fin} + + \begin{center} + Hecho con \LaTeX + \end{center} + + \hfill + + Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa + + + \hfill + + Este documento se distribuye bajo los términos y condiciones de la licencia + Creative Commons Attribution No Derivatives 4.0 International. +\end{frame} + +\end{document} diff --git a/2/ASO/assignments/openbsd-project/openbsd-presentation.toc b/2/ASO/assignments/openbsd-project/openbsd-presentation.toc new file mode 100644 index 0000000..fa1c2c5 --- /dev/null +++ b/2/ASO/assignments/openbsd-project/openbsd-presentation.toc @@ -0,0 +1,7 @@ +\babel@toc {spanish}{} +\beamer@sectionintoc {1}{Introducción}{3}{0}{1} +\beamer@sectionintoc {2}{Instalación}{4}{0}{2} +\beamer@sectionintoc {3}{Gestión de Paquetes}{7}{0}{3} +\beamer@sectionintoc {4}{Gestión y Configuración de Servicios}{9}{0}{4} +\beamer@sectionintoc {5}{Prueba de {\it Stress}}{14}{0}{5} +\beamer@sectionintoc {6}{Fin}{16}{0}{6}