Перейти до вмісту

OpenBSD

Матеріал з K2 ERP Wiki

OpenBSD походить із BSD-традиції й розвивається як окрема операційна платформа з власним ядром, userland, документацією, інструментами, ports tree і пакетною системою.; :contentReference [oaicite:9]{index=9}

Практична роль: OpenBSD добре підходить для невеликих DNS-серверів, де потрібна проста й контрольована конфігурація.; * перегляд системного коду;

  • пошук небезпечних функцій;
  • спрощення реалізації;
  • видалення застарілого коду;
  • перевірку меж буферів;
  • криптографічний review;
  • аналіз privilege separation;
  • пошук логічних помилок;
  • перевірку default configuration.; rcctl stop sshd
  • security by default;
  • correctness;
  • simplicity;
  • code audit;
  • clean design;
  • minimalism;
  • integrated cryptography;
  • якісна документація;
  • відмова від зайвої складності;
  • консервативний підхід до функцій;
  • ручне й свідоме ввімкнення сервісів.;== OpenBGPD ==

Поширені помилки: Людською мовою: OpenBSD — це платформа, яка часто каже “ні” заради того, щоб решта працювала надійніше.; * OpenSMTPD;

  • spamd;
  • Dovecot через packages;
  • rspamd через packages;
  • DKIM tools;
  • TLS;
  • DNS records;
  • mail aliases;
  • local delivery;
  • relay host.;

OpenBSD має змогу використовуватися для VPN-сценаріїв.; OpenBSD можна використовувати для поштової інфраструктури.;== Висновок ==

Практична роль: relayd надає можливість будувати невеликі, чисті й контрольовані мережеві архітектури без надмірної складності.; sysupgrade !;== Логування ==

OpenBSD добре підходить для компактних серверів із чіткою роллю.; sysupgrade

  • keyboard layout;
  • hostname;
  • network;
  • root password;
  • user account;
  • disk layout;
  • sets;
  • time zone;
  • sshd;
  • mirrors;
  • packages у частині сценаріїв.; LibreSSL — криптографічна бібліотека, розроблена проєктом OpenBSD як форк OpenSSL після гучних проблем у OpenSSL-екосистемі.; syspatch — інструмент для встановлення binary patches для базової системи OpenBSD.; Критерій
  • очікувати поведінку Linux;
  • не читати man pages;
  • вмикати зайві сервіси;
  • писати занадто складний pf.conf;
  • втрачати SSH-доступ через неправильне firewall-правило;
  • не робити backup перед upgrade;
  • не оновлювати packages;
  • ігнорувати `/var/log/authlog`;
  • встановлювати пакети без потреби;
  • редагувати системні файли не тим способом;
  • плутати packages і ports;
  • очікувати ідеальний desktop experience;
  • не перевіряти hardware compatibility.; Можливі сценарії:

|- | Тип | Загальна UNIX-like ОС | Firewall/router дистрибутив на базі FreeBSD |- | Інтерфейс | CLI, конфігураційні файли | Web UI |- | Firewall | PF | PF у FreeBSD-екосистемі |- | Для кого | Досвідчені адміністратори UNIX/BSD | Користувачі, яким потрібен готовий firewall appliance |- | Гнучкість | Вища на рівні ОС | Вища зручність для типових firewall-сценаріїв |}

Це лише навчальний приклад.; pass out Це корисно для:

Офіційна сторінка OpenBSD 7.8 зазначає, що більшість ports доступні як packages на mirrors.;

tail -f /var/log/authlog

Приклади:

Прочитати поради після встановлення

Цікавий факт

OpenBSD часто використовують як firewall/router завдяки наявності PF, стабільній мережевій підсистемі й мінімалістичному підходу.; Вона відома OpenSSH, PF firewall, якісною документацією, мінімальною стандартною інсталяцією, аудитом коду, pledge, unveil, signify, LibreSSL і культурою простоти.; Типові джерела:

істотно: OpenBSD — це не без ускладнень “ще один BSD”.; Критично: перед оновленням сервера потрібно мати backup, доступ до консолі або out-of-band management і план відновлення.; Окремо варто відзначити яка відома дуже сильним фокусом на безпеку, простоту, аудит коду, криптографію, якість документації і мінімалістичний підхід до стандартної інсталяції виступає ключовою рисою OpenBSD.; * OpenBSD часто прибирає або переписує код, якщо вважає його небезпечним або надто складним.;=== Встановити errata patches ===

  • NAT;
  • packet filtering;
  • VPN;
  • routing;
  • DHCP;
  • DNS forwarding;
  • traffic segmentation;
  • small office gateway;
  • home lab firewall;
  • bastion network;
  • network experiments.; Цікава ідея: pledge схожий на договір між програмою й ОС: “я буду робити тільки це, а якщо раптом спробую більше — зупини мене”.; Йдеться саме про стандартну інсталяцію з мінімумом увімкнених сервісів.; завдяки наявності Практична роль: unveil користувачі можуть зробити так, щоб програма не могла випадково або навмисно читати те, що їй не потрібно.;

pkg_info

  • TCP relay;
  • HTTP relay;
  • TLS termination у відповідних конфігураціях;
  • load balancing;
  • health checks;
  • reverse proxy;
  • internal service routing.;

Для приватності істотно:

  • keyboard-driven роботи;
  • легкого desktop;
  • старішого hardware;
  • простого X11-середовища;
  • користувачів, які не хочуть важкий desktop environment.; OpenBSD має змогу використовуватися на різних типах hardware, залежно від поточного релізу:

істотно: OpenBSD storage tools можуть відрізнятися від Linux.;

OpenBSD має дуже сильну культуру документації через man pages.; Цікавий факт: OpenBSD часто реагує на проблеми не косметично, а хірургічно: якщо код поганий, його можуть радикально почистити.;

Перевага: OpenBSD добре підходить для тих, хто хоче систему з чіткою логікою, сильними man pages і security-first культурою.; :contentReference [oaicite:8]{index=8}

Найлюдяніший факт: OpenBSD схожа на інструмент, зроблений майстрами для майстрів.;
  • gaming;
  • desktop для новачка;
  • hardware з проблемною підтримкою;
  • ноутбуків із найновішими Wi-Fi/GPU;
  • Kubernetes-heavy інфраструктури;
  • AI/ML workstation;
  • задач, де потрібна максимальна кількість пакетів;
  • систем, де команда знає лише Linux;
  • комерційного ПЗ, яке підтримує роботу тільки Linux;
  • high-performance storage із ZFS-вимогами;
  • домашнього користувача, якому потрібен “щоб усе працювало саме”.;== OpenBSD і pfSense ==

Інсталяція OpenBSD

Filesystem і storage

LibreSSL

  • `ssh`;
  • `sshd`;
  • `scp`;
  • `sftp`;
  • `ssh-keygen`;
  • `ssh-agent`;
  • `ssh-add`;
  • port forwarding;
  • key-based authentication;
  • secure remote administration.;== Security by default ==

Компоненти можуть включати:

  • routing;
  • BGP-сесій;
  • мережевих операторів;
  • edge routing;
  • internet infrastructure;
  • lab-середовищ;
  • маршрутизації між автономними системами.; OpenBSD

OpenBSD підтримує роботу кілька апаратних архітектур.; офіційно затверджений сайт OpenBSD прямо зазначає, що popular OpenSSH software comes from OpenBSD.; істотно: перед встановленням потрібно перевірити hardware compatibility для конкретної версії OpenBSD і конкретної архітектури.;== OpenBSD і Linux ==

OpenNTPD — NTP daemon від OpenBSD для синхронізації часу.; block all signify — інструмент OpenBSD для цифрового підпису й перевірки файлів.; Приклад:

Архітектури

  • unwind;
  • unbound;
  • nsd;
  • DNS forwarding;
  • caching resolver;
  • authoritative DNS;
  • DNSSEC у відповідних сценаріях.;</syntaxhighlight>
  • `/var/log/messages`;
  • `/var/log/authlog`;
  • daemon logs;
  • PF logs;
  • mail logs;
  • application logs;
  • dmesg;
  • cron logs.; Практична роль: signify — приклад OpenBSD-підходу: маленький інструмент, який робить одну важливу річ і робить її зрозуміло.;

rc.conf.local — файл для локальних налаштувань служб.; Критерій

!; tail -f /var/log/authlog

Практична роль: OpenBSD створює не лише ОС, а й важливі мережеві daemon-и з акцентом на простоту й безпеку.; Цікава деталь: doas — це приклад того, як OpenBSD часто створює маленькі альтернативи великим інструментам, якщо вважає їх надто складними.; pkg_add vim

man pkg_add

Див.; додатково

  • походження з BSD;
  • відгалуження від NetBSD;
  • створення окремої security-first культури;
  • еволюція OpenSSH;
  • поява PF firewall;
  • розробка програмного забезпечення OpenBGPD, OpenNTPD, OpenSMTPD;
  • впровадження exploit mitigation;
  • еволюція pledge і unveil;
  • створення LibreSSL після проблем у OpenSSL-екосистемі;
  • регулярні релізи приблизно кожні пів року;
  • супровід різних апаратних платформ.; OpenBSD має легендарну репутацію в security-спільноті.; серверів забезпечується через OpenBSD часто використовують; додатково реалізовано firewall, маршрутизаторів, VPN-шлюзів, DNS, mail-серверів, навчання UNIX, розробки системного програмного забезпечення, security research і середовищ, де важливі передбачуваність, контроль і невелика attack surface.; Вона дуже сильна у своїх нішах, але не намагається бути універсальною для кожного сценарію.;== PF firewall ==
  • читати `man afterboot`;
  • регулярно встановлювати syspatch;
  • оновлювати packages через `pkg_add -u`;
  • не вмикати зайві сервіси;
  • писати простий pf.conf;
  • використовувати SSH keys;
  • обмежувати root-доступ;
  • використовувати doas замість постійної роботи від root;
  • робити backup перед sysupgrade;
  • читати release notes і upgrade guide;
  • перевіряти `/var/log/authlog`;
  • не встановлювати зайві packages;
  • документувати локальні зміни;
  • тримати конфігурації під контролем версій;
  • тестувати firewall-правила перед віддаленим застосуванням.;
    pass in on egress proto tcp to port 22
    
    == Firewall і router ==
    
    * мінімум увімкнених сервісів;
    * безпечніші конфігурація за замовчуванням;
    * регулярний аудит коду;
    * вбудовані exploit mitigations;
    * консервативна конфігурація;
    * якісні man pages;
    * прості інструменти;
    * ручне ввімкнення додаткових сервісів;
    * уважне ставлення до криптографії;
    * принцип “краще вимкнено, доки не потрібно”.; pfSense
    
    '''центральний внесок:''' навіть якщо OpenBSD не стоїть на вашому сервері, OpenSSH має змогу бути щоденним інструментом вашої роботи.; !; '''істотно:''' поштовий сервер завжди потребує уважної конфігурації: DNS, SPF, DKIM, DMARC, TLS, relay rules і spam control.; rcctl enable sshd
    <div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
    <syntaxhighlight lang="sh">
    
    OpenSSH охоплює:
    '''softraid''' в OpenBSD застосовується для програмного RAID і шифрування дисків.;== OpenSMTPD ==
    
    !;

block all

Під час інсталяції налаштовуються:

  • правила блокування;
  • дозволені з’єднання;
  • NAT;
  • redirection;
  • tables;
  • macros;
  • anchors;
  • logging;
  • anti-spoofing;
  • правила для окремих інтерфейсів.;</syntaxhighlight>
  • X11;
  • xenodm;
  • cwm;
  • fvwm;
  • різні window managers;
  • Firefox;
  • Chromium;
  • LibreOffice;
  • редактори;
  • термінали;
  • mail clients;
  • development tools.; Проєкт не намагається подобатися всім.; :contentReference [oaicite:3]{index=3}

Він застосовується для:

pledge

Оновити пакети

unveil — механізм OpenBSD для обмеження доступу програми до файлової системи.; Цікавий факт: OpenBSD часто стоїть “на краю мережі”, де помилки конфігурації особливо помітні.;
Практична роль: у OpenBSD зазвичай простіше встановлювати готові binary packages, а ports використовувати тоді, коли справді треба збирати самостійно.;

pass in on egress proto tcp to port 22

Аудит коду

OpenSMTPD — поштовий сервер, створений у межах OpenBSD-проєкту.; OpenSSH — один із найважливіших проєктів, що походить з OpenBSD.; Практична роль: rcctl робить керування службами в OpenBSD простим і передбачуваним.;

Загальний характеристика

Увімкнути SSH daemon

{{SEO

uname -a

pf.conf

Такий підхід дає: tail -f /var/log/messages

man sshd_config

  • secure defaults;
  • code audit;
  • privilege separation;
  • pledge;
  • unveil;
  • W^X;
  • ASLR;
  • stack protection;
  • signed packages;
  • signify;
  • minimal services;
  • strong cryptography;
  • careful daemon design;
  • conservative development culture.;

Практична роль: PF — одна з причин, чому OpenBSD часто обирають для firewall і мережевих шлюзів.;== Приклад простого pf.conf ==

pf.conf — конфігураційний файл PF.;

</syntaxhighlight>

syspatch корисний для:

<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">
</div>

</div>

OpenBSD часто не додає функцію лише з цієї причини, що вона популярна.;== Серверне використання ==
== Mail server ==

{| class="wikitable"

'''Критично:''' не застосовуйте firewall-правила на віддаленому сервері без тесту, резервного доступу й плану відкату.; '''Цікавий момент:''' OpenBSD не без ускладнень додає нові “захисні фічі”, а часто прибирає зайву складність, бо складність сама по собі є собою джерелом багів.; * мінімізувати зайві сервіси;
* перевіряти пакети;
* контролювати логи;
* налаштовувати firewall;
* використовувати шифрування диска;
* оновлювати систему;
* не встановлювати зайві daemon-и;
* контролювати браузер і web-застосунки;
* не плутати privacy з anonymity.; rcctl застосовується для:

== rc.conf.local ==
<syntaxhighlight lang="sh">
<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">

== Цікаві факти про OpenBSD ==

'''Підказка:''' базовий набір OpenBSD-адміністратора  `man`, `rcctl`, `pkg_add`, `syspatch`, `sysupgrade`, `pfctl`, `dmesg` і уважне читання `/var/log`.;<syntaxhighlight lang="sh">
<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

OpenBSD можна використовувати для DNS-сервісів.; pfctl -sr rcctl status sshd

== Приватність ==

<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">

* FFS;
* disklabel;
* softraid;
* encrypted disks;
* swap;
* mount points;
* dump/restore;
* fsck;
* partitions;
* backups.; Розробники шукають помилки не лише після інцидентів, а й проактивно.;</div>
'''Практична порада:''' у OpenBSD краще працювати “як задумано системою”, а не ламати стандартну структуру конфігурацій.; doas має мінімалістичну конфігурацію й відповідає стилю OpenBSD: менше коду, менше складності, зрозумілі правила.; * OpenBSD не боїться бути нішевою.;<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">

</div>

man afterboot
== OpenBSD і FreeBSD ==
<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">
OpenBSD після встановлення зазвичай має небагато увімкнених сервісів.;</div>
<syntaxhighlight lang="sh">
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">

Типові теми актуалізація:

</div>

'''Практична роль:''' у OpenBSD логи часто прості, текстові й зрозумілі  це дуже сприяє під час діагностики.; Linux
man afterboot

'''doas'''  простіший інструмент для виконання команд з іншими правами, часто як альтернатива sudo.; Саме portability є собою однією з офіційно зазначених цілей проєкту.; Інший цікавий факт: '''OpenSSH''', один із найважливіших інструментів безпечного віддаленого доступу у світі UNIX/Linux, походить саме з OpenBSD.; Якщо функція ускладнює систему або створює небажані ризики, її можуть не прийняти.; :contentReference [oaicite:1]{index=1}

OpenBSD має власний підхід до файлових систем і storage.; * логів;

  • TLS;
  • Kerberos;
  • distributed systems;
  • audit;
  • monitoring;
  • scheduled tasks;
  • debugging;
  • security events.; Вона не прагне бути найзручнішим desktop, наймасовішою cloud-платформою або найширшою package-екосистемою.; :contentReference [oaicite:5]{index=5}

pkg_add і пакети

істотно: OpenBSD — не “найкраща ОС для всього”.;

rcctl

Висновок: NetBSD славиться переносимістю, а OpenBSD — безпекою, аудитом і мінімалістичним дизайном.; Цікава деталь: інсталятор OpenBSD має змогу виглядати старомодно, але його цінують за те, що він швидкий, зрозумілий і не приховує важливі рішення для бізнесу.;

rcctl — інструмент для керування системними службами в OpenBSD.;== unveil == PF або Packet Filter — firewall, який з’явився в OpenBSD і став одним із найвідоміших BSD firewall-рішень.; OpenBSD застосовується для:

  • серверів;
  • firewall;
  • маршрутизаторів;
  • VPN;
  • DNS;
  • mail-серверів;
  • web-серверів;
  • bastion hosts;
  • security appliances;
  • UNIX-навчання;
  • системного програмування;
  • криптографічних інструментів;
  • мережевої інфраструктури;
  • minimal desktop для досвідчених користувачів;
  • розробки secure software;
  • експериментів із BSD-системами.; OpenBSD

істотно: ports — це не ключовий шлях для кожного користувача.; * OpenBSD man pages.; Навіть якщо людина ніколи не встановлювала OpenBSD, вона майже напевно користувалася OpenSSH.;

Офіційна сторінка релізу OpenBSD 7.8, як ілюстрація, згадує signify pubkeys для релізу.; pkg_add -u
syspatch
Можливі варіанти:

'''Найцікавіше:''' OpenBSD впливає на світ набагато сильніше, ніж здається за її часткою користувачів.; '''Практична роль:''' правильний час у системі  це дрібниця лише до першого випадку, коли логи різних серверів неможливо зіставити.; Це проєкт із дуже виразною філософією: краще менше, але якісніше, простіше й безпечніше.; Вона намагається бути простою, зрозумілою, правильною й безпечною за замовчуванням.; '''істотно:''' VPN потрібно налаштовувати обережно: криптографія, ключі, маршрути, firewall і access control мають бути узгоджені.; Вона не завжди зручна для всіх, але дуже приємна для тих, хто цінує порядок і ясність.; У OpenBSD 7.8 передбачено численні зміни в ядрі, драйверах, мережевій підсистемі, архітектурній підтримці, userland, пакетах і безпеці.;<syntaxhighlight lang="sh">

Можливі задачі:

!; * OpenBSD 7.8 Release.; man afterboot

<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">
== OpenBSD 7.8 ==
OpenBSD має власний простий web server  '''httpd'''.; Якщо диск пошкоджено або втрачено пароль, інформаційні дані можуть бути недоступні.; офіційно затверджений changelog 7.8 містить детальний перелік змін між 7.7 і 7.8.; * OpenBSD 7.8 Changelog.; * У OpenBSD дуже серйозно ставляться до man pages.; Критерій

* офіційно затверджений сайт OpenBSD.;

Критично: навіть OpenBSD можна зробити небезпечною поганою конфігурацією.; * security patches;

  • errata patches;
  • швидкого актуалізація base system;
  • підтримки актуального стану;
  • production-серверів.; :contentReference [oaicite:4]{index=4}

Практична роль: OpenBSD особливо добре функціонує, коли сервер має одну зрозумілу роль і мінімум зайвого.; Документація є собою частиною культури проєкту.; Можливі проблеми:

Висновок: Linux краще для масових задач і hardware compatibility, а OpenBSD — для простих, контрольованих, security-focused систем.; OpenBSD використовує класичні UNIX-механізми логування.;

Вона сприяє зрозуміти, що зробити після першого встановлення.; * OpenBSD ports and packages documentation.; Програма має змогу бачити лише ті частини файлової системи, які їй явно відкриті.; Приклади:

OpenBGPD — реалізація BGP daemon від OpenBSD.; Небезпека: найпростіший спосіб зламати OpenBSD — намагатися перетворити її на Linux і не читати документацію.; OpenBSD можна використовувати як desktop, але це не її головна масова ніша.; * Маскот OpenBSD — риба Puffy.;
  • sandboxing;
  • обмеження шкоди від багів;
  • зменшення доступу до зайвих файлів;
  • простішого security review;
  • захисту конфігурацій і даних;
  • принципу least privilege.;

Типові помилки початківців

</syntaxhighlight>

Типові серверні сценарії:

Приклад команди:

  • encrypted laptop;
  • encrypted server disk;
  • RAID;
  • disk redundancy;
  • boot disk encryption у відповідних конфігураціях;
  • захист даних при втраті пристрою.;== DNS ==

Man pages

</div>
rcctl start sshd
'''OpenBSD 7.8'''  актуальний реліз OpenBSD, випущений 22 жовтня 2025 року.; '''Висновок:''' OpenBSD частіше обирають за security-first підхід, а FreeBSD  за універсальність, продуктивність, ZFS і ширші серверні сценарії.;<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
Пакети використовуються для встановлення:
</div>

<div style="background:#fdecea; border-left:6px solid #e74c3c; padding:12px; margin:12px 0;">

</div>

== httpd ==

Desktop на OpenBSD має змогу включати:

<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">
офіційно затверджений сайт описує OpenBSD як '''FREE, multi-platform 4.4BSD-based UNIX-like operating system''' із фокусом на portability, standardization, correctness, proactive security та integrated cryptography.; OpenBSD часто приваблює користувачів, які цінують контроль над системою.; :contentReference [oaicite:6]{index=6}

<syntaxhighlight lang="sh">

* SSH bastion;
* firewall;
* router;
* VPN gateway;
* DNS server;
* web server;
* mail relay;
* monitoring node;
* small database server;
* internal tools;
* Git server;
* security lab;
* jump host.;<div style="background:#fef2f2; border-left:6px solid #ef4444; padding:12px; margin:12px 0;">
Філософію OpenBSD можна описати кількома словами:
OpenBSD не є собою найкращою ОС для кожного користувача.; '''Головна думка:''' OpenBSD  це операційна платформа для людей, які цінують простоту, документацію, безпеку й контроль більше, ніж блискучі функції та максимальну універсальність.; На офіційному сайті проєкту довгий час застосовують, коли потрібно фраза: '''“Only two remote holes in the default install, in a heck of a long time!”''' Це не означає, що будь-яка платформа OpenBSD автономно невразлива.;<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">
</div>
=== Перевірити PF ===

<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">

'''Практична роль:''' OpenBSD має передбачуваний ритм релізів, з цієї причини адміністратору істотно планувати актуалізація, а не залишати систему на старій версії роками.; OpenBSD

</div>

<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">

* SMTP;
* mail relay;
* локальної доставки пошти;
* простих mail-серверів;
* relay-сценаріїв;
* системних повідомлень;
* інтеграції з іншими mail-компонентами.; Це набір інструментів для безпечного віддаленого доступу, копіювання файлів і тунелювання.; Сьогодні OpenSSH використовують не лише користувачі OpenBSD, а й Linux-сервери, macOS, мережеве обладнання, хмарні платформи й багато enterprise-систем.;</div>
|-
| Тип
| Цілісна BSD-система
| Ядро + дистрибутиви
|-
| Фокус
| Security, correctness, simplicity
| Дуже широкий спектр задач
|-
| Пакети
| pkg_add, ports
| Залежить від дистрибутива
|-
| Hardware support
| Обмеженіший
| Зазвичай ширший
|-
| Desktop
| Нішевий
| Масовий у Linux-світі
|-
| Server
| Добрий для чітких ролей
| Дуже широкий server/cloud ecosystem
|}

'''Головне правило:''' OpenBSD найкраще функціонує, коли платформа проста, роль сервера зрозуміла, а адміністратор читає документацію.; У ньому можна описувати:

pfctl -nf /etc/pf.conf

* серверного ПЗ;
* desktop-застосунків;
* мов програмування;
* редакторів;
* баз даних;
* web-серверів;
* утиліт;
* development tools.;<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

* WireGuard через packages;
* IPsec;
* OpenVPN через packages;
* SSH tunnels;
* site-to-site VPN;
* remote access VPN;
* encrypted management access.;

OpenBSD і NetBSD

cwm підходить для:

Головна перевага: OpenBSD змушує думати про систему як про інженерний об’єкт: що ввімкнено, навіщо, як це захищено і як це документовано.;
  • читання файлів;
  • мережа;
  • stdio;
  • DNS;
  • робота з process;
  • інші чітко визначені групи можливостей.; Офіційна сторінка релізу зазначає, що це 59-й реліз OpenBSD.; pledge — механізм OpenBSD, який надає можливість програмі добровільно обмежити свої функціональні можливості.;=== Оновити систему до наступного релізу ===
Правило: OpenBSD дає хороший контроль, але приватність залежить від поведінки користувача, мережі, браузера й сервісів, якими він користується.;
pkg_add package_name
man rcctl
|-
| ключовий фокус
| Безпека, correctness, minimalism
| Продуктивність, сервери, storage, ширша універсальність
|-
| Firewall
| PF як центральний інструмент
| PF, IPFW, інші варіанти
|-
| Desktop
| Можливий, але не головна ніша
| Частіше застосовується як desktop/server у BSD-світі
|-
| Storage
| Простішій підхід
| ZFS  одна з сильних сторін
|-
| Культура
| Security-first і консервативна
| Більш універсальна й performance-oriented
|}

!; :contentReference [oaicite:7]{index=7}
!; LibreSSL став прикладом OpenBSD-підходу:

</div>

</div>
== doas ==
=== Перевірити версію ===

'''Практична порада:''' OpenBSD варто обирати тоді, коли ви готові прийняти її стиль: простота, документація, ручна конфігурація й security-first мислення.; Не варто переносити Linux-звички без читання документації.; '''Практична порада:''' mail server  одна з найскладніших серверних задач.;</div>

== Мінімальна стандартна інсталяція ==
  • обмеженіша hardware support, ніж у Linux;
  • не найкращий вибір для gaming;
  • менша кількість пакетів;
  • повільніша супровід деяких нових пристроїв;
  • не cloud-native за замовчуванням;
  • менше tutorial-контенту, ніж для Linux;
  • деякі програми можуть бути недоступні;
  • desktop-сценарії потребують більше знань;
  • нижча продуктивність у деяких workloads;
  • специфічна BSD-адміністрація;
  • потрібно читати документацію;
  • не підходить для всіх серверних задач.;== переважні аспекти OpenBSD ==

Приклади команд OpenBSD

OpenBSD добре підходить, якщо потрібно:

  • менше відкритих портів;
  • менше випадкових сервісів;
  • менше неочевидних залежностей;
  • простіший аудит;
  • кращу передбачуваність;
  • зрозумілішу систему для адміністратора;
  • безпечнішу стартову точку.; Безпечна ОС не рятує від слабких паролів, відкритих сервісів і неоновлених пакетів.; * OpenSSH documentation.; Він має змогу використовуватися для:
OpenBSD має багато security-механізмів.;

man pf.conf Приклад ідеї:

Помилка: ставити OpenBSD лише через репутацію безпеки, не розуміючи її обмежень, hardware support і відмінностей від Linux.; * security by default;

  • якісна документація;
  • мінімальна стандартна інсталяція;
  • OpenSSH;
  • PF firewall;
  • pledge;
  • unveil;
  • signify;
  • LibreSSL;
  • прості конфігураційні файли;
  • регулярні релізи;
  • сильна UNIX-культура;
  • інтегрована базова платформа;
  • хороший вибір для firewall;
  • хороший вибір для bastion host;
  • чистий design;
  • менше зайвої складності.; Критично: шифрування диска не замінює backup.; Аудит має змогу включати:
Основна ідея: OpenBSD — це операційна платформа, яка не намагається бути наймоднішою.; Інсталятор OpenBSD відомий простотою.; OpenBSD дає хороші інструменти, але DNS, репутація, spam і TLS усе одно потребують уваги.; * OpenBSD FAQ.;
<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">
'''Увага:''' OpenBSD desktop підійде не всім.; OpenSSH застосовується в багатьох операційних системах далеко за межами OpenBSD.; * Документація щодо pledge, unveil, signify, rcctl, syspatch, sysupgrade і OpenBSD security.; !; Особливо важлива сторінка:

<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">
  • перевірки релізів;
  • перевірки пакетів;
  • підпису важливих файлів;
  • простішої криптографічної перевірки;
  • захисту supply chain;
  • довіри до оновлень.; * OpenSSH, один із найважливіших security-інструментів у світі, походить із OpenBSD.;

Практична роль: httpd добре вписується в OpenBSD-філософію: простий, зрозумілий, мінімалістичний web server.; Основні переважні аспекти OpenBSD: Синхронізація часу важлива для:

Обмеження OpenBSD

Desktop на OpenBSD

Практична роль: syspatch надає можливість простіше встановлювати важливі виправлення без ручної збірки системи.;

OpenBSD має змогу бути не найкращим вибором для: </syntaxhighlight>

як ілюстрація, програма має змогу “пообіцяти”, що їй потрібні лише:

  • firewall;
  • router;
  • SSH bastion;
  • простий і безпечний server;
  • VPN gateway;
  • DNS server;
  • mail relay;
  • security lab;
  • навчання UNIX;
  • мінімалістична платформа;
  • платформа з хорошими man pages;
  • контрольована мережева інфраструктура;
  • вивчення PF;
  • UNIX-середовище без зайвої складності.; OpenBSD

істотно: security by default не означає “можна нічого не налаштовувати”.; Ви самі відкриваєте тільки ті, які справді потрібні.;== relayd == До них належать: Проста аналогія: OpenBSD не дає вам будинок із усіма дверима відчиненими.; Він текстовий, швидкий і не намагається бути красивим.;== Ports tree ==

</syntaxhighlight>

OpenSSH

== syspatch ==
OpenBSD виникла як відгалуження від NetBSD у 1995 році.; Це означає, що початкова точка безпечніша, але адміністратор усе одно відповідає за конфігурацію.; Для gaming, multimedia або нових ноутбуків Linux чи інша desktop-ОС часто буде простішою.; syspatch

* OpenBSD має власну культуру релізного artwork: кожен реліз часто супроводжується оригінальними ілюстраціями й темою.;== OpenNTPD ==

* увімкнення служб;
* запуску служб;
* зупинки служб;
* перевірки статусу;
* керування параметрами daemon-ів;
* адміністрування server services.;== Безпека OpenBSD ==
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
</div>
|-
| Походження
| Відгалуження від NetBSD
| BSD-система з фокусом на portability
|-
| ключовий акцент
| Security і correctness
| Portability
|-
| Архітектури
| Кілька підтримуваних платформ
| Дуже широкий фокус на різні платформи
|-
| Культура
| Security-first
| “Of course it runs NetBSD”
|}

set skip on lo
<div style="background:#ecfdf5; border-left:6px solid #10b981; padding:12px; margin:12px 0;">
</div>

pkg_delete package_name

'''Висновок:''' pfSense зручніший як готовий firewall із web UI, а OpenBSD  як чиста платформа для тих, хто хоче повний контроль через конфігурацію.;</div>

== signify ==

== cwm ==

Основні історичні напрями:

* backup;
* sysupgrade;
* package update;
* reading upgrade notes;
* config file changes;
* reboot;
* errata patches;
* перевірка сервісів;
* перевірка PF;
* перевірка packages.;=== Подивитися auth logs ===
</div>
</div>

pkg_add -u

Встановити пакет

Коли OpenBSD має змогу бути невдалим вибором

Приклади:

Ports tree — платформа для збирання програм із вихідного коду.;

rcctl enable sshd

Вона застосовується для:

актуалізація OpenBSD

Man pages часто є собою першим і найкращим джерелом інформації.;

Типові теми:

; Для більшості задач достатньо pkg_add.;

</syntaxhighlight>

VPN

OpenBSD має обмеження.; :contentReference [oaicite:2]{index=2}

Security by default означає, що платформа після встановлення має бути максимально обережною.; * Матеріали щодо BSD, UNIX-like systems, firewall, SSH, network security і server hardening.; Він підходить для:

!;<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">
  • packet filtering;
  • NAT;
  • port forwarding;
  • traffic shaping у відповідних сценаріях;
  • firewall gateway;
  • router;
  • VPN gateway;
  • redirection;
  • table-based rules;
  • network segmentation.; У реальному firewall потрібно враховувати інтерфейси, IPv6, ICMP, anti-spoofing, VPN, NAT, logging, management access і ризик втрати віддаленого доступу.; PF застосовується для:

Основні команди: Можливі компоненти:

Хороші практики OpenBSD

істотно: firewall-правила мають бути простими й зрозумілими.; * PF User's Guide.; Саме з цієї причини простота PF дуже цінується.; Рекомендовано:

  • прибрати небезпечний або застарілий код;
  • спростити реалізацію;
  • провести аудит;
  • зробити бібліотеку більш підтримуваною;
  • зменшити складність;
  • зберегти потрібну сумісність у межах можливого.; rcctl start sshd

Тематичні мітки

  • збірки з нестандартними опціями;
  • підтримки пакетів;
  • розробки портів;
  • тестування;
  • адаптації програм під OpenBSD;
  • участі в ports@ спільноті.; cwm — легкий window manager, який входить в OpenBSD.; Складний pf.conf без документації без зайвих зусиль перетворюється на пастку для адміністратора.; permit persist admin as root
Цікавий факт: в OpenBSD фраза “читай man page” часто не грубість, а справді хороша порада — документація там зазвичай якісна й практична.;
OpenBSD — це вільна UNIX-подібна операційна платформа з родини BSD, яка стала символом security-first підходу.; З часом OpenBSD сформувала власну культуру: відкритість коду, жорсткий аудит, мінімалізм, криптографія, чистота реалізації та дуже прямий підхід до security.;
; OpenBSD регулярно випускає нові релізи.; FreeBSD

</syntaxhighlight>

Джерела

Коли варто використовувати OpenBSD

  • amd64;
  • arm64;
  • armv7;
  • i386 у відповідних старіших/підтримуваних сценаріях;
  • sparc64;
  • powerpc64;
  • riscv64 у сучасних напрямах;
  • інші архітектури залежно від релізу.;

історичний розвиток OpenBSD

</syntaxhighlight>

Цікава деталь: OpenBSD desktop часто більше схожий на інструментальну майстерню, ніж на блискучий торговий центр.; Її сила — у контрольованих, зрозумілих, мережевих і security-focused сценаріях: firewall, router, SSH bastion, DNS, mail relay, простий сервер, security lab або навчання UNIX.;
Ports корисні для:
Приклад ідеї правила PF:

</div>

це вільна UNIX-подібна операційна платформа з родини BSD.; Це зменшує attack surface.; pfctl -f /etc/pf.conf

* простих сайтів;
* статичних сторінок;
* small web services;
* reverse proxy у частині сценаріїв;
* internal tools;
* документації;
* lightweight hosting.; !;<syntaxhighlight lang="sh">

</div>

<syntaxhighlight lang="text">
Якщо програма після цього намагається зробити щось неочікуване, платформа має змогу її зупинити.; актуалізація потрібно робити уважно, читаючи upgrade guide.; Проєкт очолив Theo de Raadt.; NetBSD

Він мінімалістичний, швидкий і добре відповідає OpenBSD-стилю.; pass out
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
У OpenBSD істотно не редагувати системні файли без потреби, а використовувати правильні локальні конфігураційні механізми.;<syntaxhighlight lang="sh">
== softraid і шифрування ==

relayd — OpenBSD daemon для relay, load balancing і proxy-сценаріїв.; Критерій signify застосовується для: У OpenBSD це проявляється так:

OpenBSD має систему binary packages.; * PF firewall з OpenBSD вплинув на інші BSD-екосистеми й firewall-рішення.; * У світі OpenBSD “простий” часто означає “безпечніший, зрозуміліший і легший для аудиту”.;

OpenBSD відома культурою аудиту коду.;== Філософія OpenBSD ==

dmesg