Установка freebsd 10

Сравниваем FreeBSD и Linux

И семейство BSD, и линуксы чаще всего разрабатываются на некоммерческой основе и доступны для бесплатного использования. Пользователи могут брать исходные коды и изменять по своему усмотрению.

И FreeBSD, и дистрибутивы семейства Linux являются UNIX-подобными операционными системами. Линукс изначально создавался Линусом Торвальдсом как свободная альтернатива UNIX-подобной системе MINIX, в то время как FreeBSD ближе к изначальной версии UNIX: первая ОС семейства BSD даже носила название Berkeley Unix.

Общее UNIX-наследие обоих семейств проявляется в использовании сходных паттернов. И там, и там взаимодействие пользователя с системой осуществляется преимущественно с помощью командного интерпретатора (shell), программный интерфейс приложения (API) обладает схожим функционалом, есть сходство и в иерархии файловой системы. Благодаря этому гораздо проще портировать приложения из FreeBSD в Linux и наоборот, нежели из других, не-UNIX-подобных систем.

Одно из основных отличий между семейством BSD и дистрибутивами, в основе которых лежит ядро Linux, состоит в типе лицензирования.

Большинство дистрибутивов Linux и приложений для них распространяются под лицензией GNU GPL, также известной как лицензия «copyleft» («авторское лево»), позволяющая использовать оригинальный код для создания новых продуктов, не запрашивая разрешения владельца исходных текстов, но сохраняя условия его распространения. Эта лицензия продвигает идею свободного распространения и открытости превыше всего

Поэтому при разработке проприетарного ПО стоит с осторожностью использовать продукты, лицензированные GPL

Операционные системы семейства BSD, в том числе и FreeBSD, распространяются под лицензией BSD, содержащей больше свободы, чем лицензия GPL, не требуя от всех производных продуктов сохранения всех условий исходной лицензии. Программное обеспечение под лицензией BSD можно свободно использовать для разработки проприетарных приложений с закрытым исходным кодом.

Еще одно принципиальное отличие заключается в том, что FreeBSD содержит не только ядро, но и базовые компоненты операционной системы, разработанные командой FreeBSD. В то время как линукс — это только ядро. А вот уже конкретный дистрибутив включает в себя помимо ядра и определенный набор программного обеспечения, собранный зачастую из разных источников.

Дополнительные материалы по Freebsd

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте .

Стоимость обучения весьма демократична, хорошая возможность получить новые знания в актуальной на сегодняшний день предметной области. Особенности курсов:

  • Знания, ориентированные на практику;
  • Реальные ситуации и задачи;
  • Лучшее из международных программ.
Рекомендую полезные материалы по Freebsd:
  • Установка
  • Настройка
  • Обновление
  • Шлюз
  • Прокси сервер
  • Веб сервер NGINX
  • Веб сервер Apache

Описание установки Freebsd 11 на одиночный диск, либо на софтовый raid1, сделанный средствами zfs, которые поддерживает стандартный установщик.

Базовая настройка Freebsd, которую можно выполнить после установки сервера общего назначения. Представлены некоторые рекомендации по повышению удобства пользования и безопасности.

Описание и нюансы обновления системы Freebsd с помощью утилиты freebsd-update. Показано пошагово на конкретном примере обновления.

Настройка Freebsd шлюза для обеспечения выхода в интернет. Используется ipfw и ядерный нат, dnsmasq в качестве dhcp и dns сервера. Мониторинг сетевой активности с помощью iftop.

Подробная настройка на Freebsd прокси сервера squid + sams2 — панели управления для удобного администрирования.

Настройка максимально быстрого web сервера на базе Freebsd и nginx + php-fpm. Существенный прирост производительности по сравнению с классическим apache.

Настройка web сервера на Freebsd в связке с apache, nginx, php и mysql. Пошаговая установка и настройка каждого компонента.

Почему в Linux так много «дыр»

Сообществу разработчиков ядра Linux не хватает специалистов, чтобы вовремя устранять найденные в нем уязвимости

Как сообщил The Register, на эту проблему обратил внимание программист Кис Кук (Kees Cook) из Google Security Team, принимающий непосредственное участие в развитии Linux

По словам Кука, каждую неделю программисты готовят приблизительно по 100 новых исправлений для ядра, но сил тех, кто их проверяет, попросту не хватает, чтобы протестировать каждое из них

Кук утверждает, что из-за этого разработчики отбирают только самые важные из них, притом руководствуются они исключительно собственными критериями «важности» таких патчей

Кук подчеркнул, что из-за нехватки специалистов многие проблемы ядра попросту игнорируются. По его подсчетам, на разбор еженедельных 100 исправлений требуется, по меньшей мере, 100 специалистов.

Ядру Linux просто не хватает разработчиков, которые бы «заботились» о нем

Кис Кук заявил, что большая часть инженеров, в настоящее время занятых развитием ядра Linux, работают в различных компаниях. Он призвал руководителей этих компаний нанимать больше инженеров, чтобы у разработчиков появилось больше времени на Linux.

2) Настройка сети

Если во время установки сеть не настроилась то лучше сделать это сейчас и перейти уже к настройке по SSH.

ifconfig

1 ifconfig

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
groups: lo
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
hn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8051b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4,LRO,LINKSTATE>
ether 00:15:5d:00:65:25
inet 192.168.0.151 netmask 0xffffff00 broadcast 192.168.0.255
media: Ethernet autoselect (10Gbase-T <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

1
2
3
4
5
6
7
8
9
10
11
12
13
14

lo0flags=8049<UP,LOOPBACK,RUNNING,MULTICAST>metricmtu16384

options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>

inet6::1prefixlen128

inet6 fe80::1%lo0 prefixlen64scopeid0x1

inet127.0.0.1netmask0xff000000

groupslo

nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

hn0flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>metricmtu1500

options=8051b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4,LRO,LINKSTATE>

ether00155d006525

inet192.168.0.151netmask0xffffff00broadcast192.168.0.255

mediaEthernet autoselect(10Gbase-T<full-duplex>)

statusactive

nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

У меня определилась сетевая карта hn0 и с настроенным адресом. Но в случае отсутствия адреса приступаем к настройке.

ee /etc/rc.conf

1 eeetcrc.conf

И добавляем в файл следующие строки, не забываем что сетевая карта hn0

ifconfig_hn0=»inet 192.168.1.30 netmask 255.255.255.0″
defaultrouter=»192.168.1.1″

1
2

ifconfig_hn0=»inet 192.168.1.30 netmask 255.255.255.0″

defaultrouter=»192.168.1.1″

Настраиваем DNS

ee /etc/resolv.conf

1 eeetcresolv.conf

nameserver 192.168.1.1

1 nameserver192.168.1.1

После внесения изменений нужно перезапустить сервак (так офф документация советует).

Установка Midnight Commander

Следующим шагом я всегда устанавливаю MC и делаю редактором по-умолчанию mcedit. Мне так удобно и проще делать дальнейшие настройки сервера. Установить можно как из портов, так и из пакетов. На вопрос, как лучше, однозначного ответа нет, каждый решает для себя сам. Я обычно MC ставлю из пакетов, а все остальное уже из портов. Почему именно так, да потому, что Midnight Commander ставится очень долго из портов, тянет кучу зависимостей, а у нас в настоящий момент порты даже не обновлены. На все про все уйдет минут 15-20. Так что я предпочитаю поставить сразу из пакетов. Делаем это командой:

# pkg install mc

Так как у нас система голая, увидим сообщение:

The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]:

Соглашаемся. После установки pkg начнется установка MC. Перед этим будет выведен список зависимостей, отмечено, сколько места все это займет. Со всем соглашаемся и начинаем установку. После окончания запускаем файловый менеджер:

# mc

Если у вас вместо прямых линий крякозябры, то закрываем putty и в ее настройках меняем кодировку. Идем в Windows -> Translation и выбираем KOI8-U, сохраняем и заходим снова. Теперь все должно быть в порядке.

Дальше устанавливаем редактор по умолчанию mcedit. Если этого не сделать, то в качестве редактора будет выступать vi. Если вы случайно окажетесь в нем, то не сразу сможете банально выйти из него, я не говорю уже о том, что бы что-то там отредактировать и сохранить. Так что идем в домашнюю директорию пользователя, находим там файл .cshrc, открываем, ищем строку

setenv  EDITOR  vi

меняем vi на mcedit, сохраняем, закрываем.

Спор вокруг систем инициализации в Linux

System V init (или просто «SysV») — это система инициализации, которая существует со времен операционной системы System V, которая была выпущена в 1983 году. SysV оставалась системой инициализации в течение почти трех десятилетий (за некоторыми исключениями). Многие IT-специалисты и программисты в силу своей привычки не хотели отказываться от SysV, да и к тому же она была очень простой для понимания.

Проблема с SysV заключалась в том, что в её основе лежали концепции, существовавшие много лет назад. SysV не хватало возможности нативно обрабатывать многие вещи, такие как: обнаружение съемных носителей, корректное обнаружение аппаратного обеспечения и загрузка встроенного ПО, загрузка различных модулей и пр. Кроме того, при использовании данной системы, инициализация процессов происходит последовательно, т.е. одна задача запускается только после успешного завершения предыдущей. Часто это приводило к задержке и длительному времени загрузки. Задачи, подобные монтированию файловых систем, выполняются один раз во время загрузки, после чего «забываются». Но такого подхода недостаточно для автоматизированного управления сервисами, требующими к себе постоянного внимания.

В попытке привнести больше возможностей в процесс инициализации Linux-систем, компания Canonical в 2006 году вместе с релизом Ubuntu 6.10 (Edgy Eft) выпускает систему инициализации Upstart, которая с самого начала разрабатывалась с учетом обратной совместимости. Она может запускать демоны без каких-либо изменений в их скриптах запуска.

Другой системой инициализации, восходящей своими корнями к операционной системе 4.4BSD, является rc.init. Она применяется в таких дистрибутивах, как: FreeBSD, NetBSD и Slackware. В 2007 году разработчики Gentoo выпустили улучшенный вариант данной системы инициализации, сделав её модульной и назвав OpenRC. Большинство других дистрибутивов Linux исторически продолжало использовать SysV.

В 2010 году инженеры компании Red Hat Леннарт Пёттеринг и Кей Сиверс приступили к разработке новой системы инициализации — systemd, которая разрабатывалась с учетом недостатков, имеющихся в SysV. В состав systemd, помимо прочего, также входят и различные пакеты, утилиты и библиотеки, позволяющие производить параллельный запуск процессов, сокращая тем самым время загрузки системы и количество необходимых вычислений. Весной того же года Fedora 15 стала первым дистрибутивом, в котором по умолчанию использовалась система инициализации systemd. После чего, на протяжении следующих трех лет, большинство дистрибутивов массово перешли на systemd.

Но, если все остальные дистрибутивы отдают предпочтение systemd и считают её лучшей системой инициализации, как для предприятий, так и для любителей, почему так много споров вокруг нее?

systemd, по сравнению с SysV и Upstart, содержит большое количество различных улучшений, а также предлагает и другие компоненты, имеющие более тесную интеграцию с системой, с помощью которых разработчики могут уменьшить объем выполняемой работы. Что в этом плохого? Ну, поскольку разработчики создают программное обеспечение, которое зависит от systemd и/или от любой из её многочисленных служб (journald, udevd, consoled, logind или networkd), то такое ПО становится менее совместимым с системами, в которых systemd не применяется. По мере того, как количество служб, предоставляемых проектом systemd, продолжает расти, systemd сама становится все более зависимой от них.

В результате systemd становится самостоятельной платформой, и её повсеместное распространение непреднамеренно препятствует разработке программного обеспечения, которое является переносимым и совместимым с операционными системами, не поддерживающими systemd. Но действительно ли всё так печально? Конечно, нет. Прежде всего, это проект с открытым исходным кодом, и у людей есть выбор: использовать его или нет. Пользователи и разработчики могут извлечь выгоду из наличия нескольких конкурирующих систем инициализации, и нет вины systemd в том, что основные дистрибутивы переключились на нее из-за её плюсов.

Структура

Преимущества и особенности, которые имеет данная система, отличаются структурой FreeBSD. Что это за структура:

  • Ядро,
    которое предназначается для тщательной планировки всех процессов,
    управления памяти, работы с различными устройствами, а также поддержки
    многопроцессорных систем. При этом следует отметить тот факт, что, в
    отличие от ОС Linux, в данном случае есть несколько типов ядер BSD,
    которые отличаются разными особенностями.
  • Библиотека С, которая
    используется в качестве основного системного интерфейса
    программирования, причем основывается на коде из Беркли, а не из проекта
    GNI.
  • Всевозможные файловые утилиты, компиляторы, оболочки,
    редакторы связей, а также другие программы конечного пользователя, при
    этом некоторые из них основываются на коде GNU.
  • FreeBSD UNIX —
    операционная система, включающая в себя X Window, которая отвечает
    непосредственно за графический интерфейс. Данная система применяется в
    преимущественном большинстве версий BSD и официально поддерживается
    проектом X.Org. Данная система позволяет пользователю делать выбор из
    нескольких графических оболочек, а также целого ряда легких оконных
    менеджеров.
  • Большое количество других системных и прикладных программ.

17.17. Шифрование области подкачки

Шифрование области подкачки в FreeBSD достаточно легко конфигурируется. Варианты конфигурации слегка различаются в зависимости от версии системы. Для шифрования разделов подкачки можно использовать утилиты gbde(8) или geli(8);. В обоих случаях используется скрипт encswap.

Предыдущий раздел, , кратко описывает различные методы криптования.

17.17.1. Зачем шифровать область подкачки?

Как и в случае дисковых разделов, шифрование области подкачки применяется для защиты важной информации. Возьмем, к примеру, приложение, которому требуется работать с паролями

До тех пор, пока пароли хранятся в физической памяти, все в порядке. Если же операционная система начинает выгружать отдельные участки памяти в область подкачки, чтобы освободить память для других приложений, пароли могут быть записаны на диск в открытом виде и тем самым оказаться легко доступными злоумышленнику (имеющему физический доступ к диску — прим. пер.). В таких ситуациях решением может стать шифрование раздела подкачки.

17.17.2. Подготовка

В данном разделе мы будем считать, что разделом подкачки является ad0s1b.

До настоящего момента раздел подкачки не был зашифрован. Таким образом, на нем могут содержаться пароли или какая-либо иная важная информация в открытом виде. Чтобы избавиться от этого, заполним раздел подкачки случайными данными:

17.17.3. Шифрование раздела подкачки при помощи gbde(8)

В строку файла /etc/fstab, описывающую раздел подкачки, необходимо добавить суффикс :

# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/ad0s1b.bde         none            swap    sw              0       0

17.17.4. Шифрование раздела подкачки при помощи geli(8)

Процедура при использовании geli(8) для шифрования раздела подкачки сходна с использованием gbde(8). В строку файла /etc/fstab, описывающую раздел подкачки, нужно добавить суффикс :

# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/ad0s1b.eli         none            swap    sw              0       0

По умолчанию, geli(8) использует алгоритм криптования AES с длиной ключа 256 бит.

При необходимости эти параметры могут быть изменены в опции файла конфигурации /etc/rc.conf. Приведенная ниже строка указывает, что скрипт rc.d encswap должен использовать для криптования алгоритм Blowfish с ключом длиной 128 бит, размером сектора 4 килобайта и включенной опцией «отсоединиться при последнем закрытии»:

geli_swap_flags="-e blowfish -l 128 -s 4096 -d"

За списком возможных опций обращайтесь к описанию команды в странице справочника geli(8).

17.17.5. Окончательная проверка

После перезагрузки системы правильность работы шифрованного раздела подкачки может быть проверена при помощи команды .

В случае использования gbde(8):

При использовании geli(8):

Недавние улучшения ядра Linux

Ядро Linux 5.6 также может похвастаться и другими значительными улучшениями. Особо выделим то, что для 32-х разрядных систем, Linux решил свою проблему «конца времени». Видите ли, во вторник 19 января 2038 года в 03:14:08 по Гринвичу (GMT, также известное как Всемирное координированное время) наступит конец света.

Случится то, что значение времени в 32-х разрядных операционных системах на основе UNIX, таких, как Linux и старых версий macOS, исчерпает 32-х битные числа. После этого, отсчёт времени пойдет в обратную сторону с отрицательными числами. А Вы думали, что ошибка 2000 года была страшной!

Всё началось с того, что UNIX, отец Linux, датирует начало времени в секундах от 1 января 1970 года 00:00:00 GMT. Проблема была в том, что UNIX начиналась как 32-х разрядная операционная система, которая хранила время в виде одного 32-х разрядного целого числа со знаком. Это много секунд, но этого недостаточно. Исправление позволяет даже 32-х разрядному Linux использовать 64-х разрядные числа. Конечно это только задерживает проблему до воскресенья 4 декабря 29227702659 года 5:30:08 GMT, но меня это вполне устраивает.

Мотивация Кука

Кис Кук объяснил свой призыв к найму большего числа инженеров тем, что из-за сложившейся вокруг ядра Linux ситуации многие уязвимости могут находиться в нем годами. Пока разработчики латают одну брешь, другая теряется в строчках кода.

В словах Кука есть внушительная доля правды. В ядре Linux постоянно обнаруживаются «дыры» в возрасте нескольких лет, многие из которых несут чрезвычайную опасность как для частных пользователей, так и для корпораций.

Кис Кук уверен, что подход к разработке Linux нужно менять полностью

Например, в ноябре 2017 г. CNews рассказывал о том, как россиянин Антон Коновалов всего за несколько месяцев выловил в коде ядра Linux, по меньшей мере, 15 багов в драйверах USB. Он подчеркнул, что такие уязвимости можно использовать для запуска произвольного кода и захвата контроля над пользовательскими системами.

В июле 2021 г. эксперты по информационной безопасности компании Qualys нашли в ядре уязвимости с зашкаливающим уровнем опасности. Они позволяют вызвать крах системы и выполнить произвольный код. И если в случае «дыр», выявленных Антоном Коноваловым их возраст не был установлен, то находкам Qualys совсем недавно исполнилось шесть и семь лет.

Более того, одну из этих уязвимостей они нашли, успешно проэксплуатировав вторую. Из-за них под угрозой оказались пользователи Debian, Ubuntu, Red Hat и целого ряда других популярных дистрибутивов Linux.

Настройка SSH сервера

Перво наперво нужно настроить sshd для удаленного подключения. Если сейчас попробовать подключиться к серверу, то ничего не выйдет. Мы увидим окно приветствия, но залогиниться не получится. Это из-за того, что в системе у нас нет ни одного пользователя, кроме root. А этому пользователю по-умолчанию запрещено подключаться через ssh. Соответственно, у нас два пути, либо разрешить подключаться руту, либо добавить других пользователей. Сделаем и то, и другое. Сначала разрешаем пользователю root подключаться по ssh. Для этого редактируем файл /etc/ssh/sshd_config. Пока у нас голая система, воспользуемся для этого редактором ee. Открываем файл на редактирование:

# ee /etc/ssh/sshd_config

Находим строчку PermitRootLogin, раскомментируем ее и ставим напротив yes. По-умолчанию там стоит no.

Здесь же я рекомендую изменить стандартный порт ssh 22 на что-то более экзотическое. Делается это для того, чтобы роботы, которые постоянно сканируют интернет и пытаются залогиниться на серваки, остались не у дел. На 22 порт постоянно кто-то ломится с несуществующими учетками и подбирает пароли. Все это отражается в логах и может мешать. Сменив порт на нестандартный, мы частично избавляемся от этой проблемы. Ищем строчку со словом Port и меняем значение с 22, например, на 11222.

Сохраняем изменения и выходим из редактора. Теперь нам необходимо перезапустить sshd для принятия изменений. Делаем это командой:

# service sshd restart

Демон sshd перезапустится. Можно пробовать подключаться по ssh, должно получиться зайти под root.

Многие считают небезопасным подключаться удаленно под учетной записью рута. Это вопрос неоднозначный, все зависит от конкретной ситуации. Добавим одного пользователя для удаленного подключения. Воспользуемся командой:

# adduser

Заполняем необходимые данные пользователя. Обязательно в качестве добавочной группы укажите wheel. Если пользователя не добавить в эту группу, то он не сможет зайти потом рутом. После добавления пользователя, подключаемся им по ssh. После логина используем команду:

# su -l

Вводим пароль рута и оказываемся в учетной записи root.

Как подключаться и работать решайте для себя сами.

Проблемы с драйверами

Все основное оборудование, с которым приходится сталкиваться большинству пользователей, прекрасно работает в Linux. Но иногда отсутствие драйвера для какого-то одного специфического устройства может стать серьезным препятствием для перехода на Linux.

Обычно, производители железа всегда в первую очередь заботятся о работоспособности своих изделий под Windows и выпускают драйвера для Windows. Их можно понять, ведь основные потребители их устройств это пользователи Windows.

Есть случаи, когда в Linux требуется работа какого-то специфического принтера или сканера, внешней звуковой или сетевой карты и так далее. Иногда для таких устройств могут отсутствовать «родные» драйвера, а функциональность альтернативных в Linux может быть ограничена.

Как правило, подобных проблем с драйверами очень мало. Но есть еще одна проблема, которая заключается с установкой драйверов для видео-карт.

Например, для видео-карт от ATI и NVIDIA уже давно выпускаются драйверы под Linux и работают они прекрасно и зачастую даже лучше, чем в Windows. Но их установка в некоторых дистрибутивах может стать настоящей головной болью. Если дистрибутив не содержит удобных средств для их установки, то может потребоваться и командная строка и помощь сообщества.

Утилита для просмотра информации и настройки видео-карт NVIDIA в Linux

Стандартная установка

Начнем с нуля установку Freebsd 11 на одиночный жесткий диск. Вставляем iso образ в автозагрузку и загружаемся с диска. Нас встречает традиционное окно приветствия с тремя вариантами продолжения:

  1. Install — начать установку системы.
  2. Shell — перейти в консоль.
  3. Live CD — загрузиться в режиме Live CD.

Выбираем установку. На следующем этапе будет предложено выбрать раскладку. Чаще всего достаточно стандартной, так что ничего не меняем, а идем дальше со стандартной раскладкой.

Дальше нужно будет указать имя новой freebsd системы. Назвать можете как угодно, это не принципиально. В случае необходимости, это имя можно будет сменить после установки.

Теперь выбираем компоненты, которые будут установлены. Я обычно ничего не ставлю, кроме lib32. Все, что нужно, можно потом установить последней версии из интернета.

На следующем этапе выбираем разбивку жесткого диска. Можно вручную указать все необходимые разделы, выбрать размер и т.д. Я обычно этого не делаю и все устанавливаю на одном корневом разделе. Давно уже так поступаю на всех системах и не вижу в этом никаких проблем. Наиболее частая рекомендация — вынести в отдельный раздел все логи, чтобы случайно заполнив все свободное место они не повесили сервер. На практике у меня такого ни разу не было, поэтому считаю лишним каждый раз возиться с разделами ради очень условного удобства. Правда есть нюанс — у меня на всех серверах всегда настроен мониторинг свободного места на жестком диске. Так что я успеваю оперативно среагировать на проблемы со свободным местом. Ну и слежу за ротацией логов само собой, не оставляю их расти до больших размеров.

Так что выбираем первый пункт — Auto (UFS). Установку freebsd 11 на zfs мы рассмотрим позже.

Дальше у вас спросят, хотите ли вы занять все свободное место жесткого диска под систему. Если это так, а обычно это так, то соглашайтесь. На следующем этапе указываем таблицу разделов. Я выбираю GPT:

Проверяйте предложенную схему разбивки диска. Если все устраивает, то жмите Finish и согласитесь с применением изменений, начнется установка базовой системы.

Длится она буквально несколько минут. Чистая система ставится очень быстро. По ходу дела будет предложено указать пароль для root. Сделайте это. Далее нужно будет выбрать сетевой интерфейс для настройки.

Если у вас их несколько, то выберите тот, который вы хотите настроить для доступа к сети. После выбора интерфейса нужно будет согласиться с настройкой ip адреса на нем. Дальше я выбираю получить настройки по DHCP. Так проще всего. Если вам нужно вручную указать ip адрес, то откажитесь от dhcp и введите сетевые параметры вручную.

После этого нужно будет указать адрес dns сервера, предварительно отказавшись от ipv6. Если вы получили настройки по dhcp, то адрес уже будет заполнен, нужно будет только подтвердить его. Если настройки вручную указывали, введи сами dns сервер.

Теперь выбираем часовой пояс, дату и время. Ничего сложного нет, скриншоты приводить не буду. Если дата и время указаны верно, то просто выбирайте Skip, если есть расхождения, вручную укажите правильные. Это, кстати, нововведение в 11-й версии. Раньше такого календаря и часов не было.

Установка движется к завершению. Нужно указать, какие службы вы хотите запускать автоматически при загрузке системы. Обязательно укажите sshd, чтобы подключаться к серверу удаленно, еще ntpd не помешает. Остальное на ваше усмотрение, я больше ничего не указываю. dumped стоит по-умолчанию, пусть останется.

На следующем этапе нам предлагается выбрать некоторые параметры безопасности. Я не знаком подробно с этой темой, не разбирался, но по названиям вижу, что вещи весьма полезные. Можно и включить. Тут на ваше усмотрение. Хуже не будет, но и чего-то особенно тоже не ждите. Все эти настройки можно и позже сделать.

На заключительном этапе вам будет предложено добавить пользователей в систему. Если вы этого не сделаете, то не сможете подключиться по ssh к серверу. По-умолчанию в freebsd пользователю root запрещено подключаться по ssh. Это можно исправить только зайдя локально рутом и отредактировав настройки ssh. Так что создайте хотя бы одного пользователя и добавьте его в группу wheel, чтобы можно было подключиться по ssh и сделать su для получения root доступа.

Дальше выбирайте Exit, перезагружайте систему и вынимайте загрузочный диск.

Вы должны загрузиться в свежеустановленной системе Freebsd 11. На этом базовая установка закончена.

Что такое ядро?

Каждая операционная система использует ядро. Без ядра, у вас не может быть операционной системы, которая действительно работает. Windows, Mac OS X и Linux имеют ядра, и все они разные. Это ядро ​​также выполняет основную работу операционной системы. Помимо ядра, есть много приложений, связанных с ядром, чтобы сделать весь пакет чем-то полезным – об этом чуть позже.

Задача ядра – общаться с аппаратным и программным обеспечением и максимально эффективно управлять ресурсами системы. Оно взаимодействует с оборудованием через драйверы, которые включены в ядро ​​(или дополнительно установлены позже в виде модуля ядра). Таким образом, когда приложение хочет что-то сделать (скажем, изменить настройку громкости динамиков), оно может просто отправить этот запрос ядру, и ядро ​​может использовать драйвер для динамиков, чтобы фактически изменить громкость.

Ядро активно участвует в управлении ресурсами. Необходимо убедиться, что для запуска приложения достаточно памяти, а также разместить приложение в нужном месте в памяти. Ядро пытается оптимизировать использование процессора, чтобы он мог выполнять задачи как можно быстрее. Оно также направлено на то, чтобы избежать взаимоблокировок, которые являются проблемами, которые полностью останавливают систему, когда одному приложению требуется ресурс, который использует другое приложение. Это довольно сложный “цирковой акт”, чтобы координировать все эти вещи, но это нужно сделать, для этого и нужно ядро.

Вредоносное ПО

Под Linux существуют многие разновидности вредоносных программ: вымогатели, криптомайнеры, руткиты, черви, бэкдоры и трояны удалённого доступа (RAT). Преступники успешно используют их для получения финансовой выгоды, шпионажа, саботажа, хактивизма или просто из желания доказать, что системы могут быть скомпрометированы.

Ниже перечислены наиболее распространённые типы вредоносных программ в экосистеме Linux.

Вымогатели

Это, безусловно, самая финансово успешная категория вредоносных программ за последнее время. Учитывая растущую популярность Linux, злоумышленники, управляющие вымогателями, считают эту операционную систему очень перспективной мишенью.

В качестве примера Linux-вымогателей можно привести RansomEXX/Defray7777, относительно недавно портированный под эту операционную систему. Его применяла кибергруппировка Gold Dupont, атакующая организации из сфер здравоохранения и образование и технологические отрасли. 

Другой вымогатель — Erebus, впервые замеченный в сентябре 2016 года, — в июне 2017 года Erebus заразил 153 Linux-сервера южнокорейской хостинговой компании NAYANA и вывел из строя 3400 клиентских сайтов. 

Криптомайнеры

Относительно новым мотивом для злоумышленников является проникновение и злоупотребление вычислительными ресурсами для добычи криптовалюты. 

Многие вредоносные криптомайнеры не просто заражают Linux-системы, но и очищают их от присутствия майнеров-конкурентов, а также стремятся захватить как можно более мощные системы с практически неограниченными вычислительными возможностями, такие как контейнеры Docker или Redis.

Для проникновения в систему майнеры используют распространённые уязвимости. Например, программа coinminer, детектируемая  компанией Trend Micro под названием Coinminer.Linux.MALXMR.SMDSL64, использует уязвимости обхода авторизации SaltStack (CVE-2020-11651) и обхода каталога SaltStack (CVE-2020-11652).

Вредоносные скрипты

Командные интерпретаторы присутствуют на всех UNIX-машинах, поэтому злоумышленники активно используют его, тем более что это значительно проще, чем использовать скомпилированные вредоносные программы. 

Причин популярности вредоносных скриптов для атак на Linux:

  • они легко загружаются в виде текстовых файлов;

  • они имеют небольшой размер;

  • меньше вероятность того, что они будут легко обнаружены;

  • они могут быть созданы «на лету».

Веб-шеллы и бэкдоры

Веб-шелл — установленный на веб-сервере скрипт, который выполняет команды преступника и обеспечивает ему прямой доступ к взломанной системе. Например, в августе 2020 года мы столкнулись с Ensiko, веб-оболочкой PHP, нацеленной на Linux, Windows, macOS или любую другую платформу, на которой установлен PHP. Помимо удалённого выполнения кода с помощью Ensiko злоумышленники могут выполнять команды оболочки и повреждать веб-сайты.

Руткиты

Руткит — набор вредоносных программ, которые внедряются в Linux-систему, частично или полностью подменяя стандартные системные утилиты, драйверы и библиотеки. Основная цель руткита — скрывать своё присутствие от администраторов и пользователей скомпрометированной системы, обеспечивая злоумышленнику полный или частичный контроль.

В ходе наших исследований мы сталкивались с несколькими семействами руткитов. Чаще всего это были Umbreon, Drovorub или Diamorphine. 

По какой причине эта операционная система остается невостребованной?

Есть некоторый ряд причин, по которым сегодня FreeBSD 10 пользуется не таким широким спросом:

  • Разработчики чаще всего интересуются качеством собственного кода, причем больше его шлифовкой, а не рекламой.
  • По
    большому счету, популярность Linux является следствием целого ряда
    внешних факторов относительно данного проекта, в частности, это касается
    средств массовой информации, а также компаний, которые решили
    сформировать собственный бизнес, предоставляя услуги пользователям этой
    операционной системы.
  • Разработчики BSD в преимущественном своем
    большинстве являются более опытными по сравнению с разработчиками Linux,
    в связи с чем они гораздо меньше внимания уделяют тому, чтобы облегчить
    жизнь простым пользователям. Другими словами, настройка FreeBSD для
    обычного пользователя является более сложной, чем настройка Linux.
  • В
    1992 году разработчик UNIX решил подать в суд на компанию BSDI, которая
    занималась поставкой операционной системы BSD/386. Основной пункт
    обвинения в данном случае был тем, что в ОС содержался закрытый код,
    принадлежавший истцу, и вроде бы дело в конечном итоге было улажено за
    пределами суда в 1994-м, но целый комплекс вторичных тяжб даже в наши
    дни отравляет жизнь многим людям.
  • Есть мнение, что сами по себе
    проекты BSD различаются и при этом могут даже конфликтовать между собой.
    Данное мнение основывается на событиях, которые происходили достаточно
    давно.

Заключение

С течением времени системы с открытым кодом развиваются, и современному пользователю гораздо проще их установить и использовать, чем прежде.
Рассматриваемые системы очень похожи, и выбор можно делать, основываясь на наличии конкретной задачи и соответствующих специалистов, разбирающихся в конкретной системе.

В ATLEX дистрибутив CentOS используется на серверах виртуального хостинга и серверах для предоставления услуги VDS/VPS на базе Xen. Для облачных сервисов OpenStack применяется дистрибутив Ubuntu. А на FreeBSD работают некоторые служебные серверы.

Вы можете установить и протестировать любую ОС на виртуальных машинах в нашем «Виртуальном дата-центре», а специалисты компании всегда окажут вам квалифицированную поддержку.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: