Linux Hardenining: советы по защите вашего дистрибутива и повышению его безопасности

Укрепление Linux двумя смокингами, одним беззащитным и одним в броне

На сайте опубликовано много статей. Дистрибутивы Linux более безопасные, такие как TAILS (который обеспечивает вашу конфиденциальность и анонимность в сети), Whonix (Linux для параноиков безопасности) и другие дистрибутивы, направленные на обеспечение безопасности. Но, конечно, не все пользователи хотят использовать эти дистрибутивы. Поэтому в этой статье мы дадим серию рекомендаций для «Укрепление Linux«То есть сделать ваш дистрибутив (каким бы он ни был) более безопасным.

Red Hat, SUSE, CentOS, openSUSE, Ubuntu, Debian, Arch Linux, Linux Mint,… какая разница. Любое распространение может быть безопасным как самый безопасный, если вы знаете его досконально и знаете, как защитить себя от угрожающих вам опасностей. И для этого действия могут быть предприняты на многих уровнях, не только на уровне программного обеспечения, но и на уровне оборудования.

Общие безопасные кролики:

Цепь аппаратной безопасности с замком

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

  • Не загружайте личные или конфиденциальные данные в облако.. Облако, независимо от того, бесплатное оно или нет и является ли оно более или менее безопасным, является хорошим инструментом для удаления ваших данных, где бы вы ни находились. Но старайтесь не загружать данные, которыми вы не хотите «делиться» со сторонними наблюдателями. Этот тип более конфиденциальных данных должен храниться на более личном носителе, например на SD-карте или флеш-накопителе.
  • Например, если вы используете компьютер для доступа в Интернет и работаете с важными данными, представьте, что вы присоединились к увлечению BYOD и забрали домой некоторые бизнес-данные. Что ж, в таких обстоятельствах не работаю онлайн, попробуйте отключиться (почему вы хотите подключиться, чтобы работать например с LibreOffice, редактируя текст?). Не забывайте, что отключенный компьютер - самый безопасный.
  • В связи с вышеизложенным, не оставляйте важные данные на локальном жестком диске при работе в сети. Я рекомендую вам иметь внешний жесткий диск или другой тип памяти (карты памяти, флэш-накопители и т. Д.), В которых вы храните эту информацию. Таким образом, мы поставим барьер между нашим подключенным оборудованием и той «неподключенной» памятью, где находятся важные данные.
  • Сделайте резервные копии данных, которые вы считаете интересными или не хотите терять. Когда они используют уязвимости для входа в ваш компьютер и повышения привилегий, злоумышленник сможет стереть любые данные или манипулировать ими без каких-либо препятствий. Поэтому лучше иметь резервную копию.
  • Не оставляйте данные о своих слабых местах на форумах или комментарии в сети. Если, например, у вас есть проблемы с безопасностью на вашем компьютере и на нем есть открытые порты, которые вы хотите закрыть, не оставляйте проблему на форуме для получения помощи, потому что ее можно использовать против вас. Кто-то с плохими намерениями может использовать эту информацию для поиска своей идеальной жертвы. Лучше найти проверенного специалиста, который поможет вам их решить. Компании также часто размещают в Интернете рекламные объявления, такие как «Я ищу специалиста по ИТ-безопасности» или «Требуется персонал для отдела безопасности». Это может указывать на возможную слабость в указанной компании, и киберпреступник может использовать эти типы страниц для поиска легких жертв ... Вам также нехорошо оставлять информацию об используемой вами системе и ее версиях, кто-то может использовать эксплойты для использования уязвимости этой версии. Короче говоря, чем больше нападающий не подозревает о вас, тем труднее ему будет атаковать. Имейте в виду, что злоумышленники обычно перед атакой выполняют процесс, называемый «сбором информации», и он заключается в сборе информации о жертве, которая может быть использована против них.
  • Обновляйте свое оборудование Помните о последних обновлениях и патчах, которые во многих случаях не только улучшают функциональные возможности, но и исправляют ошибки и уязвимости, чтобы они не использовались.
  • Используйте надежные пароли. Никогда не вводите имена, которые есть в словаре, или пароли, например, 12345, так как с помощью словарных атак их можно быстро удалить. Также не оставляйте пароли по умолчанию, так как они легко обнаруживаются. Также не используйте дату рождения, имена родственников, домашних животных или о своих вкусах. Такие пароли легко угадать с помощью социальной инженерии. Лучше всего использовать длинный пароль с цифрами, прописными и строчными буквами и символами. Не используйте мастер-пароли для всего, то есть, если у вас есть учетная запись электронной почты и сеанс операционной системы, не используйте одинаковые пароли для обоих. Это то, что в Windows 8 запутали до конца, поскольку пароль для входа такой же, как и у вашей учетной записи Hotmail / Outlook. Надежный пароль имеет тип: «auite3YUQK && w-». Грубой силой это может быть достигнуто, но время, потраченное на это, того не стоит ...
  • Не устанавливайте пакеты из неизвестных источников и если возможно. Используйте пакеты с исходным кодом с официального сайта программы, которую вы хотите установить. Если пакеты сомнительны, я рекомендую вам использовать среду песочницы, такую ​​как Glimpse. Вы добьетесь того, чтобы все приложения, которые вы устанавливаете в Glimpse, могли нормально работать, но при попытке чтения или записи данных они отражаются только в среде песочницы, изолируя вашу систему от проблем.
  • использование системные привилегии как можно меньше. И когда вам нужны привилегии для задачи, рекомендуется использовать «sudo» предпочтительно перед «su».

Другие чуть более технические советы:

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

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

Пакеты безопасности в Linux и Firewall / UTM:

использование SELinux или AppArmor чтобы укрепить ваш Linux. Эти системы несколько сложны, но вы можете увидеть руководства, которые вам очень помогут. AppArmor может ограничить даже уязвимые приложения от эксплойтов и других нежелательных действий процессов. AppArmor был включен в ядро ​​Linux начиная с версии 2.6.36. Его файл конфигурации хранится в /etc/apparmor.d.

Закройте все порты, которые вы не используете часто. Было бы интересно, даже если бы у вас был физический брандмауэр, это лучший вариант. Другой вариант - выделить старое или неиспользуемое оборудование для реализации UTM или брандмауэра для вашей домашней сети (вы можете использовать такие дистрибутивы, как IPCop, m0n0wall, ...). Вы также можете настроить iptables, чтобы отфильтровать то, что вам не нужно. Чтобы закрыть их, вы можете использовать «iptables / netfilter», который интегрирует само ядро ​​Linux. Я рекомендую вам обратиться к руководствам по netfilter и iptables, поскольку они довольно сложны и не могут быть объяснены в статье. Вы можете увидеть открытые порты, набрав в терминале:

netstat -nap

Физическая защита нашего оборудования:

Вы также можете физически защитить свой компьютер на случай, если вы не доверяете кому-то из окружающих или вам придется оставить свой компьютер где-нибудь в пределах досягаемости других людей. Для этого вы можете отключить загрузку другими способами, кроме жесткого диска, в BIOS / UEFI и паролем защитить BIOS / UEFI, чтобы они не могли изменить его без него. Это помешает кому-либо взять загрузочный USB или внешний жесткий диск с установленной операционной системой и получить доступ к вашим данным с него, даже не входя в ваш дистрибутив. Для его защиты войдите в BIOS / UEFI, в разделе «Безопасность» можно добавить пароль.

Вы можете сделать то же самое с GRUB, защита паролем:

grub-mkpasswd-pbkdf2

Введите пароль для GRUB вы хотите, и он будет закодирован в SHA512. Затем скопируйте зашифрованный пароль (тот, который отображается в «Ваш PBKDF2 есть») для дальнейшего использования:

sudo nano /boot/grub/grub.cfg

Создайте пользователя в начале и поставьте зашифрованный пароль. Например, если ранее скопированный пароль был «grub.pbkdf2.sha512.10000.58AA8513IEH723»:

set superusers=”isaac”
password_pbkdf2 isaac grub.pbkdf2.sha512.10000.58AA8513IEH723

И сохраняем изменения ...

Меньше программного обеспечения = больше безопасности:

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

Безопасное удаление информации:

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

dd if=/dev/zeo of=/dev/sdax bs=1M
dd if=/dev/unrandom of=/dev/sdax bs=1M

Если то, что вы хотите удалить определенный файл навсегда, можно использовать «лоскуток». Например, представьте, что вы хотите удалить файл с именем passwords.txt, в котором записаны системные пароли. Мы можем использовать уничтожение и перезапись, например, 26 раз выше, чтобы гарантировать, что его нельзя будет восстановить после удаления:

shred -u -z -n 26 contraseñas.txt

Существуют такие инструменты, как HardWipe, Eraser или Secure Delete, которые вы можете установить на «Стереть» (удалить навсегда) воспоминания, Разделы подкачки, оперативная память и т. Д.

Учетные записи и пароли пользователей:

Улучшить систему паролей с такими инструментами, как S / KEY или SecurID, для создания схемы динамического пароля. Убедитесь, что в каталоге / etc / passwd нет зашифрованного пароля. Нам лучше использовать / etc / shadow. Для этого вы можете использовать «pwconv» и «grpconv» для создания новых пользователей и групп, но со скрытым паролем. Еще одна интересная вещь - отредактировать файл / etc / default / passwd, чтобы срок действия ваших паролей истекал и вынуждали вас периодически их обновлять. Поэтому, если они получат пароль, он не будет длиться вечно, поскольку вы будете часто его менять. С помощью файла /etc/login.defs вы также можете укрепить систему паролей. Отредактируйте его, ища записи PASS_MAX_DAYS и PASS_MIN_DAYS, чтобы указать минимальное и максимальное количество дней, в течение которых пароль может длиться до истечения срока действия. PASS_WARN_AGE отображает сообщение о том, что срок действия пароля истечет через X дней. Советую посмотреть мануал по этому файлу, так как записей очень много.

Лас- аккаунты, которые не используются и они присутствуют в / etc / passwd, у них должна быть переменная Shell / bin / false. Если это другой, поменяйте его на этот. Таким образом, их нельзя использовать для получения оболочки. Также интересно изменить переменную PATH в нашем терминале, чтобы текущий каталог "." Не отображался. То есть он должен измениться с «./user/local/sbin/:/usr/local/bin:/usr/bin:/bin» на «/ user / local / sbin /: / usr / local / bin. : / usr / bin: / bin ».

Рекомендуется использовать Kerberos как метод сетевой аутентификации.

PAM (подключаемый модуль аутентификации) это что-то вроде Microsoft Active Directory. Он обеспечивает общую гибкую схему аутентификации с очевидными преимуществами. Вы можете заглянуть в каталог /etc/pam.d/ и найти информацию в Интернете. Здесь довольно подробно объяснять ...

Следите за привилегиями из разных каталогов. Например, / root должен принадлежать пользователю root и группе root с правами «drwx - - - - - -». Вы можете найти в Интернете информацию о том, какие разрешения должен иметь каждый каталог в дереве каталогов Linux. Другая конфигурация может быть опасной.

Зашифруйте свои данные:

Шифрует содержимое каталога или раздела где у вас есть соответствующая информация. Для этого вы можете использовать LUKS или eCryptFS. Например, представьте, что мы хотим зашифровать / home пользователя с именем isaac:

sudo apt-get install ecryptfs-utils
ecryptfs-setup-private
ecryptfs-migrate-home -u isaac

После вышеуказанного укажите кодовую фразу или пароль, когда вас спросят ...

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

mkdir /home/isaac/privado
chmod 700 /home/isaac/privado
mount -t ecryptfs /home/isaa/privado

Он задаст нам вопросы о различных параметрах. Во-первых, это позволит нам выбирать между паролями, OpenSSL, ... и мы должны выбрать 1, то есть «парольную фразу». Затем мы вводим пароль, который хотим дважды проверить. После этого мы выбираем желаемый тип шифрования (AES, Blowfish, DES3, CAST, ...). Я бы выбрал первый, AES, а затем мы введем байтовый тип ключа (16, 32 или 64). И, наконец, на последний вопрос мы отвечаем утвердительно. Теперь вы можете монтировать и размонтировать этот каталог, чтобы использовать его.

Если вы просто хотите зашифровать определенные файлы, вы можете использовать scrypt или PGP. Например, файл с именем passwords.txt, вы можете использовать следующие команды для шифрования и дешифрования соответственно (в обоих случаях он запросит пароль):

scrypt <contraseñas.txt>contraseñas.crypt
scrypt <contraseñas.crypt>contraseñas.txt

Двухэтапная проверка с помощью Google Authenticator:

Google AUthenticator в терминале Ubutnu

добавляет Двухэтапная проверка в вашей системе. Таким образом, даже если ваш пароль будет украден, у них не будет доступа к вашей системе. Например, для Ubuntu и его среды Unity мы можем использовать LightDM, но принципы можно экспортировать в другие дистрибутивы. Для этого вам понадобится планшет или смартфон, в нем необходимо установить Google Authenticator из Play Store. Затем на ПК первым делом нужно установить Google Authenticator PAM и запустить его:

sudo apt-get install libpam-google-authenticator
google-authenticator

Когда вы спрашиваете нас, будут ли ключи подтверждения основаны на времени, мы отвечаем утвердительно с помощью и. Теперь он показывает нам QR-код, который нужно распознать с помощью Google Authenticator Другой вариант - ввести секретный ключ прямо из приложения со своего смартфона (он отображается на ПК как «Ваш новый секрет:»). И он даст нам серию кодов на случай, если мы не возьмем с собой смартфон, и было бы хорошо запомнить их на случай, если мухи. И мы продолжаем отвечать в соответствии с нашими предпочтениями.

Теперь мы открываем (с помощью nano, gedit или вашего любимого текстового редактора) Файл конфигурации с:

sudo gedit /etc/pam.d/lightdm

И добавляем строку:

auth required pam_google_authenticator.so nullok

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

Если однажды вы хотите удалить двухэтапную аутентификацию, вам просто нужно удалить строку "auth required pam_google_authenticator.so nullok" из файла /etc/pam.d/lightdm
Помните, здравый смысл и осторожность - лучший союзник. Среда GNU / Linux безопасна, но любой компьютер, подключенный к сети, больше не защищен, независимо от того, насколько хороша операционная система, которую вы используете. Если у вас есть вопросы, проблемы или предложения, вы можете оставить свой комментарий. Я надеюсь, что это помогает…


Оставьте свой комментарий

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

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Нурия сказал

    Привет хорошо, смотрю комментирую; Я установил Google-Authenticator на Raspbian без каких-либо проблем, и мобильное приложение хорошо регистрируется и предоставляет мне код, но при перезапуске малины и перезапуске системы он не просит меня ввести двойной код аутентификации Это только кажется мне ввести логин и пароль.

    Большое спасибо. Приветствие.