Настройка сервера centos 7 после установки

Введение

Для настройки практически любого сервера требуется выполнить ряд стандартных шагов, которые мало чем отличаются в различных ситуациях. Какой бы функционал вы не готовили, вам придется настроить правильное время и включить его автообновление. Без установки сетевых настроек я вообще не представляю работу современного сервера. В голову не приходит ни один пример. Один и тот же набор настроек практически на автомате выполняется после установки. Своими наработками по этой теме я хочу поделиться с вами — то, что я в первую очередь настраиваю на новоиспеченном сервере centos после установки.

После выхода нового релиза Centos 8, стало тяжело в единой статье описывать начальную настройку обоих серверов, но мне не захотелось разделять статью, так как на нее идет много входящих ссылок из разных мест. Удобнее поддерживать общий материал по обоим релизам, чем я и займусь. Заодно наглядно будут видны отличия двух версий, которые пару лет после выхода centos 8 будут актуальны обе и использовать придется и ту, и другую версию, в зависимости от ситуации.

В Centos 7 используется пакетный менеджер yum, а в Centos 8 — dnf. При этом оставили символьную ссылку с yum на dnf, так что можно писать как первое название, так и второе. Для единообразия я везде буду использовать yum, а вас предупреждаю, просто чтобы вы понимали, почему я делаю именно так. Реально в CentOS 8 используется dnf, это другой, более современный пакетный менеджер, которые позволяет работать с разными версиями одного и того же софта. Для этого используются отдельные репозитории, которые появились для centos 8.

Настройка SELinux

Система SELinux предустановлена вместе с дистрибутивом в системах ,основанных на Red Hat, скорее всего, там уже все компоненты установлены, но в Ubuntu и других подобных дистрибутивах придется все делать самому. Для установки SELInux в Ubuntu выполните команду:

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

После перезагрузки мы можем посмотреть состояние SELinux:

Здесь мы видим, что система включена SELinux status: enabled, Текущий режим Current mode — permissive, то есть мы будем только получать сообщения о нарушениях в логе. Используемая сейчас политика — Ubuntu.

Сейчас давайте включим активный режим, для этого выполните команду:

Отключить активный режим можно передав в ту же команду 0:

Посмотреть используемый сейчас режим тоже можно подобной командой:

Вся основная настройка SELinux выполняется через файл /etc/selinux/config. Здесь можно как полностью отключить selinux, так и настроить используемую политику безопасности.

Этот параметр означает режим работы SELinux, вы можете указать здесь один из трех параметров enforce, permissive и disabled

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

Настройка SELinux политик выполняется тоже в этом файле. За политику отвечает параметр SELINUXTYPE:

Вы можете ссылаться на любую политику, расположенную в каталоге /etc/selinux.

Могут использоваться три основные политики:

  • targeted (или здесь ubuntu) защищает основные системные сервисы, например, веб-сервер, DHCP, DNS, но не трогает все остальные программы.
  • minimum — это политика для экспериментов, основана на targeted, но ее правила не включены по умолчанию, вы можете включать и отключать когда нужно также часто используется на мобильных устройствах.
  • strict — самая строгая политика, управляет не только сетевыми службами, но и программами пользователя.
  • mls — содержит не только правила, но и различные уровни безопасности. Она позволяет реализовать многоуровневую систему безопасности на основе SELinux.

Политики в Ubuntu необходимо устанавливать отдельно, для targeted и strict установите пакет:

Для применения политики необходимо перезагрузить компьютер, и желательно чтобы SELinux во время этой перезагрузки был в режиме аудита (permissive). Также, чтобы система обновила все метки в файловой системе, возможно, придется создать пустой файл в корне:

Хотите почувствовать всю мощь и заодно недостатки SELinux? Установите значение  SELINUXTYPE в strict, и перезагрузите систему:

Только смотрите, чтобы SELinux работал в режиме permissive, иначе быть беде. Политика default реализует и targeted и strict, чтобы получить strict необходимо просто выгрузить модуль unconfined:

Затем запускаем активный режим:

Ну а теперь можете попробовать почитать системные журналы, или включить обратно режим аудита. Ничего не работает? Правильно SELinux блокирует любые неразрешенные действия. У меня окно терминала сразу было закрыто и я больше не мог управлять своей системой. Чтобы получить обратно управление над своим компьютером его необходимо перезагрузить.

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

SELinux — это относительно новая подсистема ядра, разработанная агентством национальной безопасности США для улучшения безопасности операционных систем на базе ядра Linux. SELinux создаёт свои атрибуты контроля доступа для файлов и папок, а также позволяет указывать, каким программам можно иметь к ним доступ.

Режимы SELinux

Пришло время начать работу с SELinux. Давайте начнем с режимов SELinux. Система SELinux может работать в любом из трех доступных режимов:

  • Enforcing
  • Permissive
  • Disabled

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

Режим permissive – это такое полуоткрытое состояние: в этом режиме SELinux не применяет свою политику, поэтому не блокирует доступ. Однако любое нарушение политики будет зарегистрировано в логах. Это отличный способ проверить настройку SELinux.

Режим disabled говорит сам за себя – система отключена.

Проверка состояния и режима SELinux

Команда getenforce проверяет текущий режим SELinux.

Сейчас система SELinux должна быть отключена, потому команда должна вернуть режим disabled:

Также можно использовать команду sestatus:

Когда система SELinux отключена, команда возвращает:

Плюсы и минусы S-режима

Но давайте рассмотрим его особенности, достоинства и недостатки более детально.

Приложения

Итак, вы уже знаете, что в S-режиме устанавливать можно только те программы, которые присутствую в Windows Store. Какие бы ухищрения вы не использовали, сторонний софт инсталлировать на компьютер не получится, он будет нещадно блокироваться.

Да, Магазин постоянно пополняется, в нём уже имеется огромное число приложений, но… Как правило, это разработки, функционал которых не дотягивает до классических и популярных пакетов и программ. И многие разработчики ПО не особо спешат туда попасть – проверки в Windows Store куда строже, чем в том же Play Market. Ну и S-режим не допускает никакой рекламы, из-за чего даже Google вход в Магазин оказался недоступным.

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

Интернет

Здесь многих тоже ожидает большое разочарование. Во-первых, в S-режиме из браузеров доступен только Microsoft Edge. Альтернативные обозреватели в Microsoft Store имеются, но нормальными их назвать нельзя. Впрочем, если вы привыкли к Google Chrome, то Edge построен на том же движке Chromium, кстати, весьма популярным. То есть по функционалу к браузеру в S-режиме претензий будет мало, нужно будет просто привыкнуть.

А вот с поисковыми системами ситуация совсем плохая. Доступна только Bing, никаких других вариантов не предусмотрено. В принципе и к этому поисковику можно привыкнуть, но беда в том, что подавляющее количество сайтов разработано и разрабатывается с учётом алгоритмов ранжирования Google, у нас – ещё и Яндекс, так что выдача будет разительно отличаться, и к этому привыкнуть уже невозможно. А ожидать, что сеошники быстро перестроятся и внесут соответствующие коррективы специально для S-режима, не приходится.

Защита

В самой Microsoft S-режим позиционируется как безопасный. Но одно дело – использование проверенных приложений, и совсем другое – сёрфинг в интернете, он-то здесь не запрещён. И с этой точки зрения ситуация с безопасностью смотрится уже совсем под другим углом. Об антивирусах можете забыть, полагаться следует только на Защитник Windows, а он очень многими рассматривается как недостаточное для борьбы с вирусами средство. Да, в последнее время Защитник заметно улучшился, но недоверие к нему осталось. И с этим тоже придётся смириться.

Драйвера

И этот важный аспект в S-режиме оказался не совсем удачным. Абсолютно все драйвера устанавливаются системой автоматически. Как и в классической Windows при установке. Но с одним различием: ручная установка драйвера, взятого «со стороны», здесь не предусмотрена. Даже если это драйвер от видеоадаптера или принтера. Вы просто не сможете загружать их с официальных сайтов разработчиков, не говоря уже о других источниках, S-режим не позволит. Останется только надеяться, что по мере выхода новых версий драйверов они будут более-менее оперативно появляться в базе драйверов Microsoft, откуда будут автоматически загружены и установлены операционной системой.

Отныне забудьте о доступе к системному реестру и командной строке. Благом ли является запрет в S-режиме на их использование? С какой стороны посмотреть. Ведь именно реестр и командная строка иногда бывают единственными инструментами для решения самых разных проблем, которые в Windows возникают с завидной регулярностью и независимо от опытности пользователя.

Очевидно, что для новичков все эти особенности не очень важны – они будут учиться работать на том, что имеется. Именно поэтому Microsoft первым делом начала активировать S-режим на компьютерах с Windows, установленных в школах.

Всё ли так плохо? Пока что да, но если весь привычный софт или большая его часть появится в Microsoft Store, ситуация с популярностью S-режима определённо начнёт меняться в лучшую сторону.

Зачем нужна система SELinux?

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

SELinux реализует так называемый MAC (Mandatory Access Control). Это разграничение контроля внедряется поверх того, что уже есть в каждом дистрибутиве Linux, DAC (Discretionary Access Control).

Чтобы понять, что такое DAC, давайте сначала рассмотрим, как работает традиционная защита файлов Linux.

В традиционной модели безопасности есть три объекта: пользователь, группа и другие –  User, Group и Other (сокращаются как u, g, o), которые могут иметь комбинацию прав на чтение, запись и выполнение (r, w, x). Если, например, пользователь jo создает файл в своем домашнем каталоге, он будет иметь к нему доступ на чтение/запись, как и группа jo. Другие пользователи, возможно, не будут иметь к нему доступа. В следующем блоке кода мы рассмотрим гипотетическое содержимое домашнего каталога пользователя jo.

Примечание: Не создавайте такого пользователя, это просто условный пример. Позже мы выполним несколько практических задач.

Такая команда:

Выведет:

Пользователь jo может изменить эти права доступа. Например, jo может предоставить (и ограничить) доступ к этому файлу другим пользователям и группам или изменить владельца файла. Подобные действия могут открыть доступ к важным файлам тем пользователям, которым этот доступ не нужен. Кроме того, jo может ограничить доступ и обезопасить данные, но это делается по усмотрению пользователя: системный администратор не может применить его для каждого файла в системе.

Рассмотрим другой случай: когда процесс Linux запускается, он может запускаться от имени пользователя root или другой учетной записи с привилегиями суперпользователя. Это означает, что если хакер получит контроль над приложением, он сможет использовать его для доступа к любому ресурсу, к которому имеет доступ взломанная учетная запись пользователя. В случае пользователя root это, как правило, все процессы на сервере Linux.

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

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

Какие компоненты виндовс 7 должны быть включены

Выключенные компоненты остаются на диске, и их отключение не освободит пространство на нем. Они просто станут недоступными до следующего включения их в этом окне. От работы некоторых сервисов напрямую зависит работа ОС. Их отключение может привести к тому, что она перестанет отвечать или будет работать неправильно. Какие компоненты виндовс 7 должны быть включены?

Обратите внимание! Службы и сервисы мало чем отличаются в разных версиях ОС, поэтому принципы отключение практически идентичны. Следующие компоненты в Windows 7, 8, 10 должны быть включены: NET Framework, Media Features, Print to PDF, PowerShell, службы печати и документов

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

Следующие компоненты в Windows 7, 8, 10 должны быть включены: NET Framework, Media Features, Print to PDF, PowerShell, службы печати и документов. Например, из-за отключения Фреймворкав виндовс не сможет запускать некоторые приложения, в разработке которых он применялся. Отключение печати PDF повлечет за собой отказ системы работать с файлами этого формата.

Список компонентов, которые нельзя отключать, а какие можно

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

Обратите внимание! Еще одна причина — конфликт стандартной программы и установленного программного обеспечения стороннего разработчика. Внедряемое веб-ядро служб IIS — вещь, абсолютно ненужная обычному пользователю

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

Внедряемое веб-ядро служб IIS — вещь, абсолютно ненужная обычному пользователю. Компоненты прежних версий запускают самостоятельно очень старые приложения. Служба активации Windows — еще один инструмент для разработчиков. Различные клиенты Telnet, TFTP и др. не используются для стандартной работы.

Можно отключить следующие компоненты:

  • Internet Explorer при наличии другого браузера для работы пользователя;
  • telnet-сервер;
  • клиент Telnet;
  • компоненты планшетного ПК;
  • платформа гаджетов Windows;
  • подсистема для Unix приложений;
  • сервер очереди сообщений Microsoft;
  • служба активации Windows;
  • служба XPS;
  • средство просмотра XPS.

Обратите внимание! Если у пользователя нет устройства вывода информации, то находиться на устройстве драйверам принтера нет смысла, соответствующую службу можно смело отключить

Служба XPS

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

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

Продолжаем настраивать centos. Внесем некоторые изменения в работу ssh для небольшого увеличения безопасности. Хотя речь стоит вести больше не о безопасности, а об удобстве и эффективности. По-умолчанию, сервис ssh работает на 22 порту и если все оставить как есть, то мы получим огромное количество попыток авторизоваться. Боты сканят непрерывно интернет и подбирают пароли к ssh. Это не доставляет в реальности каких-то серьезных хлопот и тем не менее, подобные запросы забивают лог secure и трятят некоторые ресурсы сервера как миниум на установку соединения и рукопожатия (handshake).

Чтобы немного закрыть себя от сканов простых ботов, изменим порт, на котором работает ssh. Можно выбрать любой пятизначный номер, это не принципиально. От автоматического сканирования это защитит. Повесим демон ssh на 25333 порт. Для этого редактируем файл /etc/ssh/sshd_config.

Раскомментируем строку Port 22 и заменим значение 22 на 25333.

Так же я обычно разрешаю подключаться по ssh пользователю root. Мне так удобнее. Проблем с этим у меня никогда не возникало. Если вы считаете, что это не безопасно, не трогайте эту настройку. Чтобы разрешить пользователю root подключаться по ssh, раскомментируйте строку

Сохраняем файл. Теперь обязательно изменяем настройки iptables, добавляем в разрешенные подключения вместо 22 порта 25333. Если этого не сделать, то после перезапуска sshd мы потеряем удаленный доступ к серверу. Итак, открываем /etc/iptables.sh и меняем в строке

22 на 25333 и исполняем файл. Наше текущее соединение не оборвется, так как оно уже установлено, но заново подключиться по ssh к 22 порту уже не получится.

Перезапускаем sshd:

Кстати, если вы не отключили SELinux, то просто так не сможете сменить порт ssh. Получите ошибку при перезапуске.

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

Проверяем какой порт слушает sshd:

Если вывод такой же как у меня, то все в порядке, теперь к ssh можно подключаться по 25333 порту.

Добавим еще одну небольшую настройку. Иногда, когда возникают проблемы с dns сервером, логин по ssh подвисает на 30-60 секунд. Вы просто ждете после ввода логина, когда появится возможность ввести пароль. Чтобы избежать этого замедления, укажем ssh не использовать dns в своей работе. Для этого в конфиге раскомментируем строку с параметром UseDNS и отключим его. По-умолчанию он включен.

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

/bin — Основные пользовательские двоичные файлы

Каталог содержит основные пользовательские двоичные файлы (программы), которые должны присутствовать при монтировании системы в однопользовательском режиме. Приложения, например, такие как браузер Firefox, хранятся в , а важные системные программы и утилиты, такие как оболочка bash, находятся в /bin. Каталог /usr может храниться в другом разделе — размещение этих файлов в каталоге /bin гарантирует, что в системе будут эти важные утилиты, даже если другие файловые системы не смонтированы.

непосредственно содержит исполняемые файлы многих основных команд оболочки, таких как .

Встречается в статьях

Инструкции:

  1. Как установить и использовать OpenVZ на CentOS
  2. Установка и настройка OpenVPN на CentOS
  3. Настройка кластера Ceph на Linux CentOS 7
  4. Трансляция видео с веб-сервера с помощью NGINX + rtmp
  5. Как настроить почту на базе Postfix для корпоративной среды
  6. Настройка веб-сервера на CentOS 7 со всем необходимым для правильной работы
  7. Установка и настройка FTP-сервера vsFTPd на CentOS 7
  8. Сервер радиовещания на базе Icecast под Windows и Linux
  9. Настройка портала TeamPass для совместного хранения паролей
  10. Инструкция по установке и использованию GLPI на Linux CentOS
  11. Установка и настройка системы мониторинга Prometheus на Linux
  12. Использование связки Elasticsearch + Kibana + Logstash на Linux
  13. Настройка веб-сервера на CentOS 8 со всем необходимым для правильной работы
  14. Как установить и настроить панель управления виртуальными машинами VMmanager
  15. Установка XMPP-сервера Openfire на CentOS для мгновенного обмена сообщениями
  16. Установка и настройка файлового сервера Samba на CentOS 8
  17. Установка и настройка почтового сервера Zimbra на Linux
  18. Настройка L2TP VPN-сервера на CentOS 8 для возможности подкючения стандартными средствами Windows
  19. Как настроить почту для корпоративной среды на CentOS 8

Мини-инструкции:

  1. Отключение Selinux в системе Linux
  2. Как настроить систему безопасности с SELinux в CentOS
  3. Шпаргалка по настройке SELinux для различных программ
  4. Способы отключения использования IP версии 6 в Linux CentOS
  5. Настройка защиты DNS ответов от BIND при помощи DNSSEC
  6. Установка и настройка OwnCloud на CentOS 7 или 8
  7. Инструкция по установке и настройке phplist
  8. Настройка проксирования почты с NGINX для IMAP, POP3 и SMTP
  9. Настройка сервера мониторинга Zabbix на Linux CentOS
  10. Как настроить мониторинг репликации MySQL/MariaDB с помощью Zabbix
  11. Настройка потоковой репликации СУБД PostgreSQL
  12. Как наблюдать за репликацией в PostgreSQL с помощью Zabbix
  13. Установка и настройка своего локального репозитория CentOS
  14. Установка панели управления ISPmanager на Ubuntu или CentOS
  15. Как создать свой собственный образ для Docker
  16. Отправка логов на удаленный сервер с помощью journald
  17. Настройка rsyslog для хранения логов на удаленном сервере Linux
  18. Установка и настройка LDAP сервера FreeIPA на Linux CentOS
  19. Установка и настройка CRM Битрикс24 от 1С на Linux CentOS
  20. Настройка мониторинга RAID LSI MegaRaid на Linux с помощью Zabbix
  21. Как установить и настроить сервер OpenVPN на CentOS 8
  22. Установка и использование сервера Freeradius на Linux CentOS 8
  23. Настройка сервера видеоконференцсвязи OpenMeetings на Linux CentOS 8
  24. Как установить и настроить telegraf + InfluxDB для хранения метрик
  25. Установка и настройка сервера NextCloud на CentOS 8
  26. Установка и использование почтового клиента WebMail Lite на Linux CentOS
  27. Настройка сервера мониторинга Zabbix 5 на Linux CentOS 8

Полезные команды для управления Apache в Linux

Для работы с веб – приложениями

В этом руководстве мы опишем некоторые из наиболее часто используемых команд управления службами Apache (HTTPD) , которые полезно знать, разработчику или системному администратору, и держать эти команды под рукой. Мы покажем команды для Systemd и SysVinit.

Убедитесь, что следующие команды должны выполняться от имени пользователя root или sudo и работать с любым дистрибутивом Linux, таким как CentOS, RHEL, Fedora, Debian и Ubuntu.

Установка Apache Server

Чтобы установить веб-сервер Apache, используйте ваш стандартный менеджер пакетов, как показано ниже.

Проверка версии Apache

Чтобы проверить установленную версию вашего веб-сервера Apache в вашей системе Linux, выполните следующую команду.

Если вы хотите увидеть номер версии Apache и параметры компиляции, используйте флаг -V, как показано ниже.

Проверка на ошибки синтаксиса конфигурации Apache

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

Запуск сервиса Apache

Чтобы запустить службу Apache, выполните следующую команду.

Включение службы Apache

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

Перезапуск службы Apache

Чтобы перезапустить Apache (остановить, а затем запустить службу), выполните следующую команду.

Просмотр состояния сервиса Apache

Чтобы проверить информацию о состоянии времени выполнения службы Apache, выполните следующую команду.

Перезагрузка сервиса Apache

Если вы внесли какие-либо изменения в конфигурацию сервера Apache, вы можете указать службе перезагрузить свою конфигурацию, выполнив следующую команду.

Остановка службы Apache

Чтобы остановить службу Apache, используйте следующую команду.

Показать справку Apache Command

И последнее, но не менее важное: вы можете получить справку о служебных командах Apache в systemd, выполнив следующую команду. На этом пока все! В этой статье мы объяснили наиболее часто используемые команды управления службами Apache / HTTPD, которые полезно будет знать, включая запуск, включение, перезапуск и остановку Apache. На этом пока все! В этой статье мы объяснили наиболее часто используемые команды управления службами Apache / HTTPD, которые полезно будет знать, включая запуск, включение, перезапуск и остановку Apache

На этом пока все! В этой статье мы объяснили наиболее часто используемые команды управления службами Apache / HTTPD, которые полезно будет знать, включая запуск, включение, перезапуск и остановку Apache.

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации Просто оставьте свои данные в форме ниже.

baltun

Бывает нужно узнать версию установленного программного обеспечения на веб-сервере. Для этого можно использовать соответствующие SSH команды.

Как узнать версию PHP из командной строки?

Основы SELinux

SELinux представляет собой систему маркировки, каждый процесс имеет метку. Каждый файл, каталог или даже пользователь в системе имеет метку. Даже портам и устройствам и именам хостов в системе присвоены метки. SELinux определяет правила доступа процесса к объектам с определенными метками. Это и называется политикой. За соблюдением правил следит ядро. Иногда это еще называется обязательный контроль доступа (Mandatory Access Control, MAC)

Владелец файла не имеет полной свободы действий над атрибутами безопасности. Стандартные атрибуты контроля доступа, такие как группа и владелец ничего не значат для SELinux. Полностью все управляется метками. Значения атрибутов могут быть установлены и без прав root, но на это нужно иметь специальные полномочия SELinux.

Теперь поговорим немного о политиках. Мы определяем метку для процессов определенного типа, а также на объекты файловой системы тоже определенного типа. Вот представьте, себе систему, в которой объекты (процессы) это кошки и собаки. Это типы процессов. И у нас есть объекты, к которым они хотят иметь доступ — еда. Но еда у них разная еда_котов и еда_собак. Нужно чтобы объекты имели доступ только к своей еде.

У собаки есть разрешение есть свою пищу, а у кошки — свою. В политиках SELinux это будет выглядеть вот так:

разрешить собаке корм_собак есть

Теперь ядро будет следить, чтобы соблюдались эти правила. В системе SELinux все по умолчанию запрещено, таким образом, если собака попытается съесть кошачий корм, ядро не позволит это сделать.

Допустим, процесс Apache имеет метку httpd_t, а файлы, к которым у Apache должен быть доступ мы назвали httpd_sys_content. Также у нас есть данные кредитных карт, которые хранятся в базе данных mysql. Если хакер взломает процесс Apache и у него будет root доступ, то он все равно не сможет получить доступ к файлам от mysql.

В системе довольно часто встречаются процессы с одинаковыми типами. Чтобы это обойти, и настроить полномочия для разных процессов одного типа была придумана система категорий безопасности Multi Category Security (MCS). Мы можем добавить к объекту категорию, и настраивать полномочия уже в зависимости от этой категории.

SELinux может вызвать у системных администраторов большое количество проблем, многие ее просто отключают, таким образом, решив проблему и уменьшив безопасность. Как уже говорилось выше, по умолчанию SELinux блокирует все и вся. Это подходит под описание строгой политики. Но чтобы облегчить системным администраторам работу, были разработаны другие стандартные политики. Во многих дистрибутивах используется целевая политика (targeted), она охватывает около 200 сетевых служб и процессов, все же остальные программы запускаются и работают свободно, к ним никакие модели SELinux не применяются.

SELinux может работать в трех режимах — отключен, система полностью отключена и не работает, режим ограничений  Enforcing — программа активирована и блокирует все не соответствующие политикам действия и третий режим Permissive — только фиксировать нарушения.

Теория в общих чертах рассмотрена. А теперь перейдем к практической части.

Для чего нужен режим

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

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

Назвать это новшеством нельзя: некоторые из вас наверняка помнят выход весной 2018 года нашумевшей Windows 10 S, которая была встречена в штыки. Новая операционка оказалась сильно урезанной в правах версией обычной Windows, её никто не покупал, и Microsoft была вынуждена признать ошибкой выход этой самостоятельной версии. Но от идеи, как выяснилось, не отказались, начав продвигать пресловутый S-режим как необязательное дополнение к ноутбукам с Windows 10.

Споры по поводу буквы S длятся и сегодня. Существует несколько выглядящих правдоподобными вариантов расшифровки этой буквы в названии ОС и режима: Security (безопасный), Safity (тоже переводится как «безопасный»), Speed (скоростной). И все три значения можно поставить в заслугу режиму: да, он обеспечивает более высокий уровень безопасности, поскольку в принципе не позволяет устанавливать стороннее ПО. За исключением того, что представлено в Windows Store, а оно там подвергается таким строгим проверкам, что и молекула не проскочит, не то что вирус. Ну, а скорость работы компьютера выше по тем же причинам: урезанная версия и грузится быстрее, и работает очень шустро.

Но готовы ли вы платить за стабильность и безопасность столь высокую цену как свобода? Имеется в виду свобода выбора ПО, которую у вас отняли.

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

Что ж, большая корпорация стремится сделать жизнь своих покупателей проще, спокойнее, но покупатели от этого не в восторге. По крайней мере, большинство. Впрочем, в Microsoft учли прежнюю ошибку: от S-mode в вашем ноутбуке можно отказаться в любой момент времени, это не грозит никакими санкциями и осуществляется буквально в несколько кликов.

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

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
IP-файл
Добавить комментарий

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