La página web OpenBSD Jump Start tiene una guía muy útil de comandos y enlaces de OpenBSD. Así que aquí va una traducción de casi toda la página web, que iré actualizando según vayan saliendo nuevas versiones de la misma. Es muy recomendable visitar la web, que es bastante más agradable a la vista que esta ;-)
Actualizado a la versión 7.5
Software e ideas desarrolladas o mantenidas por el proyecto OpenBSD. Innovations
# ¿Como leer una página de manual, por ejemplo foo(5)?
man 5 foo
O verlo en el navegador visitando la web man.openbsd.org
Realmente muy simple, listo en 5 minutos (KISS). El correo con el resultado de la instalación es enviado al usuario root en el primer arranque.
Para obtener más información: https://www.openbsd.org/faq/faq4.html
Para una instalación completamente desatendida se puede usar el comando autoinstall(8)
OpenBSD utiliza por defecto FFS2 (Enhanced Fast File System)
Lee más en newfs(8)
Lee más en myname(5), mygate(5), hostname.if(5), resolv.conf(5), hosts(5)
# Muestra la configuración actual de los interfaces de red
ifconfig
# Configura DHCP para el interface 're0'
ifconfig re0 autoconf
# Ejecuta la (re)inicialización de la configuración de la red
sh /etc/netstart
Configuración de IP estática para re0
## Archivo: /etc/hostname.re0
inet 192.168.0.58 255.255.255.0
No olvides ejecutar sh /etc/netstart re0 para aplicar los cambios en caliente en el sistema
Configuración de IP dinámica mediante DHCP para bge0
## Archivo: /etc/hostname.bge0
inet autoconf
No olvides ejecutar sh /etc/netstart bge0 para aplicar los cambios en caliente en el sistema
# Primero, miramos la lista de redes wifi disponibles
ifconfig iwn0 scan
## Archivo: /etc/hostname.iwn0
nwid ACCESS_POINT_NAME wpakey THE_SECRET_KEY
inet autoconf
# O, para múltiples puntos de acceso
join AT_HOME wpakey THE_SECRET_KEY
join AT_WORK wpakey THE_SECRETKEY
inet autoconf
No olvides ejecutar sh /etc/netstart iwn0 para aplicar los cambios en caliente en el sistema
# Muestra la tabla de rutas (ipv4)
route -n show -inet
# Muestra la tabla de rutas (ipv6)
route -n show -inet6
# Borra todos los gateways de la tabla de rutas
route -n flush
# Desabilitar PF
pfctl -d
# Comprueba las reglas
pfctl -nf /etc/pf.conf
# Habilita PF y carga las reglas
pfctl -ef /etc/pf.conf
# Carga las reglas (aplica cambios)
pfctl -f /etc/pf.conf
# Lista las reglas cargadas
pfctl -s rules
Lee más en pfctl(8)
## Archivo: /etc/pf.conf
# Proteje un portátil (permite sólo ping/ssh desde cualquier lado)
set skip on lo
block log all
pass in on egress inet proto icmp all icmp-type echoreq
pass in on egress inet proto tcp from any to any port ssh
pass out
Lee más en pf.conf(5)
tcpdump -nettti pflog0
Lee más en tcpdump(8)
FAQ de OpenBSD PF PF and Networking Tutorial (EuroBSDCon 2023)
# Manualmente
user [add|del|info|mod] foobar
# Añadir usuarios de forma interactiva
adduser
# Borrar usuarios de forma interactiva
rmuser
Lee más en adduser(8), rmuser(8)
Archivo: /etc/group
group [add|del|info|mod] foobar
Miembros del grupo wheel pueden usar su(1) para ser root.
Lee más group(8), group(5), rmgroup(8)
## Archivo: /etc/doas.conf
# Permite que el usuario 'marc' reinicie el ordenador
permit nopass marc as root cmd /sbin/reboot
# Marc ahora puede reiniciar la máquina
$ doas reboot
Lee más doas(1), doas.conf(5)
Y prueba doas mastery (blog)
# Por defecto, el archivo /etc/installurl contiene la URL de un mirror de OpenBSD
https://cdn.openbsd.org/pub/OpenBSD
# Buscar paquetes
pkg_info -Q foobar
# Instalar un paquete, por ejemplo Squid
pkg_add squid
# Actualizar todos los paquetes instalados
pkg_add -u
# Documentación extra
Mira en /usr/local/share/doc/pkg-readmes para más documentación
# Lista los paquetes instalados
pkg_info
# Lista los archivos instalados por un paquete
pkg_info -L foobar
# Lee los mensajes de instalación de un paquete específico
pkg_info -M foobar
# Desinstala un paquete
pkg_delete foobar
# Comprueba dependencias no utilizadas
pkg_delete -an
# Desinstala dependencias no necesarias
pkg_delete -a
# Desinstala todo excepto 'nginx'
pkg_delete -X nginx
Mira en /usr/local/share/doc/pkg-readmes para documentación extra.
Lee más pkg_info(1), pkg_add(1), pkg_delete(1), installurl(5) y packages(7)
fw_update
El firmware es descargado de directorios específicos para cada versión en: http://firmware.openbsd.org/firmware
Lee más fw_update(8)
Archivo /etc/rc.conf.local
rcctl [enable|disable|start|stop|reload|restart] foobar
# Por ejemplo, para iniciar el daemon de apmd para escalado de CPU
rcctl enable apmd
rcctl set apmd flags -A
rcctl start apmd
Lee más rcctl(8), rc.conf(8), rc.conf.local(8)
rcctl ls on
Lee más rcctl(8)
Archivo /etc/rc.local
Lee más rc(8), rc.firsttime(8), rc.local(8), rc.securelevel(8)
Todos las correcciones de seguridad y fiabilidad pueden encontrarse en:
https://www.openbsd.org/errata.html
Los parches de errata se generan para las dos últimas versiones (7.4, 7.5).
Utiliza syspatch(8) para actualizar el kernel y el espacio de nombres, disponible para las dos últimas versiones
# Lista los parches disponibles
syspatch -c
# Instala los parches disponibles
syspatch
Con pkg_add -u actualizas los paquetes instalados.
Para actualizar de 7.3 a 7.5 debes seguir las instrucciones de https://www.openbsd.org/faq/upgrade74.html y luego de https://www.openbsd.org/faq/upgrade75.html
pkg_add sysclean
Ejecuta sysclean para crear una lista de elementos obsoletos. Revisa la lista y borra los ficheros manualmente. Ten cuidado
/ es el directorio raíz /home es donde están los directorios de usuarios /root es el directorio del usuario root /mnt es donde están los puntos de montaje temporales /etc ficheros y scripts de configuración del sistema /etc/examples ficheros de configuración de ejemplo de daemons del sistema /etc/skel ficheros de configuración para nuevos usuarios /etc/signify ficheros de llave usados por signify(1) /tmp se limpia en cada reinicio /var/tmp enlace simbólico a /tmp /var/log ficheros de log /var/run pid, sockets, utmp, dmesg.boot /var/db archivos de base de datos /var/www directorio base para el servidor httpd /var/www/htdocs repositorio para httpd /usr/local aquí va el software de terceros /usr/src BSD y fuentes locales
Lee más hier(7)
/bsd kernel ejecutable (el sistema operativo lo carga en memoria en el arranque) /bsd.booted kernel ejecutable usado después de la hibernación /obsd kernel anterior, el siguiente arranque usará el kernel de /bsd /bsd.sp kernel ejecutable para máquinas de un sólo procesador /bsd.mp kernel ejecutable para máquinas multiprocesador /bsd.rd kernel de instalación. El disco en memoria de construcción dispone de herramientas que pueden ser ejecutadas sin un filesystem externo, por lo que este kernel es útil para algunas tareas de mantenimiento
config(8) permite editar el kernel especificado. Los dispositivos pueden ser habilitados, deshabilitados o modificados sin tener que volver a compilar editando el kernel ejecutable. La edición también se puede hacer durante el arranque, usando el editor que proporciona el kernel, como se describe en boot_config(8).
doas pkg_check -F -> comprueba si no hay objetos aleatorios en /usr/local doas dmesg -s -> lee los mensajes de arranque de rc(8) ldd foobar -> lista las dependencias dinámicas de un objeto df -h -> muestra el uso de disco top -s .1 -> comprueba la carga (memoria y cpu) reset -> reinicia tu terminal rcctl ls on -> qué está habilitado en el sistema rcctl ls started -> qué está corriendo en el sistema
For any feedback or corrections, please write in to: jdrm@disroot.org