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

OpenBSD

Матеріал з K2 ERP Wiki
Версія від 08:13, 9 травня 2026, створена R (обговорення | внесок) (Створена сторінка: {{SEO |title=OpenBSD — безпечна UNIX-подібна операційна система з фокусом на аудит коду, криптографію, мережі й простоту |description=OpenBSD — Wiki-стаття про вільну 4.4BSD-based UNIX-like операційну систему, відому фокусом на security by default, аудитом коду, OpenSSH, PF firewall, LibreSSL, pledge, unveil, signify,...)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
 

'''LibreSSL'''  криптографічна бібліотека, розроблена проєктом OpenBSD як форк OpenSSL після гучних проблем у OpenSSL-екосистемі.;== OpenBGPD ==
<div style="background:#fef2f2; border-left:6px solid #ef4444; padding:12px; margin:12px 0;">
'''Людською мовою:''' OpenBSD  це платформа, яка часто каже “ні” заради того, щоб решта працювала надійніше.; OpenBSD

rcctl enable sshd

<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.; Вона сприяє зрозуміти, що зробити після першого встановлення.;== OpenNTPD ==
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">

</div>

'''Цікавий факт:''' OpenBSD часто реагує на проблеми не косметично, а хірургічно: якщо код поганий, його можуть радикально почистити.; '''OpenBGPD'''  реалізація BGP daemon від OpenBSD.;== Приклади команд OpenBSD ==

</div>
  • походження з BSD;
  • відгалуження від NetBSD;
  • створення окремої security-first культури;
  • еволюція OpenSSH;
  • поява PF firewall;
  • розробка програмного забезпечення OpenBGPD, OpenNTPD, OpenSMTPD;
  • впровадження exploit mitigation;
  • еволюція pledge і unveil;
  • створення LibreSSL після проблем у OpenSSL-екосистемі;
  • регулярні релізи приблизно кожні пів року;
  • супровід різних апаратних платформ.;
Практична роль: signify — приклад OpenBSD-підходу: маленький інструмент, який робить одну важливу річ і робить її зрозуміло.; * OpenBSD не боїться бути нішевою.; * OpenBSD FAQ.; OpenBSD використовує класичні UNIX-механізми логування.;
Ports корисні для:

Приклад ідеї правила PF:

</div>

це вільна UNIX-подібна операційна платформа з родини BSD.; :contentReference [oaicite:2]{index=2}

'''Помилка:''' ставити OpenBSD лише через репутацію безпеки, не розуміючи її обмежень, hardware support і відмінностей від Linux.; '''Цікавий факт:''' в OpenBSD фраза “читай man page” часто не грубість, а справді хороша порада — документація там зазвичай якісна й практична.; Навіть якщо людина ніколи не встановлювала OpenBSD, вона майже напевно користувалася OpenSSH.;== OpenBSD і Linux ==
'''Цікавий момент:''' OpenBSD не без ускладнень додає нові “захисні фічі”, а часто прибирає зайву складність, бо складність сама по собі є собою джерелом багів.; '''OpenSSH''' — один із найважливіших проєктів, що походить з OpenBSD.;<syntaxhighlight lang="sh">
== Джерела ==

</div>

pkg_add -u

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

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

Приклади:

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

Поширені помилки:

Встановити errata patches

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

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

OpenBSD має багато security-механізмів.; * OpenBSD 7.8 Release.;

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

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

Man pages часто є собою першим і найкращим джерелом інформації.; На офіційному сайті проєкту довгий час застосовують, коли потрібно фраза: “Only two remote holes in the default install, in a heck of a long time!” Це не означає, що будь-яка платформа OpenBSD автономно невразлива.; завдяки наявності Практична роль: unveil користувачі можуть зробити так, щоб програма не могла випадково або навмисно читати те, що їй не потрібно.; Практична роль: правильний час у системі — це дрібниця лише до першого випадку, коли логи різних серверів неможливо зіставити.;== Обмеження OpenBSD ==

Висновок: pfSense зручніший як готовий firewall із web UI, а OpenBSD — як чиста платформа для тих, хто хоче повний контроль через конфігурацію.; Проєкт очолив Theo de Raadt.;

Приклади:

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

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

'''Увага:''' OpenBSD desktop підійде не всім.;== Security by default ==

== Серверне використання ==

* логів;
* TLS;
* Kerberos;
* distributed systems;
* audit;
* monitoring;
* scheduled tasks;
* debugging;
* security events.;<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">

* мінімум увімкнених сервісів;
* безпечніші конфігурація за замовчуванням;
* регулярний аудит коду;
* вбудовані exploit mitigations;
* консервативна конфігурація;
* якісні man pages;
* прості інструменти;
* ручне ввімкнення додаткових сервісів;
* уважне ставлення до криптографії;
* принцип “краще вимкнено, доки не потрібно”.; pfctl -f /etc/pf.conf
OpenBSD добре підходить, якщо потрібно:

Практична роль: OpenBSD створює не лише ОС, а й важливі мережеві daemon-и з акцентом на простоту й безпеку.;== Безпека OpenBSD ==

|- | Походження | Відгалуження від NetBSD | BSD-система з фокусом на portability |- | ключовий акцент | Security і correctness | Portability |- | Архітектури | Кілька підтримуваних платформ | Дуже широкий фокус на різні платформи |- | Культура | Security-first | “Of course it runs NetBSD” |}

Приклад простого pf.conf

pkg_delete package_name

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

Висновок: OpenBSD частіше обирають за security-first підхід, а FreeBSD — за універсальність, продуктивність, ZFS і ширші серверні сценарії.; Практична роль: OpenBSD добре підходить для невеликих DNS-серверів, де потрібна проста й контрольована конфігурація.; |- | Тип | Цілісна BSD-система | Ядро + дистрибутиви |- | Фокус | Security, correctness, simplicity | Дуже широкий спектр задач |- | Пакети | pkg_add, ports | Залежить від дистрибутива |- | Hardware support | Обмеженіший | Зазвичай ширший |- | Desktop | Нішевий | Масовий у Linux-світі |- | Server | Добрий для чітких ролей | Дуже широкий server/cloud ecosystem |}

block all

signify — інструмент OpenBSD для цифрового підпису й перевірки файлів.;

}}

Він підходить для:

  • sandboxing;
  • обмеження шкоди від багів;
  • зменшення доступу до зайвих файлів;
  • простішого security review;
  • захисту конфігурацій і даних;
  • принципу least privilege.; Можливі варіанти:
  • перевірки релізів;
  • перевірки пакетів;
  • підпису важливих файлів;
  • простішої криптографічної перевірки;
  • захисту supply chain;
  • довіри до оновлень.; Перевага: OpenBSD добре підходить для тих, хто хоче систему з чіткою логікою, сильними man pages і security-first культурою.;

офіційно затверджений сайт описує OpenBSD як FREE, multi-platform 4.4BSD-based UNIX-like operating system із фокусом на portability, standardization, correctness, proactive security та integrated cryptography.; Вона не завжди зручна для всіх, але дуже приємна для тих, хто цінує порядок і ясність.; істотно: OpenBSD storage tools можуть відрізнятися від Linux.; Головна думка: OpenBSD — це операційна платформа для людей, які цінують простоту, документацію, безпеку й контроль більше, ніж блискучі функції та максимальну універсальність.; У ньому можна описувати:

</syntaxhighlight>

DNS

doas — простіший інструмент для виконання команд з іншими правами, часто як альтернатива sudo.; NetBSD

істотно: security by default не означає “можна нічого не налаштовувати”.; Цікава деталь: doas — це приклад того, як OpenBSD часто створює маленькі альтернативи великим інструментам, якщо вважає їх надто складними.; OpenBSD має змогу використовуватися для VPN-сценаріїв.; Приклад:

Архітектури

  • unwind;
  • unbound;
  • nsd;
  • DNS forwarding;
  • caching resolver;
  • authoritative DNS;
  • DNSSEC у відповідних сценаріях.; Приклад команди:

OpenBSD має легендарну репутацію в security-спільноті.; man pkg_add Критично: перед оновленням сервера потрібно мати backup, доступ до консолі або out-of-band management і план відновлення.; sysupgrade

; Практична порада: у OpenBSD краще працювати “як задумано системою”, а не ламати стандартну структуру конфігурацій.;=== Перевірити версію ===
* прибрати небезпечний або застарілий код;
* спростити реалізацію;
* провести аудит;
* зробити бібліотеку більш підтримуваною;
* зменшити складність;
* зберегти потрібну сумісність у межах можливого.; * NAT;
* packet filtering;
* VPN;
* routing;
* DHCP;
* DNS forwarding;
* traffic segmentation;
* small office gateway;
* home lab firewall;
* bastion network;
* network experiments.;</div>

Компоненти можуть включати:
; :contentReference [oaicite:3]{index=3}

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

pledge

</syntaxhighlight> unveil — механізм OpenBSD для обмеження доступу програми до файлової системи.; OpenBSD

</div>

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

Він мінімалістичний, швидкий і добре відповідає OpenBSD-стилю.; '''центральний внесок:''' навіть якщо OpenBSD не стоїть на вашому сервері, OpenSSH має змогу бути щоденним інструментом вашої роботи.; Це означає, що початкова точка безпечніша, але адміністратор усе одно відповідає за конфігурацію.; * OpenBSD 7.8 Changelog.; OpenBSD часто приваблює користувачів, які цінують контроль над системою.; Аудит має змогу включати:
'''Основна ідея:''' OpenBSD  це операційна платформа, яка не намагається бути наймоднішою.;== історичний розвиток OpenBSD ==

</div>

* менше відкритих портів;
* менше випадкових сервісів;
* менше неочевидних залежностей;
* простіший аудит;
* кращу передбачуваність;
* зрозумілішу систему для адміністратора;
* безпечнішу стартову точку.;== signify ==

* backup;
* sysupgrade;
* package update;
* reading upgrade notes;
* config file changes;
* reboot;
* errata patches;
* перевірка сервісів;
* перевірка PF;
* перевірка packages.; * keyboard layout;
* hostname;
* network;
* root password;
* user account;
* disk layout;
* sets;
* time zone;
* sshd;
* mirrors;
* packages у частині сценаріїв.; tail -f /var/log/authlog

</div>

Типові теми актуалізація:
  • перегляд системного коду;
  • пошук небезпечних функцій;
  • спрощення реалізації;
  • видалення застарілого коду;
  • перевірку меж буферів;
  • криптографічний review;
  • аналіз privilege separation;
  • пошук логічних помилок;
  • перевірку default configuration.; doas має мінімалістичну конфігурацію й відповідає стилю OpenBSD: менше коду, менше складності, зрозумілі правила.;

</syntaxhighlight> syspatch

Найцікавіше: OpenBSD впливає на світ набагато сильніше, ніж здається за її часткою користувачів.; * Документація щодо pledge, unveil, signify, rcctl, syspatch, sysupgrade і OpenBSD security.;
pkg_add package_name
|-
| ключовий фокус
| Безпека, correctness, minimalism
| Продуктивність, сервери, storage, ширша універсальність
|-
| Firewall
| PF як центральний інструмент
| PF, IPFW, інші варіанти
|-
| Desktop
| Можливий, але не головна ніша
| Частіше застосовується як desktop/server у BSD-світі
|-
| Storage
| Простішій підхід
| ZFS  одна з сильних сторін
|-
| Культура
| Security-first і консервативна
| Більш універсальна й performance-oriented
|}

man rcctl
!; офіційно затверджений changelog 7.8 містить детальний перелік змін між 7.7 і 7.8.; Окремо варто відзначити яка відома дуже сильним фокусом на безпеку, простоту, аудит коду, криптографію, якість документації і мінімалістичний підхід до стандартної інсталяції виступає ключовою рисою '''OpenBSD'''.; :contentReference [oaicite:1]{index=1}
<syntaxhighlight lang="sh">

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

OpenBSD має власний підхід до файлових систем і storage.;=== Оновити систему до наступного релізу ===

* серверного ПЗ;
* desktop-застосунків;
* мов програмування;
* редакторів;
* баз даних;
* web-серверів;
* утиліт;
* development tools.;== PF firewall ==
</div>
'''Практична роль:''' PF  одна з причин, чому OpenBSD часто обирають для firewall і мережевих шлюзів.;<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">

* routing;
* BGP-сесій;
* мережевих операторів;
* edge routing;
* internet infrastructure;
* lab-середовищ;
* маршрутизації між автономними системами.; '''rcctl'''  інструмент для керування системними службами в OpenBSD.; Це проєкт із дуже виразною філософією: краще менше, але якісніше, простіше й безпечніше.;</div>
серверів забезпечується через OpenBSD часто використовують; додатково реалізовано firewall, маршрутизаторів, VPN-шлюзів, DNS, mail-серверів, навчання UNIX, розробки системного програмного забезпечення, security research і середовищ, де важливі передбачуваність, контроль і невелика attack surface.;</div>

* читання файлів;
* мережа;
* stdio;
* DNS;
* робота з process;
* інші чітко визначені групи можливостей.; Синхронізація часу важлива для:
== Типові помилки початківців ==

'''Цікава деталь:''' інсталятор OpenBSD має змогу виглядати старомодно, але його цінують за те, що він швидкий, зрозумілий і не приховує важливі рішення для бізнесу.; :contentReference [oaicite:6]{index=6}
<syntaxhighlight lang="sh">
</div>

'''softraid''' в OpenBSD застосовується для програмного RAID і шифрування дисків.; У OpenBSD 7.8 передбачено численні зміни в ядрі, драйверах, мережевій підсистемі, архітектурній підтримці, userland, пакетах і безпеці.;</div>

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

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

</div>

</div>

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

<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
pkg_add vim
OpenSSH охоплює:

</div>

</div>

=== Увімкнути SSH daemon ===

{| class="wikitable"
== rcctl ==
man afterboot
</div>
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
'''rc.conf.local'''  файл для локальних налаштувань служб.; З часом OpenBSD сформувала власну культуру: відкритість коду, жорсткий аудит, мінімалізм, криптографія, чистота реалізації та дуже прямий підхід до security.; :contentReference [oaicite:9]{index=9}

'''Висновок:''' NetBSD славиться переносимістю, а OpenBSD  безпекою, аудитом і мінімалістичним дизайном.; pass out

OpenBSD відома культурою аудиту коду.; :contentReference [oaicite:5]{index=5}

== pkg_add і пакети ==
'''істотно:''' OpenBSD  не “найкраща ОС для всього”.; '''Найлюдяніший факт:''' OpenBSD схожа на інструмент, зроблений майстрами для майстрів.; '''Security by default''' означає, що платформа після встановлення має бути максимально обережною.; Desktop на OpenBSD має змогу включати:

'''Небезпека:''' найпростіший спосіб зламати OpenBSD  намагатися перетворити її на Linux і не читати документацію.;== OpenSMTPD ==

!; '''істотно:''' перед встановленням потрібно перевірити hardware compatibility для конкретної версії OpenBSD і конкретної архітектури.;</div>
'''Цікавий факт:''' OpenBSD часто стоїть “на краю мережі”, де помилки конфігурації особливо помітні.; Якщо диск пошкоджено або втрачено пароль, інформаційні дані можуть бути недоступні.;<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">
== unveil ==
'''PF''' або '''Packet Filter'''  firewall, який з’явився в OpenBSD і став одним із найвідоміших BSD firewall-рішень.; Філософію OpenBSD можна описати кількома словами:
set skip on lo
OpenBSD походить із BSD-традиції й розвивається як окрема операційна платформа з власним ядром, userland, документацією, інструментами, ports tree і пакетною системою.; rcctl stop sshd

!; У реальному firewall потрібно враховувати інтерфейси, IPv6, ICMP, anti-spoofing, VPN, NAT, logging, management access і ризик втрати віддаленого доступу.; pfSense
OpenBSD підтримує роботу кілька апаратних архітектур.;<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
</div>
'''Цікава ідея:''' pledge схожий на договір між програмою й ОС: “я буду робити тільки це, а якщо раптом спробую більше  зупини мене”.; * мінімізувати зайві сервіси;
* перевіряти пакети;
* контролювати логи;
* налаштовувати firewall;
* використовувати шифрування диска;
* оновлювати систему;
* не встановлювати зайві daemon-и;
* контролювати браузер і web-застосунки;
* не плутати privacy з anonymity.; Вона дуже сильна у своїх нішах, але не намагається бути універсальною для кожного сценарію.; pass in on egress proto tcp to port 22

== Аудит коду ==
'''OpenSMTPD'''  поштовий сервер, створений у межах OpenBSD-проєкту.; Критерій

* офіційно затверджений сайт OpenBSD.; pfctl -sr
<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
== Інсталяція OpenBSD ==

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

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

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

{| class="wikitable"
Можливі проблеми:
OpenBSD має обмеження.; * `ssh`;
* `sshd`;
* `scp`;
* `sftp`;
* `ssh-keygen`;
* `ssh-agent`;
* `ssh-add`;
* port forwarding;
* key-based authentication;
* secure remote administration.; Проєкт не намагається подобатися всім.; * збірки з нестандартними опціями;
* підтримки пакетів;
* розробки портів;
* тестування;
* адаптації програм під OpenBSD;
* участі в ports@ спільноті.; * OpenBSD ports and packages documentation.; '''істотно:''' ports  це не ключовий шлях для кожного користувача.;

rcctl status sshd

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

uname -a

  • FFS;
  • disklabel;
  • softraid;
  • encrypted disks;
  • swap;
  • mount points;
  • dump/restore;
  • fsck;
  • partitions;
  • backups.; Практична порада: mail server — одна з найскладніших серверних задач.; * Маскот OpenBSD — риба Puffy.; * У світі OpenBSD “простий” часто означає “безпечніший, зрозуміліший і легший для аудиту”.; Якщо функція ускладнює систему або створює небажані ризики, її можуть не прийняти.;

OpenBSD не є собою найкращою ОС для кожного користувача.; :contentReference [oaicite:7]{index=7}

</syntaxhighlight>

  • amd64;
  • arm64;
  • armv7;
  • i386 у відповідних старіших/підтримуваних сценаріях;
  • sparc64;
  • powerpc64;
  • riscv64 у сучасних напрямах;
  • інші архітектури залежно від релізу.; :contentReference [oaicite:4]{index=4}

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

LibreSSL став прикладом OpenBSD-підходу:

переважні аспекти OpenBSD

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

doas

  • security patches;
  • errata patches;
  • швидкого актуалізація base system;
  • підтримки актуального стану;
  • production-серверів.; * OpenSSH documentation.; FreeBSD

Приватність

LibreSSL

rc.conf.local

block all

Перевірити PF

Desktop на OpenBSD

  • правила блокування;
  • дозволені з’єднання;
  • NAT;
  • redirection;
  • tables;
  • macros;
  • anchors;
  • logging;
  • anti-spoofing;
  • правила для окремих інтерфейсів.; !; tail -f /var/log/authlog
  • OpenSMTPD;
  • spamd;
  • Dovecot через packages;
  • rspamd через packages;
  • DKIM tools;
  • TLS;
  • DNS records;
  • mail aliases;
  • local delivery;
  • relay host.; Не варто переносити Linux-звички без читання документації.; * PF firewall з OpenBSD вплинув на інші BSD-екосистеми й firewall-рішення.; Сьогодні OpenSSH використовують не лише користувачі OpenBSD, а й Linux-сервери, macOS, мережеве обладнання, хмарні платформи й багато enterprise-систем.; OpenBSD виникла як відгалуження від NetBSD у 1995 році.;

man afterboot

OpenBSD і FreeBSD

OpenBSD після встановлення зазвичай має небагато увімкнених сервісів.;== Цікаві факти про OpenBSD ==

softraid і шифрування

істотно: VPN потрібно налаштовувати обережно: криптографія, ключі, маршрути, firewall і access control мають бути узгоджені.;</syntaxhighlight>

  • `/var/log/messages`;
  • `/var/log/authlog`;
  • daemon logs;
  • PF logs;
  • mail logs;
  • application logs;
  • dmesg;
  • cron logs.; OpenBSD

Man pages

pkg_add -u

</syntaxhighlight>

OpenBSD 7.8 — актуальний реліз OpenBSD, випущений 22 жовтня 2025 року.; * OpenBSD man pages.;== VPN ==

Практична порада: OpenBSD варто обирати тоді, коли ви готові прийняти її стиль: простота, документація, ручна конфігурація й security-first мислення.; Вона намагається бути простою, зрозумілою, правильною й безпечною за замовчуванням.; Це лише навчальний приклад.;== OpenBSD 7.8 ==

  • security by default;
  • correctness;
  • simplicity;
  • code audit;
  • clean design;
  • minimalism;
  • integrated cryptography;
  • якісна документація;
  • відмова від зайвої складності;
  • консервативний підхід до функцій;
  • ручне й свідоме ввімкнення сервісів.; OpenBSD можна використовувати як desktop, але це не її головна масова ніша.; Йдеться саме про стандартну інсталяцію з мінімумом увімкнених сервісів.;

pfctl -nf /etc/pf.conf

OpenBSD — це вільна UNIX-подібна операційна платформа з родини BSD, яка стала символом security-first підходу.; Безпечна ОС не рятує від слабких паролів, відкритих сервісів і неоновлених пакетів.; Це корисно для:

Інший цікавий факт: OpenSSH, один із найважливіших інструментів безпечного віддаленого доступу у світі UNIX/Linux, походить саме з OpenBSD.; Розробники шукають помилки не лише після інцидентів, а й проактивно.; * У OpenBSD дуже серйозно ставляться до man pages.;== Ports tree ==

Подивитися auth logs

OpenBSD і NetBSD

OpenSSH

OpenBSD можна використовувати для DNS-сервісів.; * WireGuard через packages;
* IPsec;
* OpenVPN через packages;
* SSH tunnels;
* site-to-site VPN;
* remote access VPN;
* encrypted management access.; :contentReference [oaicite:8]{index=8}

<syntaxhighlight lang="sh">

* серверів;
* firewall;
* маршрутизаторів;
* VPN;
* DNS;
* mail-серверів;
* web-серверів;
* bastion hosts;
* security appliances;
* UNIX-навчання;
* системного програмування;
* криптографічних інструментів;
* мережевої інфраструктури;
* minimal desktop для досвідчених користувачів;
* розробки secure software;
* експериментів із BSD-системами.; Вона відома OpenSSH, PF firewall, якісною документацією, мінімальною стандартною інсталяцією, аудитом коду, pledge, unveil, signify, LibreSSL і культурою простоти.; Офіційна сторінка релізу зазначає, що це 59 реліз OpenBSD.;<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">
'''pledge'''  механізм OpenBSD, який надає можливість програмі добровільно обмежити свої функціональні можливості.; * простих сайтів;
* статичних сторінок;
* small web services;
* reverse proxy у частині сценаріїв;
* internal tools;
* документації;
* lightweight hosting.; syspatch
'''pf.conf'''  конфігураційний файл PF.; '''Висновок:''' Linux краще для масових задач і hardware compatibility, а OpenBSD  для простих, контрольованих, security-focused систем.; Саме portability є собою однією з офіційно зазначених цілей проєкту.;<syntaxhighlight lang="sh">
</div>
</div>

Офіційна сторінка релізу OpenBSD 7.8, як ілюстрація, згадує signify pubkeys для релізу.;</div>
'''Головна перевага:''' OpenBSD змушує думати про систему як про інженерний об’єкт: що ввімкнено, навіщо, як це захищено і як це документовано.; * OpenSSH, один із найважливіших security-інструментів у світі, походить із OpenBSD.; '''Головне правило:''' OpenBSD найкраще функціонує, коли платформа проста, роль сервера зрозуміла, а адміністратор читає документацію.; pass out
Основні переважні аспекти OpenBSD:
OpenBSD має власний простий web server  '''httpd'''.; Вона не прагне бути найзручнішим desktop, наймасовішою cloud-платформою або найширшою package-екосистемою.; Критерій

== Висновок ==

</div>

'''Практична роль:''' relayd надає можливість будувати невеликі, чисті й контрольовані мережеві архітектури без надмірної складності.; '''Практична роль:''' rcctl робить керування службами в OpenBSD простим і передбачуваним.; OpenBSD можна використовувати для поштової інфраструктури.;</div>

== Мінімальна стандартна інсталяція ==

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

OpenBSD добре підходить для компактних серверів із чіткою роллю.; OpenBSD дає хороші інструменти, але DNS, репутація, spam і TLS усе одно потребують уваги.; Приклад ідеї:

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

<syntaxhighlight lang="sh">

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

* SMTP;
* mail relay;
* локальної доставки пошти;
* простих mail-серверів;
* relay-сценаріїв;
* системних повідомлень;
* інтеграції з іншими mail-компонентами.;

</syntaxhighlight>

  • firewall;
  • router;
  • SSH bastion;
  • простий і безпечний server;
  • VPN gateway;
  • DNS server;
  • mail relay;
  • security lab;
  • навчання UNIX;
  • мінімалістична платформа;
  • платформа з хорошими man pages;
  • контрольована мережева інфраструктура;
  • вивчення PF;
  • UNIX-середовище без зайвої складності.; Ви самі відкриваєте тільки ті, які справді потрібні.; * OpenBSD має власну культуру релізного artwork: кожен реліз часто супроводжується оригінальними ілюстраціями й темою.; * читати `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-правила перед віддаленим застосуванням.; офіційно затверджений сайт OpenBSD прямо зазначає, що popular OpenSSH software comes from OpenBSD.; relayd — OpenBSD daemon для relay, load balancing і proxy-сценаріїв.; Критерій

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

У OpenBSD це проявляється так:

OpenBSD має систему binary packages.; Її сила — у контрольованих, зрозумілих, мережевих і security-focused сценаріях: firewall, router, SSH bastion, DNS, mail relay, простий сервер, security lab або навчання UNIX.; Документація є собою частиною культури проєкту.; Практична роль: httpd добре вписується в OpenBSD-філософію: простий, зрозумілий, мінімалістичний web server.; Саме з цієї причини простота PF дуже цінується.; як ілюстрація, програма має змогу “пообіцяти”, що їй потрібні лише:

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

sysupgrade

; Практична роль: у OpenBSD логи часто прості, текстові й зрозумілі — це дуже сприяє під час діагностики.; !; Для gaming, multimedia або нових ноутбуків Linux чи інша desktop-ОС часто буде простішою.; * OpenBSD часто прибирає або переписує код, якщо вважає його небезпечним або надто складним.;

httpd

Інсталятор OpenBSD відомий простотою.; Підказка: базовий набір OpenBSD-адміністратора — `man`, `rcctl`, `pkg_add`, `syspatch`, `sysupgrade`, `pfctl`, `dmesg` і уважне читання `/var/log`.;== Firewall і router ==

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

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

<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
Приклади:
=== Прочитати поради після встановлення ===

== Цікавий факт ==

</div>
OpenBSD часто використовують як firewall/router завдяки наявності PF, стабільній мережевій підсистемі й мінімалістичному підходу.; * Матеріали щодо BSD, UNIX-like systems, firewall, SSH, network security і server hardening.; '''Критично:''' навіть OpenBSD можна зробити небезпечною поганою конфігурацією.; OpenBSD
== syspatch ==
Типові джерела:

{| class="wikitable"

'''істотно:''' OpenBSD  це не без ускладнень “ще один BSD”.;</div>

<div style="background:#fdecea; border-left:6px solid #e74c3c; padding:12px; margin:12px 0;">
== Filesystem і storage ==
== Тематичні мітки ==

man pf.conf

== Логування ==

== OpenBSD і pfSense ==

Рекомендовано:
</div>
== Див.; додатково ==

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

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

Офіційна сторінка OpenBSD 7.8 зазначає, що більшість ports доступні як packages на mirrors.;<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">
!; * gaming;
* desktop для новачка;
* hardware з проблемною підтримкою;
* ноутбуків із найновішими Wi-Fi/GPU;
* Kubernetes-heavy інфраструктури;
* AI/ML workstation;
* задач, де потрібна максимальна кількість пакетів;
* систем, де команда знає лише Linux;
* комерційного ПЗ, яке підтримує роботу тільки Linux;
* high-performance storage із ZFS-вимогами;
* домашнього користувача, якому потрібен “щоб усе працювало саме”.;<div style="background:#fff4e5; border-left:6px solid #f39c12; padding:12px; margin:12px 0;">

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

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

Можливі сценарії:
</div>
</div>

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

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

* security by default;
* якісна документація;
* мінімальна стандартна інсталяція;
* OpenSSH;
* PF firewall;
* pledge;
* unveil;
* signify;
* LibreSSL;
* прості конфігураційні файли;
* регулярні релізи;
* сильна UNIX-культура;
* інтегрована базова платформа;
* хороший вибір для firewall;
* хороший вибір для bastion host;
* чистий design;
* менше зайвої складності.;

PF застосовується для: Основні команди:

Можливі компоненти:

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

істотно: firewall-правила мають бути простими й зрозумілими.;== relayd == До них належать:

Проста аналогія: OpenBSD не дає вам будинок із усіма дверима відчиненими.; Практична роль: OpenBSD особливо добре функціонує, коли сервер має одну зрозумілу роль і мінімум зайвого.;== Mail server == </syntaxhighlight> cwm підходить для:

OpenNTPD — NTP daemon від OpenBSD для синхронізації часу.;
  • увімкнення служб;
  • запуску служб;
  • зупинки служб;
  • перевірки статусу;
  • керування параметрами daemon-ів;
  • адміністрування server services.; cwm — легкий window manager, який входить в OpenBSD.; Складний pf.conf без документації без зайвих зусиль перетворюється на пастку для адміністратора.; OpenBSD має змогу використовуватися на різних типах hardware, залежно від поточного релізу:

істотно: поштовий сервер завжди потребує уважної конфігурації: DNS, SPF, DKIM, DMARC, TLS, relay rules і spam control.; Він текстовий, швидкий і не намагається бути красивим.; Критично: шифрування диска не замінює backup.; * 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.; OpenBSD регулярно випускає нові релізи.; * X11;
  • xenodm;
  • cwm;
  • fvwm;
  • різні window managers;
  • Firefox;
  • Chromium;
  • LibreOffice;
  • редактори;
  • термінали;
  • mail clients;
  • development tools.;
    permit persist admin as root
    
    rcctl start sshd
    
    * TCP relay;
    * HTTP relay;
    * TLS termination у відповідних конфігураціях;
    * load balancing;
    * health checks;
    * reverse proxy;
    * internal service routing.; rcctl застосовується для:
    <div style="background:#ecfdf5; border-left:6px solid #10b981; padding:12px; margin:12px 0;">
    
    == cwm ==
    
    OpenBSD має дуже сильну культуру документації через '''man pages'''.;== Загальний характеристика ==
    OpenBSD має змогу бути не найкращим вибором для:
    {{SEO
    |title=OpenBSD  безпечна UNIX-подібна операційна система з фокусом на аудит коду, криптографію, мережі й простоту
    |description=OpenBSD  Wiki-стаття про вільну 4.4BSD-based UNIX-like операційну систему, відому фокусом на security by default, аудитом коду, OpenSSH, PF firewall, LibreSSL, pledge, unveil, signify, ports, pkg_add, мінімальною стандартною інсталяцією, мережевими сервісами, серверами, роутерами, firewall-системами, розробкою, перевагами, обмеженнями, цікавими фактами і хорошими практиками.
    |keywords=OpenBSD, Open BSD, BSD, UNIX-like operating system, 4.4BSD, security by default, OpenSSH, PF firewall, LibreSSL, signify, pledge, unveil, pkg_add, ports, OpenBSD 7.8, Theo de Raadt, secure operating system, UNIX, firewall OS, server OS, network security, операційна система, безпечна ОС
    |alternativeTo=Linux для частини серверних і мережевих задач; FreeBSD для security-first сценаріїв; pfSense у простих firewall-сценаріях для досвідчених адміністраторів; складні Linux firewall-дистрибутиви; застарілі UNIX-системи; серверні ОС з великою стандартною attack surface; системи без security by default підходу; хаотично налаштовані домашні сервери
    }}
    

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.; Це зменшує attack surface.; * PF User's Guide.;

Критично: не застосовуйте firewall-правила на віддаленому сервері без тесту, резервного доступу й плану відкату.; * очікувати поведінку Linux;

  • не читати man pages;
  • вмикати зайві сервіси;
  • писати занадто складний pf.conf;
  • втрачати SSH-доступ через неправильне firewall-правило;
  • не робити backup перед upgrade;
  • не оновлювати packages;
  • ігнорувати `/var/log/authlog`;
  • встановлювати пакети без потреби;
  • редагувати системні файли не тим способом;
  • плутати packages і ports;
  • очікувати ідеальний desktop experience;
  • не перевіряти hardware compatibility.;<syntaxhighlight lang="sh">

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

syspatch — інструмент для встановлення binary patches для базової системи OpenBSD.; OpenSSH застосовується в багатьох операційних системах далеко за межами OpenBSD.; Критерій pass in on egress proto tcp to port 22