Безопасность систем Ubuntu, Linux Mint и Fedora Workstation: пояснения и советы

Во-первых, вам следует уяснить, что не существует на 100% безопасных систем. Ни в реальном, ни в цифровом мире. Это утверждение справедливо даже в том случае, если ваш компьютер работает под управлением одного из дистрибутивов Linux. В любом случае вы должны руководствоваться здравым смыслом. И даже в этом случае вы не застрахованы от ошибок. Незначительный риск компрометации системы будет иметь место при любых обстоятельствах. Как говорят французы: се ля ви.

1. Общие советы по повышению безопасности системы

Если говорить о наиболее действенных мерах по повышению безопасности системы Linux, можно выделить следующие пункты:

  • Следует устанавливать обновления сразу же после их выпуска;
  • Следует устанавливать программное обеспечение исключительно из официальных репозиториев дистрибутивов Linux Mint, Ubuntu и Fedora Workstation;
  • Не стоит устанавливать какой-либо антивирус (да, это не ошибка!);
  • Не стоит устанавливать эмуляторы ОС Windows, такие, как Wine;
  • Следует активировать межсетевой экран;
  • Кроме того, в любых ситуациях следует руководствоваться здравым смыслом.

Если вы соблюдаете все эти пункты, можете расслабиться, ведь вы используете Linux…

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

1.1. Антивирусное программное обеспечение и утилиты для удаления руткитов

В дистрибутивах Ubuntu, Linux Mint и Fedora Workstation вам не понадобится ни антивирусное программное обеспечение, ни утилиты для удаления руткитов. Ведь при регулярном обновлении системы вирус или руткит не сможет проникнуть в нее. Кроме того, в Linux загруженное пользователем вредоносное программное обеспечение может функционировать исключительно в его домашней директории. Исходя из вышесказанного, для установки вируса или руткита в систему ему потребуется ваш пароль, либо уязвимость одного из компонентов системы. Но в подавляющем большинстве случаев он не сможет воспользоваться ни тем, ни другим.

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

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

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

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

Лучшей защитой от вирусов является комплекс из следующих мер:

  • Установка дистрибутива Linux с хорошей поддержкой, такого, как  Linux Mint, Ubuntu или Fedora Workstation;
  • Ежедневная проверка на наличие обновлений и их установка;
  • Установка программного обеспечения исключительно из официальных источников;
  • Использование системы в соответствии со здравым смыслом.

Дополнительные пояснения будут даны ниже.

1.2. Межсетевой экран

Межсетевой экран присутствует в в любом дистрибутиве Linux. Он носит имя IPTables и интегрирован непосредственно в ядро ОС. Состояние межсетевого экрана IPTables может изменяться с помощью различных вспомогательных приложений; в дистрибутиве Linux Mint таким приложением является предустановленное по умолчанию приложение «Uncomplicated Firewall (ufw)» («Несложный межсетевой экран»).

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

Однако, в некоторых случаях вам все же понадобится межсетевой экран. Например, вы можете работать в незащищенной беспроводной сети или активировать на своем компьютере какие-либо службы, принимающие соединения извне. Поэтому для повышения безопасности системы рекомендуется активировать межсетевой экран во всех случаях.
Вы можете активировать межсетевой экран с помощью терминала. Для активации службы в окно терминала следует ввести (с помощью функций копирования/вставки) следующую команду команду:

sudo ufw enable

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

Служба «Uncomplicated Firewall (ufw)» использует разумный набор стандартных параметров конфигурации (объединенных в рамках профиля), которые являются приемлемыми для подавляющего числа домашних пользователей дистрибутива. Таким образом, в том случае, если у вас нет каких-либо специфических требований к межсетевому экрану, его настройку можно считать оконченной!

Вы можете проверить состояние межсетевого экрана с помощью следующей команды:

sudo ufw status verbose

После ввода команды нужно нажать клавишу Enter. В том случае, если межсетевой экран активен, вы должны увидеть аналогичный вывод:

alex@notebook:~$ sudo ufw status verbose
[sudo] password for alex:
Состояние: активен
Журналирование: on (low)
Default: <strong>deny (incoming)</strong>, allow (outgoing), disabled (routed)
Новые профили: skip
alex@notebook:~$

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

Несмотря на то, что данные настройки используемого по умолчанию профиля межсетевого экрана совместимы с большинством приложений, существуют некоторые исключения: например, при использовании Samba вы не столкнетесь ни с какими проблемами. При этом вы сможете осуществлять загрузку файлов с торрентов; но в случае размещения ваших файлов на торрентах вам все же придется временно деактивировать службу ufw.

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

sudo ufw disable

После ввода команды необходимо нажать клавишу Enter. Если вас интересует информация обо всем наборе правил межсетевого экрана, вы можете ознакомиться с выводом команды:

sudo ufw show raw

Также вы можете изучить файлы правил межсетевого экрана из директории /etc/ufw (а именно, те файлы, имена которых оканчиваются на .rules).

В дистрибутиве Fedora Workstation для управления межсетевым экраном используется предустановленное по умолчанию приложение «FirewallD», которое активировано и настроено оптимальным образом, поэтому никакого вмешательства пользователя в его работу не требуется.

1.3. Уязвимости

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

2. Подробнее об антивирусах

Давайте поразмышляем об антивирусном программном обеспечении.

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

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

Компьютеры, работающие под управлением какого-либо дистрибутива Linux, являются такими же целями для атак, как и компьютеры, работающие под управлением любой другой операционной системы. Серверы многих популярных (и, следовательно, посещаемых) веб-сайтов также работают под управлением Linux, поэтому у злоумышленников, безусловно, имеется мотивация для инфицирования Linux-систем.

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

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

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

Важно отметить, что лучшей защитой от любого вируса является исправление ошибки в программном компоненте, посредством которого может быть осуществлена атака. Подобные исправления распространяются в форме обновлений безопасности (которые выпускаются для Linux оперативнее и чаще, чем для Windows и Mac OS).

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

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

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

Разумно помнить о том, что при установке программного обеспечения следует отдавать предпочтение одному из официальных репозиториев вашего дистрибутива Linux. Будьте особенно осторожны с программным обеспечением из сторонних источников, таким, как программное обеспечение, распространяемое в форме отдельных файлов пакетов (с расширением .deb). Устанавливайте из сторонних источников лишь то программное обеспечение, которое вызывает доверие, такое, как Google Chrome и Oracle (Sun) Java JRE.

В любом случае, на данный момент не существует активно распространяющихся вирусов для Linux.

3. Мой совет: не устанавливайте никакое антивирусное программное обеспечение

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

A. В Linux на возможность исполнения файла указывает не его расширение (такое, как .exe в ОС Windows), а права доступа к нему. Каждый создаваемый в Linux файл по умолчанию не является исполняемым, поэтому пользователю придется выполнить дополнительное действие для того, чтобы иметь возможность выполнить его.

B. В Linux обычный пользователь имеет очень ограниченные права в системе. Например, обычный пользователь не может выполнять административные задачи. Именно поэтому область работы обычного пользователя ограничена его домашней директорией. Для установки программного обеспечения в систему вам в любом случае придется работать от лица пользователя root (или временно получить права пользователя root, как это делается в дистрибутивах Ubuntu и Linux Mint). В дистрибутивах Ubuntu и Linux Mint по умолчанию даже администратор входит в систему с ограниченными правами. Если он будет выполнять административную задачу, ему придется дополнительно ввести свой пароль для получения временных привилегий пользователя root. После ввода пароля привилегии пользователя root будут сохраняться за пользователем в течение последующих 15 минут.

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

D. Сканеры вирусов обнаруживают в основном вирусы для ОС Windows. Эти вирусы не будут работать в Linux.

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

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

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

H. На данный момент не существует активно распространяющихся вирусов для Linux.

Если говорить кратко, антивирус в Linux является не только излишним, но и опасным, так как он создает ложное ощущение защиты и нередко сам по себе уязвим.

4. Заблуждение о необходимости защиты пользователей ОС Windows

Рано или поздно вы столкнетесь со следующим утверждением: «Я использую антивирус в Linux для того, чтобы случайно не передать вирус для Windows пользователю этой системы. Я могу случайно передать его, например, прикрепив непроверенный файл к сообщению электронной почты.»

Это утверждение является заблуждением по описанным ниже причинам.

Использование антивируса в Linux является пустой тратой системных ресурсов. Эти ресурсы могут использоваться более разумно, например, для повышения отзывчивости системы.

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

Кроме того, неразумно использовать его ради безопасности пользователей, не защищающих свою операционную систему.

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

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

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

На самом деле, несложно заметить, что утверждение о «защите пользователей Windows» иногда используется в качестве удобного предлога пользователями, по каким-либо причинам не верящими в возможность использования Linux без антивируса…

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

Почтовый сервис компании Google автоматически сканирует вложения на наличие вирусов, троянов и другого вредоносного программного обеспечения. Сканирование осуществляется средствами профессионального сканера вирусов с постоянно обновляемой базой данных, работающего на серверах сервиса GMail. Вы можете бесплатно зарегистрировать учетную запись на сервере GMail, поэтому не стоит волноваться по поводу оплаты сервиса…

Если же вы активируете поддержку протоколов POP3 или IMAP и SMTP с помощью веб-интерфейса GMail, вы сможете отказаться от использования веб-интерфейса и работать с электронной почтой, используя такие приложения, как Thunderbird или Evolution.

Примечание: на сегодняшний день каждый популярный почтовый сервис (не только GMail) осуществляет автоматическое сканирование вложений электронных писем на наличие вирусов для Windows на уровне сервера.

Другой вариант проверки файлов на наличие вирусов связан с использованием бесплатного веб-сервиса VirusTotal.com от компании Google. Он осуществляет сканирование каждого загруженного вами файла на наличие вирусов и другого вредоносного программного обеспечения.

5. Не устанавливайте Wine в вашем дистрибутиве Linux

Приведенные выше советы относительно безопасной эксплуатации системы Linux подразумевают использование «чистой» системы без эмуляторов Windows, таких, как Wine, PlayOnLinux и CrossOver.

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

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

6. Избегайте сомнительных или сторонних дополнений для веб-браузера

Попытайтесь не устанавливать сомнительные или сторонние дополнения и расширения для вашего веб-браузера. Они могут ухудшить безопасность вашей системы.

Вы уже установили подобные дополнения для веб-браузера Firefox, Chrome или Chromium, после чего директория данных веб-браузера заполнилась подозрительными файлами (что обычно происходит из-за использования сомнительных дополнений), и желаете запустить веб-браузер в очищенном окружении? Воспользуйтесь советами из раздела 8.

7. Опасные действия

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

8. Безопасность беспроводных сетей

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

9. Отключите поддержку механизма Universal Plug and Play (UPnP) в вашем маршрутизаторе

Вы должны отключить поддержку механизма Universal Plug and Play (UPnP) в вашем маршрутизаторе; это не связано с операционной системой, но очень важно. Механизм UPnP позволяет подключенным к сети устройствам взаимодействовать друг с другом как в рамках локальной сети, так и посредством сети Интернет.

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

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

Получите доступ к веб-интерфейсу вашего маршрутизатора и отключите механизм UPnP, а также сопутствующую функцию «Разрешить пользователю осуществлять настройку».

Примечание: в некоторых случаях могут потребоваться некоторые дополнительные действия, такие, как активация поддержки VPN, механизма обмена файлами P2P и аналогичных механизмов (а также открытие некоторых портов в ручном режиме). Эти действия могут и не потребоваться в зависимости от стандартных параметров прошивки вашего маршрутизатора, установленных производителем.

10. Относитесь с особой осторожностью к Java и OpenJDK

Виртуальная машина Java (как Oracle Java, так и OpenJDK) постоянно становится целью атак. Именно поэтому разумным решением является деактивация плагина Java в вашем веб-браузере (конечно же, в том случае, если вы его установили). Впоследствии вы сможете активировать плагин Java при необходимости на короткий период времени.

Данный совет относится как к пользователям Windows, так и к пользователям Linux. В этом плане системы Linux также уязвимы! Это объясняется тем, что виртуальная машина Java является платформонезависимой,то есть работает вне зависимости от  используемой операционной системы.

В Firefox вы можете деактивировать плагин таким образом, как описано здесь, а в Google Chrome и Chromium — таким образом, как описано здесь.

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

11. Научитесь создавать безопасные пароли, которые легко запомнить

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

Хотите ознакомиться с дополнительными советами?

Хотите узнать о других настройках и приемах работы с дистрибутивами Linux? На данном веб-сайте размещено большое количество подобных материалов. Например, вы можете узнать о том, как просто заменить Windows XP на Linux Mint.