2022-10-26 17:47:14 +00:00
|
|
|
\documentclass[12pt,a4paper,titlepage]{article}
|
|
|
|
\usepackage[spanish]{babel}
|
|
|
|
\usepackage{hyperref}
|
|
|
|
\usepackage{graphicx}
|
|
|
|
\usepackage{subcaption}
|
|
|
|
|
|
|
|
\title{Gestión de un Servidor OpenBSD}
|
|
|
|
\author{Nicolás A. Ortega Froysa}
|
|
|
|
|
|
|
|
\begin{document}
|
|
|
|
\maketitle
|
|
|
|
|
|
|
|
\tableofcontents
|
|
|
|
\pagebreak
|
|
|
|
|
|
|
|
\section{Introducción}
|
|
|
|
|
|
|
|
En esta práctica vamos a ver cómo es la administración de sistema de un servidor
|
|
|
|
de {\it OpenBSD}. Los objetivos son los siguientes:
|
|
|
|
|
|
|
|
\begin{itemize}
|
|
|
|
\item Aprender los comandos básicos del sistema.
|
|
|
|
\item Ver en qué se diferencia OpenBSD de un sistema Linux.
|
|
|
|
\item Ver cómo cambia la carga del sistema mientras más servicios vayamos
|
|
|
|
proveyendo.
|
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
La instalación en sí no forma parte de este documento, pero generalmente el
|
|
|
|
instalador guiado es bastante intuitivo.
|
|
|
|
|
|
|
|
Lo que caracteriza a OpenBSD especialmente, respecto a otros sistemas UNIX (y
|
|
|
|
otros sistemas que hemos visto en clase) son dos cosas. Primero, que no es una
|
|
|
|
distribución de Linux, sino de BSD. Son sistemas completamente distintos, aunque
|
|
|
|
siguen (generalmente) una filosofía/arquitectura similar, basándose los dos en
|
|
|
|
UNIX. Segundo, que OpenBSD, entre los otros sistemas BSD, es el más
|
|
|
|
especializado en seguridad, hasta el punto de sacrificar cualquier otro aspecto
|
|
|
|
de la computación a favor siempre de la seguridad. Es por este motivo que
|
|
|
|
deshabilitaron en su momento el {\it hyper-threading} de los procesadores Intel
|
|
|
|
por miedo a {\it Spectre}.\footnotemark
|
|
|
|
|
|
|
|
\footnotetext{\url{https://www.theregister.com/2018/06/20/openbsd\_disables\_intels\_hyperthreading/}}
|
|
|
|
|
|
|
|
\section{Configuración Inicial}
|
|
|
|
|
|
|
|
Generalmente la configuración de OpenBSD ha sido bastante simple, y la mayoría
|
|
|
|
de las opciones están en su valor por defecto. El teclado -- i.e.\ keymap --
|
|
|
|
usado es el estadounidense, simplemente porque para la informática es la más
|
|
|
|
cómoda. La máquina lleva el {\it hostname} de {\tt puffy-nortega}.
|
|
|
|
|
|
|
|
En cuanto a los usuarios, existe un usuario {\it root} con contraseña {\tt
|
|
|
|
toor}, y otro usuario {\it nicolas} con contraseña {\tt nicolas}. Durante la
|
|
|
|
instalación se ha configurado que no sea posible acceder a {\it root} por SSH,
|
|
|
|
ya que esto hace que el sistema sea más vulnerable -- más todavía con este tipo
|
|
|
|
de contraseña.
|
|
|
|
|
|
|
|
El disco se ha particionado con una sola partición para simplificar este proceso
|
|
|
|
de instalación. Se podría instalar con más particiones, repartiendo así los
|
|
|
|
datos y haciendo más fácil el proceso de hacer copias de respaldo (que sean de
|
|
|
|
una sola partición), pero eso no entra dentro de los objetivos de esta práctica.
|
|
|
|
|
|
|
|
Finalmente, en OpenBSD se dividen los archivos de sistema en diferentes {\it
|
|
|
|
sets}. Éstos se pueden usar para instalar diferentes componentes del sistema,
|
|
|
|
desde el {\it kernel} hasta algunos juegos de consola. Éstos están los {\it
|
|
|
|
sets} instalados:
|
|
|
|
|
|
|
|
\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.
|
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
\begin{figure}
|
|
|
|
\center
|
|
|
|
\includegraphics[width=0.75\textwidth]{imgs/00-initial-load.png}
|
|
|
|
\caption{Carga inicial de OpenBSD.}
|
|
|
|
\label{fig:initial-load}
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
Al inicializar la máquina lleva una carga de sistema extremadamente baja, ya que
|
|
|
|
está corriendo tan sólo lo mínimo (figura \ref{fig:initial-load}).
|
|
|
|
|
|
|
|
\section{Instalación de Paquetes}
|
|
|
|
|
|
|
|
Para administrar paquetes en OpenBSD se hace uso de las herramientas de paquete
|
|
|
|
de OpenBSD. Los comandos se pueden reconocer porque llevan la patrón {\tt
|
|
|
|
pkg\_*}. En particular, las que nos interesan son tres:
|
|
|
|
|
|
|
|
\begin{itemize}
|
|
|
|
\item {\tt pkg\_add}: instalar y actualizar.
|
|
|
|
\item {\tt pkg\_delete}: eliminar/desinstalar.
|
|
|
|
\item {\tt pkg\_info}: buscar información.
|
|
|
|
\end{itemize}
|
|
|
|
|
2022-10-27 16:47:42 +00:00
|
|
|
Para instalar los paquetes que nos interesan vamos a correr el comando siguiente:
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
root# pkg_add nginx mariadb-server mariadb-client \
|
|
|
|
rsync
|
|
|
|
\end{verbatim}
|
|
|
|
|
2022-10-26 17:47:14 +00:00
|
|
|
\section{Configuración de Servicios}
|
|
|
|
|
|
|
|
\subsection{Nginx}
|
|
|
|
|
|
|
|
\subsection{MariaDB}
|
|
|
|
|
|
|
|
\subsection{Servicio RSync}
|
|
|
|
|
|
|
|
\section{Conclusión}
|
|
|
|
|
|
|
|
\pagebreak
|
|
|
|
|
|
|
|
\section{Derechos de Autor y Licencia}
|
|
|
|
|
|
|
|
\noindent
|
|
|
|
Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa
|
|
|
|
<nicolas@ortegas.org> \\
|
|
|
|
\\
|
|
|
|
Este documento se distribuye bajo los términos y condiciones de la licencia
|
|
|
|
Creative Commons Attribution No Derivatives 4.0 International.
|
|
|
|
|
|
|
|
\end{document}
|