Как защитить ubuntu от вируса
Мы живем в двадцать первом веке и немного удивительно, что многие люди до сих пор считают, операционные системы на базе ядра Linux безвирусными и полностью безопасными. Так же как и множество пользователей OS X верит что у их операционной системы есть иммунитет от вирусов, так и у пользователей Linux встречается такое заблуждение. Но никто не вправе их винить ибо разработчики много лет убеждали их в этом.
На свете нет и не может быть ни одной на 100% защищенной от вирусов и вредоносного программного обеспечения операционной системы. Linux еще не настолько заражен вирусами как Windows. Можно даже сказать, что при правильном обращении с системой подцепить вирус не так уж просто. Но почему? В этой статье выясним причины этого и разрушим все мифы и легенды о безопасности Linux. Разберем вопрос вирусы в Linux - возможно или нет.
Linux неуязвимый и свободный от вирусов
"Linux свободен от вирусов". Даже если для Linux нет вредоносного программного обеспечения, является ли он безопасным? Конечно же, нет. Количество угроз сейчас намного больше чем просто заражение вирусами. Представьте что к вам придет фишинговый Email или вы перейдете на фишинговый сайт. Защищает ли Linux вас от ввода личной информации или данных банковских карт на таких сайтах? Ведь не всегда и не всех. Независимо от платформы, на которой вы работаете нужно всегда сохранять бдительность и быть осторожным.
Вирусописатели не ориентируются на Linux потому что у него низкая доля рынка
Здесь я с вами соглашусь, действительно дистрибутивы Linux имеют низкую долю рынка настольных компьютеров, но нельзя сказать того же о других рынках. Дистрибутивы Linux занимают более 40% доли рынка серверов, а на суперкомпьютерах они держат полную монополию.
Наконец в мобильном сегменте есть операционная система Android, основанная на Linux и занимающая львиную долю рынка. Сейчас работает более миллиарда устройств на Android. Вы по-прежнему считаете что вирусописатели избегают Linux из-за его непопулярности? Вирусы Linux непохожи на обычных вирусов Windows, у них совсем другие задачи, это руткиты, задача которых прятаться в системе и выполнять указания хозяина. Домашние компьютеры они заражают редко, в силу их защищенности, но вот незащищенные роутеры и плохо настроенные серверы могут стать их жертвой.
Вирусы Windows не могут работать на Linux
Не совсем. Хотя число таких вредоносных программ по-прежнему довольно мало, тем не менее есть много кросс-платформенных угроз. Это в основном уязвимости в программах, основанных на кросс-платформенных языках программирования, таких как Java, Perl, JavaScript, PHP, Puby, Python, Adobe Flash, Reader и т д.
Кроме того, серверы Linux, как правило, будучи неуязвимыми для Windows вирусов, распространяют их на Windows машины. Когда пользователь открывает любую вредоносную ссылку, есть очень большая вероятность, что она ведет сервер под управлением ОС Linux.
В Linux программное обеспечение устанавливается из довереных репозиториев
Социальная инженерия не единственный путь заражения вирусами. Думаете вы в безопасности только потому, что используете эти репозитории?
Давайте рассмотрим пример. Пользователи часто ищут "Как установить Java на Ubuntu". Они сразу же находят сотни инструкций где описан процесс установки самой последней версии Java путем подключения дополнительного репозитория PPA в систему.
Но кто управляет этими репозиториями? Это зависит от того кто их создал. И в нашем примере, это точно не Oracle. Таким образом, мы не можем быть уверены что не получим вредоносное программное обеспечение вместо официальной java машины.
Улучшение защищенности Linux системы
Большинство дистрибутивов Linux обычно поставляются с передовыми системами безопасности, но все они сложны в настройке и использовании. Каждый компьютер, подключенный к сети не застрахован от вирусов. Но все относительно. Если мы сравним уровень уязвимости Linux и Windows то легко поймем почему много людей говорят что Linux безопасен.
Вирус - это любая компьютерная программа, которая может копировать себя и заражать другие компьютеры. Есть и другие объяснения понятия "компьютерный вирус", чтобы оно включало все виды рекламного ПО, вредоносные и шпионские программы, которые не имеют репродуктивной способности и т д. Можно сказать, что компьютерный вирус - это один из видов вредоносного кода или программного обеспечения, которое может заражать компьютеры или распространятся без воли пользователя. В последнее время появилась новая тенденция распространения кросс-платформенных вирусов.
Вот некоторые действия, которые нужно проделать для улучшения безопасности своей системы Linux и чтобы не пустить linux вирусы на свой компьютер:
- Защита загрузчика
- Проверка на руткиты
- Шифрование диска
- Защита пользователя root сильным паролем
- Правильное распределение привилегий между пользователями
- Правильные права для файлов
- Использование SELinux
- Настройка брандмауэра
- Использование антивируса
- Удаление лишних программ, в которых могут быть уязвимости
- Устанавливать важные обновления безопасности
Вирусы linux могут передаваться различными путями:
- Почтовые вложения
- Вместе с приложениями
- Вредоносные URL адреса
Несмотря на то что очень сложно заразить Linux машину, вы не должны оставаться совсем без защиты.
Руткиты
Руткиты представляют очень большую опасность. Руткит это система вредоносного программного обеспечения, которая может скрывать свое присутствие в системе, таким образом, что пользователь даже не подозревает о том что было установлено и работает в системе. Многие люди стали жертвой руткитов, а поэтому строго рекомендуется использовать программу для борьбы с ними - Rkhunter. Честно говоря, это один из первых инструментов, которые я устанавливаю после установки системы.
Руткиты очень трудно, а то и невозможно удалить. Некоторые руткиты очень опасны тем что компрометируют пользователей и систему, и после них невозможно восстановиться. Если хотите узнать есть ли руткиты в вашей системе, установите RkHunter и запустите проверку. Вы будете удивлены. Руткиты атакуют не только серверы, но и обычные компьютеры. Это особенно актуально если они размещены на статических ip адресах и не защищены фаерволом.
Вложения в электронной почте
Вредоносные вложения в почте не очень опасны для Linux, почти все они направлены на поражение машин Windows. Эти вложения, как правило, имеют расширение zip или exe. Когда пользователь пытается открыть exe файл, Linux система не знает что с ним делать если не установлен эмулятор wine.
Но если вложение, имеет расширение .rpm .deb или .bin - то эти файлы могут быть установлены в Linux. Но несмотря на это все не так просто, не получится открыть rpm в Linux с системой установки пакетов deb, и даже если вы откроете пакет система спросит пароль пользователя согласно своей модели безопасности. Но в Windows достаточно просто дважды щелкнуть на файле.
Вместе с приложениями
Так как Linux это открытое программное обеспечение, которое может разрабатываться кем угодно - вы не можете полностью доверять любому куску кода или программе. Да-да вспомните о ЛОР-патче или патче Брамина. Тем не менее можно доверять программам распространяемым по официальным каналам вашего дистрибутива. Например, программное обеспечение, распространяемое в Ubuntu Software Center точно будет безопасным. Устанавливая программы из других источников, вы рискуете получить вирус.
Нельзя сказать что пользователи не должны доверять любому ПО, распространяемому неофициальными каналами. Код открытого программного обеспечения может свободно просматриваться пользователями, а поэтому если там что-то есть, то пользователи его обязательно обнаружат. Но если вы параноик, остается только избегать установки программного обеспечения из ненадежных источников.
Вредоносные URL адреса
Я еще ни разу не сталкивался со ссылками которые бы причинили реальный вред моей машине. Одним из типов вредоносных ссылок есть фишинговые ссылки. Они выглядят как безопасные, это может быть поддельный банковский счет, экран входа, или форма авторизации PayPal. Тысячи адресов могут быть фальсифицированы, и вы можете случайно ввести там свои личные данные.
Такие виды угроз не влияют непосредственно на систему Linux, но они ориентированы на невнимательность пользователей. Не следует ими пренебрегать только потому, что вы используете Linux.
Выводы
Linux достаточно безопасный по своей архитектуре, и ему не нужен брандмауэр пока он не подключен к сети. Политика безопасности контроля доступа, называемая SELinux (Security-Enhanced Linux) добавляет инструменты пространства пользователя и ядра, которые улучшают безопасность ОС Linux. Использование этого расширения очень важно для пользователей, устройства которых подключены к сети или сетевых администраторов.
Последние события в сфере IT показали, что вирусы для Linux все же существуют. Буквально в этом месяце СМИ стряхнула информация о появлении сразу двух вирусов шифровальщчиков для Linux. А постоянно находимые в различном программном обеспечении уязвимости открывают вирусам дорогу в систему, в обход всех уровней защиты. После всего о чем мы говорили, вы по прежнему думаете что операционные системы, основанные на Linux имеют иммунитет к вирусам и вирусы и линукс понятия несовместимые? Я надеюсь, что ваш ответ нет. Потому что именно такой ответ сохранит ваши машины в безопасности на протяжении многих лет. Если вы достаточно осторожны, можете наслаждаться работой Linux без вирусов много лет. Но не попадите в ловушку полагая, что Linux имеет иммунитет к вирусам.
С давних времен между пользователями ходят споры есть ли вирусы для Linux и если есть, то стоит ли использовать антивирусы на своем компьютере. Операционная система Linux спроектирована таким образом, чтобы быть максимально безопасной и защищенной от вирусов.
Она действительно намного безопаснее Windows и менее подвержена атакам вирусов и вирусам. Но разработчики - тоже люди и иногда они ошибаются. Из-за недосмотра или еще по каким-либо причинам в системе появляются уязвимости, которые могут быть использованы вирусами. В наши дни Linux стремительно набирает популярность. Если на персональных компьютерах она используется не так часто, то на серверах Linux занимает лидирующие позиции, а теперь еще и на различных IoT устройствах, которых становится все больше.
Хакерам становится все выгоднее делать вирусы для Linux. Ими сложнее заразиться чем в Windows, и в большинстве случаев они используют уже устраненные в новых версиях linux и всем известные уязвимости для проникновения в систему, а также недочеты в настройке.
Так что если ваша система правильно настроена и вовремя обновляется, то вам нечего бояться. Но многие IoT устройства, роутеры или серверы долго не обновляются, и именно они становятся жертвами таких вирусов. В нашей сегодняшней статье мы рассмотрим самые опасные вирусы для Linux, которые появились за последние несколько лет.
1. Linux.Encoder
Linux.Encoder известный, как первый шифровальщик для операционных систем на базе ядра Linux. Распространение вируса началось 5 ноября 2015 года. Используя различные уязвимости в системе вирус шифровальщик linux проникал на сервер и зашифровывал все доступные для записи файлы с помощью симметричного шифрования AES и RSA.
Открытый ключ, которым было выполнено шифрование доступен всем, а вот за закрытый, нужный для расшифровки, злоумышленники требовали деньги в валюте bitcoin. Основным путем для проникновения в систему для этого вируса была уязвимость в популярной CMS для создания онлайн магазинов - Magento. Естественно, уязвимость была давно закрыта, но не все небольшие ресурсы установили обновление, за что и поплатились.
Было обнаружено несколько версий вируса Linux.Encoder.0, Linux.Encoder.1 , Linux.Encoder.2. Но для всех из них со временем были найдены способы расшифровки файлов.
2. Linux.Mirai
Первая версия Linux.Mirai была обнаружена в мае 2016. У него совсем другая специфика работы. Вирус не причиняет вреда владельцу устройства и пытается остаться незамеченным. Он нацелен больше на IoT устройства, под управлением Linux, которые подключены к сети интернет и использует их для осуществления DDoS атак. Пользователь, скорее всего, ничего не заметит кроме существенного снижения пропускной способности сети.
Попадает вирус на машину путем совсем простым. Он ищет устройства на которых работает служба telnet с доступом без пароля или паролем по умолчанию. Linux.Mirai находится на устройстве до перезагрузки. Но если логин и пароль telnet не были изменены, то устройство будет инфицировано снова.
Этот вирус еще известен под именами Bashlite, GayFgt, LizKebab, Torlus, Bash0day и Bashdoor. Именно с помощью ботнена, организованного этим вирусом были осуществлены несколько нашумевших DDoS атак этой осенью. Как бы то ни было, но успех Mirai вдохновил хакеров разрабатывать другие linux вирусы, для организации DDoS атак.
3. Linux.NyaDrop
Это еще один троян, который инфицирует IoT устройства под управлением Linux точно так же, как это делает Mirari. Он не просто ищет устройства без пароля, но и пытается перебрать самые часто используемые пароли для telnet, чтобы попасть на устройство.
Работает вирус немного другим образом, после проникновения на устройство, он загружает исполняемые файлы бэкдора, который позволяет получить удаленный доступ к устройству. Пока что инициируются только роутеры на архитектуре MIPS, но в будущем вирус может расширить круг своих жертв. Хакеры смогут использовать зараженные устройства не только для DDoS атак, но и, например, в качестве прокси.
4. Linux.BackDoor.Gates
Этот троян для Linux был обнаружен еще в мае 2014. Он атакует устройства, под управлением 32 битной версии операционной системы Linux. Вирус состоит из двух частей, бэкдора, который позволяет злоумышленникам выполнять на вашем компьютере необходимые ему команды, а также DDoS бота. Основное предназначение, как и у двух предыдущих - проведение DDoS атак.
В процессе работы вирус передает злоумышленникам много данных о вашей системе, среди них: количество ядер, скорость CPU, использование CPU, MAC адрес, информация о сетевых интерфейсах, объем памяти, объем передаваемых и получаемых данных.
5. Linux.Lady
Еще один троян для операционных систем семейства Linux обнаруженный в октябре 2016. Он написан на новом языке, разработанном в корпорации Google. Он заражает серверы через неправильно настроенную программу Redis. Троян способен сам распространяться от машины к машине и постоянно исследует сеть на наличие уязвимых компьютеров.
Кроме распространения и заражения других машин, у этого вируса есть еще одна задача, он майнит криптовалюту на вашей машине, тем самым расходуя ваши ресурсы процессора и памяти.
6. Linux.DnsAmp
Этот троян для Linux был обнаружен еще в 2014 году, он может заражать как 32, так и 64 битные системы Linux. После заражения вирус прописывает себя в автозагрузку через /etc/rc.local и начинает ожидать команд от сервера. Основная цель вируса - участие в DDoS атаках.
Попадая на вашу машину, как и другие linux вирусы, он отправляет на свои сервера информацию о ней, например, объем памяти и количество swap пространства, а также другие характеристики.
7. Linux.Hanthie
Троян для Linux, обнаруженный еще в 2013 году, сам распространяться не умеет, но может попасть на компьютер путем социальной инженерии. После запуска прописывается в автозагрузку и пытается подключить свою библиотеку ко всем процессам.
Вирус подключается ко всем браузерам и следит за трафиком HTTP и HTTPS перехватывая и отправляя злоумышленникам данные форм, которые заполняет пользователь. Также он предоставляет злоумышленникам доступ к вашей системе и имеет средства защиты от антивирусов и обнаружение запуска в виртуальных окружениях.
8. Linux.Myk
Еще один троян для операционных систем Linux, созданный китайскими программистами. Как и Mirori, этот вирус предназначен для организации DDoS атак, но также может предоставить злоумышленнику доступ к вашему компьютеру. Характерная особенность этого вируса в том, что он способен отключать брандмауэр. Инфицирование осуществляется с помощью социальной инженерии. Впервые вирус был обнаружен весной 2015.
9. Linux.Rex
В 2016 году появилось несколько вирусов для Linux, написанных на новом языке от Google - Go. Вирус инфицирует сервера, под управлением различных систем управления контентом, используя обнаруженные в них уязвимости. Он может рассылать электронные письма и самостоятельно искать уязвимые сервера. Чаще всего вирус заражает серверы с Durpal, WordPress, Magento, JetSpeed, в которых не исправлены уязвимости. В WordPress вирус пытается использовать уязвимые плагины WooCommerce, Robo Gallery, Rev Slider, WP-squirrel, Site Import, Brandfolder, Issuu Panel и Gwolle Guestbook. Для сайтов Magento используются уязвимости CVE-2015-1397, CVE-2015-1398 и CVE-2015-1399.
Он используется злоумышленниками для организации DDoS атак, способен собирать доступную информацию о сервере, в том числе логины и пароли пользователей. Также вирус рассылает email сообщения с угрозой DDoS атаки и требует выкуп.
10. Linux.Sshcrack
Эта вредоносная программа пытается заразить как можно большее количество устройств путем перебора паролей ssh. Когда программа получает доступ к новому компьютеру, она запускает на нем 200 потоков, выбирает случайный адрес и пытается перебрать ssh пароль для него. Перебор осуществляется по словарю, в котором есть более 10000 значений.
11. Linux.Rekoobe
Этот простой вирус для Linux был обнаружен в ноябре 2015. Он способен выполняться на машинах с архитектурой x86 и x64, хотя изначально был разработан только для SPARC. Вирус распространяется путем социальной инженерии, и может даль злоумышленнику доступ к вашему компьютеру, а также способен загружать на ваш компьютер различные файлы и передавать команды интерпретатору команд linux.
12. Linux.Ellipsis
Этот вирус создает на инфицированном сервере или компьютере с операционной системой Linux прокси-сервер, с помощью которого злоумышленник может делать нужные ему действия в сети и оставаться незамеченным. Вирус распространяется путем перебора логина и пароля к службе удаленного доступа - ssh.
В процессе работы вирус отключает iptables и мешающие ему программы, ведение логов. А также передает контроль над вашим компьютером злоумышленникам.
13. Linux.Ekoms
Этот вирус под Linux передает злоумышленникам снимки вашего экрана каждые 30 секунд. Также может загружать на сервер содержимое папки /tmp. Кроме снимков экрана, вирус может записывать звук. Заражение машины, как и во многих других способах выполняется путем социальной инженерии.
Выводы
Как видите, вирусы и операционные системы linux, вещи все же совместимые. За последнее время их появилось очень достаточно много. Другое дело, что они ориентированны, либо на уязвимые и не обновляемые системы, IoT устройства, или социальную инженерию. Это не повод ставить антивирус, но это не значит что нужно терять бдительность и расслабляться. Не забывайте обновлять свою систему вовремя, особенно если у вас есть сервер.
необходимо зарегистрироваться,
для того что бы оставить комментарий
Viber, WhatsApp, Telegram: +380 (97) 33-55-1-88 (24/365)
На ежегодной конференции LinuxCon в 2015 году создатель ядра GNU/Linux Линус Торвальдс поделился своим мнением по поводу безопасности системы. Он подчеркнул необходимость смягчения эффекта от наличия тех или иных багов грамотной защитой, чтобы при нарушении работы одного компонента следующий слой перекрывал проблему.
В этом материале мы постараемся раскрыть эту тему с практической точки зрения:
/ фото Dave AllenCC
- начнём с предварительной настройки и рекомендаций по выбору и установке дистрибутивов Linux;
- затем расскажем о простом и действенном пункте защиты — обновлении системы безопасности;
- далее рассмотрим, как настроить ограничения для программ и пользователей;
- как обезопасить соединение с сервером через SSH;
- приведём примеры настройки firewall и ограничения нежелательного трафика;
- в заключительной части объясним, как отключить ненужные программы и сервисы, как дополнительно оградить серверы от злоумышленников.
Позаботиться о безопасности системы нужно ещё перед установкой Linux. Вот набор рекомендаций для настройки компьютера, которые стоит учесть и выполнить до установки операционной системы:
- Загрузка в режиме UEFI (не legacy BIOS – о нем подраздел ниже)
- Установить пароль на настройку UEFI
- Активировать режим SecureBoot
- Установить пароль на уровне UEFI для загрузки системы
Скорее всего, вы выберете популярные дистрибутивы — Fedora, Ubuntu, Arch, Debian, или другие близкие ответвления. В любом случае, вам нужно учитывать обязательное наличие этих функций:
- Поддержка принудительного (MAC) и ролевого контроля доступа (RBAC): SELinux/AppArmor/GrSecurity
- Публикация бюллетеней безопасности
- Регулярный выпуск обновлений безопасности
- Криптографическая верификация пакетов
- Поддержка UEFI и SecureBoot
- Поддержка полного нативного шифрования диска
Рекомендации по установке дистрибутивов
Все дистрибутивы отличаются, но существуют моменты, на которые обязательно стоит обратить внимание и выполнить:
- Использовать полное шифрование диска (LUKS) с надёжной ключевой фразой
- Процесс подкачки страниц должен быть зашифрован
- Установить пароль для редактирования boot-загрузчика
- Надёжный пароль на root-доступ
- Использовать аккаунт без привилегий, относящийся к группе администраторов
- Установить для пользователя надёжный пароль, отличный от пароля на root
Один из основных способов обеспечить безопасность операционной системы — обновлять программное обеспечение. Обновления часто исправляют найденные баги и критические уязвимости.
В случае с серверными системами есть риск возникновения сбоев во время обновления, но, по нашему мнению, проблемы можно свести к минимуму, если автоматически устанавливать только обновление безопасности.
Автообновление работает исключительно для установленных из репозиториев, а не скомпилированных самостоятельно пакетов:
- В Debian/Ubuntu для обновлений используется пакет unattended upgrades
- В CentOS для автообновления используется yum-cron
- В Fedora для этих целей есть dnf-automatic
Для обновления используйте любой из доступных RPM-менеджеров пакетов командами:
Linux можно настроить на отправку оповещений о новых обновлениях по электронной почте.
Также для поддержания безопасности в ядре Linux есть защитные расширения, например, SELinux. Такое расширение поможет сберечь систему от неправильно настроенных или опасных программ.
SELinux — это гибкая система принудительного контроля доступа, которая может работать одновременно с избирательной системой контроля доступа. Запущенные программы получают права на доступ к файлам, сокетам и прочим процессам, и SELinux устанавливает ограничения так, чтобы вредные приложения не смогли сломать систему.
Следующий после обновления способ защиты — ограничить доступ к внешним сервисам. Для этого нужно отредактировать файлы /etc/hosts.allow и /etc/hosts.deny.
Вот пример того, как ограничить доступ к telnet и ftp:
В файле /etc/hosts.allow:
Пример сверху позволит выполнять telnet и ftp соединения любому хосту в IP-классах 123.12.41.* и 126.27.18.*, а также хосту с доменами mydomain.name и another.name.
Далее в файле /etc/hosts.deny':
Добавление пользователя с ограниченными правами
Мы не рекомендуем подключаться к серверу от имени пользователя root — он имеет права на выполнение любых команд, даже критических для системы. Поэтому лучше создать пользователя с ограниченными правами и работать через него. Администрирование можно выполнять через sudo (substitute user and do) — это временное повышение прав до уровня администратора.
Как создать нового пользователя:
В Debian и Ubuntu:
Создайте пользователя, заменив administrator на желаемое имя и укажите пароль в ответ на соответствующий запрос. Вводимые символы пароля не отображаются в командной строке:
Добавьте пользователя в группу sudo:
Теперь вы можете использовать префикс sudo при выполнении команд, требующих прав администратора, например:
В CentOS и Fedora:
Создайте пользователя, заменив administrator на желаемое имя, и создайте пароль для его аккаунта:
Добавьте пользователя в группу wheel для передачи ему прав sudo:
Установите период устаревания паролей командой chage:
Отключить устаревание паролей можно командой:
Узнать, когда пароль пользователя устареет:
Также вы можете отредактировать поля в файле /etc/shadow:
- Minimum_days: Минимальное количество дней до истечения действия пароля.
- Maximum_days: Максимальное количество дней до истечения пароля.
- Warn: Количество дней перед истечением, когда пользователь будет предупреждён о приближающемся дне смены.
- Expire: Точная дата истечения действия логина.
Также стоит ограничить переиспользование старых паролей в модуле pam_unix.so и установить предельное количество неудачных попыток входа пользователя.
Чтобы узнать количество неудачных попыток входа:
Разблокировать аккаунт после неудачного входа:
Для блокирования и разблокирования аккаунтов можно использовать команду passwd:
Убедиться, что у всех пользователей установлены пароли, можно командой:
Заблокировать пользователей без паролей:
Проследите, чтобы параметр UID был установлен на 0 только для root-аккаунта. Введите эту команду, чтобы посмотреть всех пользователей с равному 0 UID.
Вы должны увидеть только:
Если появятся и другие строки, то проверьте, устанавливали ли вы для них UID на 0, ненужные строки удалите.
После установки паролей стоит убедиться, что все пользователи имеют доступ, соответствующий их рангу и ответственности. В Linux можно устанавливать права доступа на файлы и директории. Так появляется возможность создавать и контролировать различные уровни доступа для разных пользователей.
Linux основана на работе с несколькими пользователями, поэтому каждый файл принадлежит одному конкретному пользователю. Даже если сервер администрирует один человек, для различных программ создаются несколько аккаунтов.
Просмотреть пользователей в системе можно командой:
Файл /etc/passwd содержит строку для каждого пользователя операционной системы. Под сервисы и приложения могут создаваться отдельные пользователи, которые также будут присутствовать в этом файле.
Помимо отдельных аккаунтов существует категория доступа для групп. Каждый файл принадлежит одной группе. Один пользователь может принадлежать к нескольким группам.
Посмотреть группы, к которым принадлежит ваш аккаунт, можно командой:
Вывести список всех групп в системе, где первое поле означает название группы:
Для категорий пользователей есть возможность устанавливать типы доступа. Обычно это права на запуск, чтение и изменение файла. В Linux типы доступа помечаются с помощью двух видов нотаций: алфавитной и восьмеричной.
В алфавитной нотации разрешения отмечены буквами:
В восьмеричной нотации уровень доступа к файлам определяется числами от 0 до 7, где 0 означает отсутствие доступа, а 7 означает полный доступ на изменение, чтение и выполнение:
Для подключения к хосту по SSH обычно используется аутентификация по паролю. Мы рекомендуем более безопасный способ — вход по паре криптографических ключей. В таком случае закрытый ключ используется вместо пароля, что серьёзно усложнит подбор грубой силой (brute-force).
Для примера создадим пару ключей. Действия нужно выполнять на локальном компьютере, а не на удалённом сервере. В процессе создания ключей вы можете указать пароль для доступа к ним. Если оставите это поле пустым, то не сможете использовать созданные ключи до сохранения их в keychain-менеджер компьютера.
Если вы уже создавали RSA ключи ранее, то пропустите команду генерации. Для проверки cуществующих ключей запустите:
Для генерации новых ключей:
Загрузка публичного ключа на сервер
Замените administrator на имя владельца ключа, а 1.1.1.1 на ip-адрес вашего сервера. С локального компьютера введите:
Чтобы проверить соединение, отключитесь и заново подключитесь к серверу — вход должен происходить по созданным ключам.
Вы можете запретить подключаться через SSH от имени root-пользователя, а для получения прав администратора использовать sudo в начале команды. На сервере в файле /etc/ssh/sshd_config нужно найти параметр PermitRootLogin и установить его значение на no.
Вы также можете запретить SSH-подключение по вводу пароля, чтобы все пользователи использовали ключи. В файле /etc/ssh/sshd_config укажите для параметра PasswordAuthentification значение no. Если этой строки нет или она закомментирована, то соответственно добавьте или разкомментируйте её.
В Debian или Ubuntu можно ввести:
Подключение можно также дополнительно обезопасить с помощью двухфакторной аутентификации.
Недавно была обнаружена новая уязвимость, позволяющая проводить DDoS-атаки на сервера под управлением Linux. Баг в ядре системы появился с версии 3.6 в конце 2012 года. Уязвимость даёт возможность хакерам внедрять вирусы в файлы загрузки, веб-страницы и раскрывать Tor-соединения, причём для взлома не нужно прилагать много усилий — сработает метод IP-спуфинга.
Максимум вреда для зашифрованных соединений HTTPS или SSH — прерывание соединения, а вот в незащищённый трафик злоумышленник может поместить новое содержимое, в том числе вредоносные программы. Для защиты от подобных атак подойдёт firewall.
Блокировать доступ с помощью Firewall
Firewall — это один из самых важных инструментов блокирования нежелательного входящего трафика. Мы рекомендуем пропускать только действительно нужный трафик и полностью запретить весь остальной.
Для фильтрации пакетов в большинстве дистрибутивов Linux есть контроллер iptables. Обычно им пользуются опытные пользователи, а для упрощённой настройки можно использовать утилиты UFW в Debian/Ubuntu или FirewallD в Fedora.
Специалисты из Университета Виргинии рекомендуют отключить все сервисы, которые вы не используете. Некоторые фоновые процессы установлены на автозагрузку и работают до отключения системы. Для настройки этих программ нужно проверить скрипты инициализации. Запуск сервисов может осуществляться через inetd или xinetd.
Если система использует xinetd, то её конфигурация будет в директории /etc/xinetd.d. Каждый файл директории определяет сервис, который можно отключить, указав пункт disable = yes, как в этом примере:
Также стоит проверить постоянные процессы, которые не управляются inetd или xinetd. Настроить скрипты запуска можно в директориях /etc/init.d или /etc/inittab. После проделанных изменений запустите команду под root-аккаунтом.
Невозможно полностью защититься от атак злоумышленника с физическим доступом к серверу. Поэтому необходимо обезопасить помещение, где расположена ваша система. Дата-центры серьёзно следят за безопасностью, ограничивают доступ к серверам, устанавливают камеры слежения и назначают постоянную охрану.
Для входа в дата-центр все посетители должны проходить определенные этапы аутентификации. Также настоятельно рекомендуется использовать датчики движения во всех помещениях центра.
Система неавторизованного доступа или IDS собирает данные о конфигурации системы и файлах и в дальнейшем сравнивает эти данные с новыми изменениями, чтобы определить, вредны ли они для системы.
Например, инструменты Tripwire и Aide собирают базу данных о системных файлах и защищают их с помощью набора ключей. Psad используется для отслеживания подозрительной активности с помощью отчётов firewall.
Bro создан для мониторинга сети, отслеживания подозрительных схем действия, сбора статистики, выполнения системных команд и генерация оповещений. RKHunter можно использовать для защиты от вирусов, чаще всего руткитов. Эта утилита проверяет вашу систему по базе известных уязвимостей и может определять небезопасные настройки в приложениях.
Перечисленные выше инструменты и настройки помогут вам частично защитить систему, но безопасность зависит от вашего поведения и понимания ситуации. Без внимательности, осторожности и постоянного самообучения все защитные меры могут не сработать.
Читайте также: