Домой Решение проблем Опасные уязвимости Linux. Настройка сети, (сетевых карт) интерфейсов Ubuntu Секция данных только для чтения

Опасные уязвимости Linux. Настройка сети, (сетевых карт) интерфейсов Ubuntu Секция данных только для чтения

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

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

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

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

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

1. Настройка общей памяти

По умолчанию весь объем общей памяти /run/shm доступен для чтения и записи с возможностью выполнения программ. Это считается брешью в безопасности и многие эксплойты используют /run/shm для атак на запущенные сервисы. Для большинства настольных, а особенно серверных устройств рекомендуется монтировать этот файл в режиме только для чтения. Для этого нужно добавить такую строчку в /etc/fstab:

sudo vi /etc/fstab

none /run/shm tmpfs defaults,ro 0 0

Но, тем не менее, некоторые программы не будут работать, если /run/shm доступен только для чтения, одна из них - это Google Chrome. Если вы используете Google Chrome, то мы должны сохранить возможность записи, но можем запретить выполнение программ, для этого добавьте такую строчку вместо предложенной выше:

none /run/shm tmpfs rw,noexec,nosuid,nodev 0 0

2. Запретить использовать su для не администраторов

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

sudo dpkg-statoverride --update--add root sudo 4750 /bin/su

3. Защитите свой домашний каталог

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

chmod 0700 /home/имя_пользователя

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

chmod 0750 /home/имя_пользователя

Теперь безопасность Ubuntu 16.04, а особенно ваших личных данных будет немного выше.

4. Отключите вход по SSH от имени root

По умолчанию в Ubuntu вы можете войти в систему по SSH от имени суперпользователя Несмотря на то, что вы устанавливаете пароль для пользователя root, это может быть потенциально опасно, поскольку если пароль очень простой, то злоумышленник сможет его перебрать и получить полный контроль над компьютером. Возможно, в вашей системе не установлена служба sshd. Чтобы проверить выполните:

Если вы получите сообщение connection refused, то это будет значить, что SSH сервер не установлен и вы можете пропустить этот шаг. Но если он установлен, то его нужно настроить с помощью конфигурационного файла /etc/ssh/sshd_config. Откройте этот файл и замените строку:

PermitRootLogin yes

PermitRootLogin no

Готово, теперь по ssh в вашу систему будет сложнее прорваться, но настройка безопасности в ubuntu 16.04 еще не завершена.

5. Установите фаервол

Возможно, на вашем компьютере установлен не только сервер ssh, но и служба баз данных и веб-сервер apache или nginx. Если это домашний компьютер, то, скорее всего, вы бы не хотели чтобы кто-то еще мог подключиться к вашему локальному сайту или базе данных. Чтобы это предотвратить нужно установить фаервол. В Ubuntu рекомендуется использовать gufw, так как он разработан специально для этой системы.

Для установки выполните:

sudo apt install gufw

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

6. Защита от MITM атак

Суть MITM атаки или атаки "Человек посередине" в том, что другой человек перехватывает все пакеты, которые вы передаете серверу, таким образом, может получить все ваши пароли и личные данные. Не ото всех атак подобного рода мы можем защититься, но довольно популярна в публичных локальных сетях разновидность MITM атак - ARP атака. С помощью особенностей протокола ARP злоумышленник выдает перед вашим компьютером себя за роутер и вы отправляете все свои пакеты с данными ему. От этого можно очень просто защититься с помощью утилиты TuxCut.

В официальных репозиториях программы нет, поэтому для ее установки нужно скачать пакет с GitHub:

wget https://github.com/a-atalla/tuxcut/releases/download/6.1/tuxcut_6.1_amd64.deb

Затем установите полученный пакет:

sudo apt install tuxcut_6.1_amd64.deb

Перед тем, как запускать программу, запустите ее сервис:

sudo systemctl start tuxcutd

Главное окно утилиты выглядит вот так:

Здесь отображены IP адреса всех пользователей, подключенных к сети, а также соответствующий каждому из них MAC адрес. Если отметить галочку Protection Mode, то программа будет защищать от ARP атак. Вы можете использовать ее в публичных сетях, например, в общественном wifi, где опасаетесь за свою безопасность.

Выводы

Ну вот и все, теперь настройка безопасности Ubuntu 16.04 завершена и ваша система стала намного безопаснее. Мы перекрыли самые распространенные векторы атак и методов проникновения в систему используемых хакерами. Если вы знаете другие полезные способы улучшить безопасность в Ubuntu пишите в комментариях!

На ежегодной конференции LinuxCon в 2015 году создатель ядра GNU/Linux Линус Торвальдс поделился своим мнением по поводу безопасности системы. Он подчеркнул необходимость смягчения эффекта от наличия тех или иных багов грамотной защитой, чтобы при нарушении работы одного компонента следующий слой перекрывал проблему.

В этом материале мы постараемся раскрыть эту тему с практической точки зрения:

7. Установить сетевые экраны

Недавно была новая уязвимость, позволяющая проводить DDoS-атаки на сервера под управлением Linux. Баг в ядре системы появился с версии 3.6 в конце 2012 года. Уязвимость даёт возможность хакерам внедрять вирусы в файлы загрузки, веб-страницы и раскрывать Tor-соединения, причём для взлома не нужно прилагать много усилий - сработает метод IP-спуфинга.

Максимум вреда для зашифрованных соединений HTTPS или SSH - прерывание соединения, а вот в незащищённый трафик злоумышленник может поместить новое содержимое, в том числе вредоносные программы. Для защиты от подобных атак подойдёт firewall.

Блокировать доступ с помощью Firewall

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

Для фильтрации пакетов в большинстве дистрибутивов Linux есть контроллер iptables. Обычно им пользуются опытные пользователи, а для упрощённой настройки можно использовать утилиты UFW в Debian/Ubuntu или FirewallD в Fedora.

8. Отключить ненужные сервисы

Специалисты из Университета Виргинии рекомендуют отключить все сервисы, которые вы не используете. Некоторые фоновые процессы установлены на автозагрузку и работают до отключения системы. Для настройки этих программ нужно проверить скрипты инициализации. Запуск сервисов может осуществляться через inetd или xinetd.

Если ваша система настроена через inetd, то в файле /etc/inetd.conf вы сможете отредактировать список фоновых программ «демонов», для отключения загрузки сервиса достаточно поставить в начале строки знак «#», превратив её из исполняемой в комментарий.

Если система использует xinetd, то её конфигурация будет в директории /etc/xinetd.d. Каждый файл директории определяет сервис, который можно отключить, указав пункт disable = yes, как в этом примере:

Service finger { socket_type = stream wait = no user = nobody server = /usr/sbin/in.fingerd disable = yes }
Также стоит проверить постоянные процессы, которые не управляются inetd или xinetd. Настроить скрипты запуска можно в директориях /etc/init.d или /etc/inittab. После проделанных изменений запустите команду под root-аккаунтом.

/etc/rc.d/init.d/inet restart

9. Защитить сервер физически

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

Для входа в дата-центр все посетители должны проходить определенные этапы аутентификации. Также настоятельно рекомендуется использовать датчики движения во всех помещениях центра.

10. Защитить сервер от неавторизованного доступа

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

Например, инструменты Tripwire и Aide собирают базу данных о системных файлах и защищают их с помощью набора ключей. Psad используется для отслеживания подозрительной активности с помощью отчётов firewall.

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

Заключение

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

Безусловно, можно сказать, что Linux более безопасен (защищен), чем Windows. Безопасность в Linux встроенная, а не прикрученная где то сбоку, как это реализовано в Windows. Безопасность системы Linux охватывает область от ядра до рабочего стола, но есть шансы для хакеров навредить вашему домашнему каталогу (/home).

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

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

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

Начните с основ безопасности Linux

Шагнем к основам (), которые подойдут почти к любым
дистрибутивам Linux.

Зашифруем файловую систему в Linux для более полной безопасности Linux

Пользовательские пароли не решат проблему, если вы хотите чтобы действительно никто не смог прочитать ваш домашний каталог (/home) или определенный размер байтов. Можно его так, чтобы даже пользователь с высшими привилегиями root не сможет сунуть свой нос.

Удаляйте щепетильные файлы так, чтобы их больше никто не восстановил

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

Также не стоит забывать об имеющемся в ядре Linux брандмауэре. В состав всех дистрибутивов Linux входит lptables, которая является частью ядра. Lptables позволяет фильтровать сетевые пакеты. Конечно же, в терминале можно настроить эту утилиту. Но этот способ непосилен многим, в том числе и мне. Поэтому я устанавливаю, и произвожу настройку, с такой легкостью как будто играю в игру.

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

Анонимный серфинг, скрываем свой IP — очень важно для безопасности вашей личности под ос Linux


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

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

По моему мнению, соблюдение и настройка всех этих правил обезопасит вас и ваш компьютер на 90%.

P.S. Я пользуясь облаком под названием dropbox. Храню в нем свои старые и новые, ещё не опубликованные статьи. Удобно иметь доступ к своим файлам с любой точки земли и на любом компьютере. При написании статей для сайта в текстовом редакторе, сохраняю свои текстовые документы с паролем и только после этого закачиваю на сервер dropbox. Никогда не стоит пренебрегать лишней безопасностью, которая сыграет вам только на руку.

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

Linux представляет собой свободно распространяемое ядро Unix-подобной системы, написанное Линусом Торвалдсом (1991 г., Финляндия) при помощи большого числа добровольцев со всей сети Internet. Linux обладает всеми свойствами современной Unix-системы, включая настоящую многозадачность, развитую подсистему управления памятью и сетевую подсистему. Большую часть базовых системных компонентов Linux унаследовала от проекта GNU, целью которого является создание свободной микроядерной операционной системы (ОС) с лицом Unix.

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

На сегодняшний день существует множество различных поставок Linux, дистрибутивов, которые можно разделить на дистрибутивы общего назначения и специализированные (например, Linux Router - урезанная поставка Linux для создания дешевого маршрутизатора на базе старого PC и др.). В настоящей статье под словосочетанием <ОС Linux> будем понимать дистрибутивы Linux общего назначения.

Большая часть ядра Linux написана на языке С, благодаря чему система достаточно легко переносится на различные аппаратные архитектуры. Сегодня официальное ядро Linux работает на платформе Intel (начиная с i386), Digital Alpha (64-bit), Motorolla 68k, Mips, PowerPC, Sparc, Sparc64, StrongArm. Ядро Linux способно работать на многопроцессорных SMP-системах, обеспечивая эффективное использование всех процессоров. Разработчики Linux стараются соблюдать стандарты POSIX и Open Group, обеспечивая тем самым переносимость программного обеспечения (ПО) с другими Unix-платформами.

Диапазон применения Linux очень широк: от создания спецэффектов в фильме <Титаник> Джеймса Камерона до создания фирмой Intel в ближайшем будущем Internet-терминалов на базе именно этой ОС. Конечно, одной из причин огромной популярности Linux является ее бесплатность, что, безусловно, снижает себестоимость продуктов, для создания которых она применяется. Но не только в этом дело. Главная причина ее популярности состоит в том, что это действительно мощная и надежная, многопользовательская и многозадачная ОС.

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

В настоящее время существуют два основных подхода, используемых для обеспечения безопасности ОС: над слабо защищенной ОС <навешивается> для усиления защитный экран (firewall), или firewall наряду с десятком других средств защиты интегрируется на уровне ядра системы.

Первый подход использует фирма Microsoft и это подтверждает анализ последних версий Windows NT. Разработчики Linux выбрали для себя второй подход (код firewall встроен непосредственно в ядро Linux, начиная с версии 2.0). В результате была получена мощная интегрированная система защиты. Краткому знакомству с этой системой и посвящена данная статья.

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

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

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

Атаки на уровне ОС

На уровне ОС происходит большое количество хакерских атак. Это объясняется очень просто: ведь взломав защиту ОС, злоумышленник может получить доступ к любым ресурсам сети (вплоть до баз данных).

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

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

Традиционные способы защиты, используемые в Linux

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

Предотвращение хищения компьютера и его комплектующих;

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

Прерывание работы компьютера при вскрытии корпуса;

Блокировка работы с клавиатурой и мышью.

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

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

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

Большинство методов, с помощью которых злоумышленник может получить доступ к ресурсам, требуют перезагрузки или выключения питания машины. В связи с этим нужно очень серьезно относиться к любым признакам взлома как на корпусе, так и внутри компьютера, фиксировать и анализировать все странности и несоответствия в системном журнале. При этом нужно исходить из того, что любой взломщик всегда пытается скрыть следы своего присутствия. Для просмотра системного журнала обычно достаточно проверить содержимое файлов syslog, messages, faillog и maillog в каталоге /var/log. Полезно также установить скрипт ротации журнальных файлов или демона, который сохраняет журналы на заданную глубину (в последних дистрибутивах Red Hat для этого используется пакет logrotate).

Несколько слов о локальной безопасности Linux-систем. Она обычно связана с двумя моментами: защита от локальных пользователей и защита от администратора системы. Не секрет, что получение доступа к счетам локальных пользователей - это первая задача, которую ставит перед собой злоумышленник, пытаясь проникнуть в систему. Если надежные средства локальной защиты отсутствуют, то, используя ошибки в ОС и/или неверно сконфигурированные службы, злоумышленник может легко изменить полномочия в сторону увеличения, что чревато тяжелыми последствиями. Общие правила, которые необходимо соблюдать для повышения локальной защиты состоят в следующем: предоставление минимально необходимого уровня привилегий; контроль за регистрацией всех пользователей; своевременное изъятие счетов пользователей. Нужно постоянно помнить о том, что неконтролируемые счета - идеальный плацдарм для проникновения в систему.

Необдуманные и некорректные действия администратора также представляют серьезную опасность для Linux-системы. Поэтому администратор всегда должен помнить о том, что постоянная работа со счетом суперпользователя (root) - очень опасный стиль (в качестве компромисса лучше использовать команды su или sudo). Права суперпользователя он должен использовать только для решения специфических задач, в остальных случаях рекомендуется использовать обычный пользовательский счет. В дополнение к этому при выполнении сложных команд администратор должен использовать такие режимы, которые не приведут к потере данных. И последнее: администратор не должен забывать о существовании <троянских коней>, так как программы этого типа при запуске с правами суперпользователя могут внести серьезные нарушения в систему защиты. Для исключения этого необходимо тщательно контролировать процесс установки программ на компьютере (в частности, дистрибутив RedHat предусматривает использование цифровых подписей md5 и pgp для проверки целостности rmp-файлов во время установки системы).

Защита Linux с помощью паролей

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

Защита паролей - область, в которой Linux существенно отличается от многих коммерческих версий Unix и других ОС, причем в лучшую сторону.

В большинстве современных реализаций Linux программа passwd не позволяет пользователю вводить легко разгадываемые пароли путем предупреждения о потенциальной опасности пароля (ввод пароля при этом, к сожалению, не блокируется). Для проверки устойчивости ансамбля конкретного пароля к подбору существует немало программ. Причем используются они с успехом как системными администраторами, так и взломщиками. Наиболее распространенные представители этого класса программ - Crack и John Ripper. Стоит отметить, что эти программы требуют дополнительного процессорного времени, но эта потеря вполне оправдана - замена слабых паролей значительно снижает вероятность проникновения в систему.

Linux обеспечивает защиту паролей с помощью трех основных механизмов:

1. Шифрование паролей.

2. Механизм <теневых паролей>.

3. Механизм подключаемых модулей аутентификации PAM (Pluggable Authentication Modules).

Кратко рассмотрим суть этих механизмов.

Шифрование паролей.

В Linux для шифрования паролей традиционно используется алгоритм DES. Зашифрованный пароль обычно помещается в файл /etc/passwd. При попытке пользователя зарегистрироваться в системе введенный им пароль шифруется и затем сравнивается с записью в парольном файле. При совпадении система разрешает доступ. В программе шифрования паролей используется однонаправленное шифрование (достигается за счет того, что ключом для шифрования пароля является сам пароль). К сожалению, в настоящее время алгоритм DES уязвим к атаке со стороны мощных компьютеров (использование прямого перебора или подбора в большинстве случаев приводит к отгадыванию паролей). Поэтому для Linux были разработаны дополнительно к шифрованию еще два мощных механизма защиты.

Механизм <теневых паролей>.

Суть этого механизма проста: парольный файл, даже зашифрованный, доступен только системному администратору. Для этого он помещается в файл /etc/shadow, права на чтение которого принадлежат только суперпользователям. Для реализации подобной схемы защиты в Linux используется набор программных средств Shadow Suite. В большинстве дистрибутивов Linux механизм <теневых паролей> по умолчанию не задействован (кроме, пожалуй, RedHat). Но именно Linux выгодно отличает наличие новейшего механизма, с помощью которого можно легко организовать мощную систему защиты. Это технология подключаемых модулей аутентификации (PAM).

Механизм PAM.

Модули безопасности - это набор открытых библиотек, предназначенных для выполнения набора функций (ввод пароля или проверка его подлинности). Любая программа, использующая систему защиты, может использовать PAM-модули и обеспечить в результате любой уровень безопасности. При использовании этого новейшего механизма программист концентрирует свое внимание на решении прикладной задачи. Ему не надо изобретать систему защиты, при этом также гарантируется, что он в этой системе не наставит <дыр>. Технология PAM позволяет реализовать некоторые новые возможности при создании системы защиты: в модулях безопасности применяются нестандартные процедуры шифрования (MD5 и им подобные); установка ограничений на использование пользователями системных ресурсов (предотвращение инициализации атак типа <Отказ в обслуживании>); установка разрешения отдельным пользователям регистрации только в фиксированные промежутки времени и только с определенных терминалов или узлов.

Дополнительные средства защиты Linux

Защита данных.

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

Безусловно, что для повышения конфиденциальности полезно хранить данные на дисках в зашифрованном виде. Для обеспечения сквозного шифрования всей файловой системы в Linux используются криптографические файловые системы CFS (Cryptographic File System) и TCFS (Transparent Cryptographic File System).

Защита дисплеев.

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

Программа xhost (позволяет указать, каким узлам разрешен доступ к вашему дисплею);

Регистрация с использованием xdm (x display manager) - для каждого пользователя генерируется 128-битный ключ (cookie);

Организация обмена с помощью защищенной оболочки ssh (secure shell) - в сети исключается поток незашифрованных данных.

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

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

Защищенная оболочка ssh для предотвращения атак, в которых для получения паролей используются анализаторы протоколов;

Программы tcp_wrapper для ограничения доступа к различным службам вашего компьютера;

Сетевые сканеры для выявления уязвимых мест компьютера;

Демон tcpd для обнаружения попыток сканирования портов со стороны злоумышленников (в дополнение к этому средству полезно регулярно просматривать файлы системного журнала);

Системашифрования PGP (Pretty Good Privacy);

Программа stelnet (защищенная версия хорошо известной программы telnet);

Программа qmail (защищенная доставка электронной почты);

Программа ipfwadm для настройки межсетевых экранов (firewall);

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

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

Заключение

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

Несмотря на оголтелую пропаганду решений <от Microsoft>, ОС семейства Unix, к числу которых относится и Linux, получают все большее распространение и захватывают те области применения микроЭВМ, для которых важна надежность системы в целом, означающая не только безотказность работы в течение длительного времени (месяцы и годы), но также и защиту от несанкционированного доступа.

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

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

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

Существует множество видов подключений к интернету, но в этой статье будут рассмотрены самые популярные: проводная сеть, PPPoE и DIAL-UP. Также будет рассказано про отдельную настройку DNS-сервера.

Подготовительные мероприятия

Перед тем как приступать к установке соединения, стоит убедиться, что ваша система готова к этому. Сразу же надо уточнить, что команды, выполняемые в «Терминале» , делятся на два вида: требующие права пользователя (перед ними будет стоять символ $ ) и требующие права суперпользователя (в начале стоит символ # ). Обращайте на это внимание, так как без нужных прав большинство команд попросту откажутся выполняться. Также стоит уточнить, что сами символы в «Терминал» вписывать не нужно.

Вам необходимо будет выполнить ряд пунктов:


Помимо прочего, нужно обязательно знать наименование сетевого адаптера. Чтобы это выяснить, введите в «Терминале» эту строку:

$ sudo lshw -C network

По итогу вы увидите примерно следующее:

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

Примечание: если в вашем компьютере установлено несколько сетевых адаптеров, то они будут пронумерованы соответственно (enp3s0, enp3s1, enp3s2 и так далее). Определитесь, с каким вы будете работать, и используйте его в последующих настройках.

Способ 1: Терминал

«Терминал» — это универсальное средство по настройке всего в Ubuntu. С его помощью можно будет установить интернет-соединение всех типов, о чем и пойдет сейчас речь.

Настройка проводной сети

Настройка проводной сети в Ubuntu выполняется путем внесения новых параметров в конфигурационный файл «interfaces» . Поэтому для начала нужно открыть этот самый файл:

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

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

Для начала разберемся с динамическим IP - его настройка выполняется проще. После введения предыдущей команды, в открывшемся файле укажите следующие переменные:

iface [имя интерфейса] inet dhcp
auto [имя интерфейса]

  • iface [имя интерфейса] inet dhcp - ссылается на выбранный интерфейс, который имеет динамический IP-адрес (dhcp);
  • auto [имя интерфейса] - при входе в систему делает автоматическое подключение к указанному интерфейсу со всеми заданными параметрами.

После ввода у вас должно получиться примерно так:

Статический IP настраивать несколько сложнее. Главное - знать все переменные. В конфигурационном файле вам нужно ввести следующие строки:

iface [имя интерфейса] inet static
address [адрес]
netmask [адрес]
gateway [адрес]
dns-nameservers [адрес]
auto [имя интерфейса]


После ввода всех параметров вы увидите примерно следующее:

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

Помимо прочего, в ОС Ubuntu можно совершить временную настройку подключения к интернету. Отличается она тем, что указанные данные никак не изменяют конфигурационные файлы, а после перезапуска ПК все ранее указанные настройки сбросятся. Если вы впервые пытаетесь установить проводное соединение на Ubuntu, то для начала рекомендуется использовать этот способ.

Все параметры задаются с помощью одной команды:

$ sudo ip addr add 10.2.119.116/24 dev enp3s0

  • 10.2.119.116 - IP-адрес сетевой карты (у вас он может быть другим);
  • /24 - количество бит в префиксной части адреса;
  • enp3s0 - интерфейс сети, к которой подключен кабель провайдера.

Введя все необходимые данные и выполнив команду в «Терминале» , вы сможете проверить их корректность. Если интернет на ПК появился, то все переменные верны, и их можно вносить в конфигурационный файл.

Настройка DNS

Настройка DNS-подключения в разных версиях Ubuntu выполняется по-разному. В версиях ОС начиная с 12.04 — один способ, в более ранних — другой. Рассматривать мы будем только статический интерфейс подключения, так как динамический подразумевает автоматическое определение DNS-серверов.

Настройка в версиях ОС выше 12.04 происходит в уже известном файле «interfaces» . В нем необходимо ввести строку «dns-nameservers» и через пробел перечислить значения.

Итак, сначала откройте через «Терминал» конфигурационный файл «interfaces» :

$ sudo gedit /etc/network/interfaces

dns-nameservers [адрес]

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

Если вы хотите настроить DNS в Ubuntu более ранней версии, то конфигурационный файл будет другим. Откроем его через «Терминал» :

$ sudo gedit /etc/resolv.conf

После в нем можно задать необходимые адреса DNS. Стоит взять в учет то, что в отличии от ввода параметров в «interfaces» , в «resolv.conf» адреса пишутся каждый раз с абзаца, перед значением используется префикс «nameserver» (без кавычек).

Настройка соединения PPPoE

Настройка PPPoE через «Терминал» не подразумевает внесение множества параметров в различные конфигурационные файлы на компьютере. Наоборот, использована будет всего одна команда.

Итак, чтобы совершить подключение типа «точка-точка» (PPPoE), вам необходимо выполнить следующие действия:


После всех проделанных действий ваш компьютер установит соединение с интернетом, если вы все сделали верно.

Обратите внимание, что по умолчанию утилита pppoeconf называет созданное подключение dsl-provider . Если вам нужно будет разорвать соединение, то выполните в «Терминале» команду:

$ sudo poff dsl-provider

Чтобы соединение установилось снова, введите:

$ sudo pon dsl-provider

Примечание: если вы подключаетесь к сети, используя утилиту pppoeconf, то управление сетью через Network Manager будет невозможным, ввиду внесения параметров в конфигурационный файл «interfaces». Чтобы сбросить все настройки и передать управление Network Manager, вам необходимо открыть файл «interfaces» и заменить все содержимое на текст, указанный ниже. После ввода сохраните изменения и перезапустите сеть командой «$ sudo /etc/init.d/networking restart» (без кавычек). Также перезапустите утилиту Network Manager, выполнив «$ sudo /etc/init.d/NetworkManager restart» (без кавычек).

Настройка соединения DIAL-UP

Чтобы совершить настройку DIAL-UP, можно воспользоваться двумя консольными утилитами: pppconfig и wvdial .

Настроить подключение с помощью pppconfig достаточно просто. В целом данный способ очень похож на предыдущий (pppoeconf ): вам точно так же будут заданы вопросы, отвечая на которые по итогу вы установите соединение с интернетом. Сперва запустите саму утилиту:

$ sudo pppconfig

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

Что касается настройки с помощью wvdial , то она происходит немного сложнее. Для начала необходимо установить сам пакет через «Терминал» . Для этого выполните следующую команду:

$ sudo apt install wvdial

В его состав входит утилита, предназначенная для автоматической конфигурации всех параметров. Называется она «wvdialconf» . Запустите ее:

$ sudo wvdialconf

После ее выполнения в «Терминале» будет отображено множество параметров и характеристик — в них разбираться не нужно. Следует лишь знать, что утилита создала специальный файл «wvdial.conf» , в который автоматически внесла необходимые параметры, считав их с модема. Далее надо отредактировать созданный файл «wvdial.conf» , откроем его через «Терминал» :

$ sudo gedit /etc/wvdial.conf

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

  • Idle Seconds = 0 - соединение не будет разорвано даже при долгом бездействии за компьютером;
  • Dial Attempts = 0 - совершает бесконечные попытки установить соединение;
  • Dial Command = ATDP - набор номера будет осуществляться импульсным способом.

По итогу файл конфигураций будет иметь такой вид:

Обратите внимание, что настройки разбиты на два блока, озаглавленные названиями в скобках. Это необходимо для создания двух версий использования параметров. Так, параметры, находящиеся под «» , будут выполняться всегда, а под «» — при указании соответствующей опции в команде.

После проведения всех настроек, чтобы установить соединение DIAL-UP, вам необходимо выполнить эту команду:

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

$ sudo wvdial pulse

Для того чтобы разорвать установленное соединение, в «Терминале» нужно нажать комбинацию клавиш Ctrl+C .

Способ 2: Network Manager

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

Настройка проводной сети

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


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

Настройка DNS

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


Настройка PPPoE

Настройка соединения по протоколу PPPoE в Network Manager выполняется так же просто, как и в «Терминале» . По сути, вам надо будет указать только логин и пароль, полученные от провайдера. Но рассмотрим все более детальней.


Теперь в меню Network Manager появилось новое DSL-соединение, выбрав которое вы получите доступ в интернет. Напомним, что иногда нужно перезагрузить компьютер, чтобы изменения вступили в силу.

Заключение

По итогу можно сказать, что в операционной системе Ubuntu есть множество инструментов, для осуществления настройки необходимого интернет-соединения. Утилита Network Manager обладает графическим интерфейсом, что в разы упрощает работу, особенно для новичков. Однако «Терминал» позволяет осуществить более гибкую настройку, вводя те параметры, которых в утилите нет.

Новое на сайте

>

Самое популярное