Введение............................................................................................. 8
1. Основные понятия компьютерной безопасности 10
2. Локальная и сетевая безопасность Linux................. 15
2.1. Пользователи и пароли.............................................................. 18
2.2. Особенности файловой системы Linux...................................... 24
2.2.1. Права доступа...................................................................... 24
2.2.2. Атрибуты файлов................................................................. 29
2.2.3. Механизм квот..................................................................... 33
2.3. Библиотека PAM......................................................................... 36
2.4. Брандмауэр................................................................................. 48
2.5. Удаленное управление................................................................ 57
3. Средства усиления безопасности в Linux................. 63
3.1. Linux ACLs.................................................................................. 63
3.2. LIDS............................................................................................. 65
3.3. AIDE............................................................................................ 71
4. Техника безопасности......................................................... 74
Заключение..................................................................................... 80
Список литературы..................................................................... 82
Приложение..................................................................................... 83
Постоянно растущий интерес к безопасности различных сетевых ОС, а в особенности к UNIX-подобным системам, как раз и побудил меня выбрать именно эту тему работы. Проблема информационной безопасности, начиная с момента появления необходимости в ней, постоянно тревожит умы сотни тысяч людей, заставляя их совершенствовать средства ее обеспечения. По проблемам безопасности информационных систем написано очень много книг и статей, каждый день выходят очерки, в которых сообщается о новых продуктах, совершенствовании существующих систем безопасности, описываются по шагам методы защиты от различных вторжений, методы устранения их последствий. Эта тема постоянно развивается, и интерес к ней никогда не угаснет. Проблема информационной безопасности будет актуальной до тех пор, пока существует информация, которую необходимо оградить от постороннего глаза.
Задачей данной работы является обзор средств как стандартных, так и не совсем, которые предоставляет операционная система Linux для безопасного функционирования, безопасной работы пользователей, а также сохранности конфиденциальной информации, для хранения которой эта ОС может использоваться. В работе затрагиваются не только вопросы, имеющие непосредственное отношение к безопасности ОС Linux. Поскольку Linux - сетевая ОС, и основным ее назначением является работа в сети, было бы неправильным не затронуть вопросы сетевой безопасности.
Работа поделена на четыре части: первая часть является теоретическим обзором основных терминов компьютерной безопасности; во второй части рассматриваются аспекты локальной и сетевой безопасности системы; третья часть является обзором дополнительных средств, предоставляемых разработчиками мира UNIX для контроля, регистрации и предотвращения угроз безопасности ОС Linux и четвертая часть представляет собой дополнительный раздел, в котором рассматривается техника безопасной работы с персональным компьютером и монитором.
У различных категорий людей слово «безопасность» вызывает свои ассоциации. Имеется множество разновидностей этого термина, которые связаны с различными сферами деятельности человека. Например, государственная безопасность или безопасность жизнедеятельности, политическая или строительная безопасность. Вообще таких разновидностей большое количество, в каждом случае к этому термину предъявляются специфические для конкретного рода деятельности требования, отличные от всех остальных. Обобщенное же определение термина «безопасность» можно сформулировать так: безопасность – это набор средств и требований, направленных на предотвращение запрещенных действий, выполнение которых может привести к нежелательным последствиям.
Термин «информационная безопасность» появился сравнительно недавно, с развитием вычислительной техники и ЭВМ. Информационная безопасность включает в себя кроме безопасности используемого программного обеспечения, также безопасность аппаратных средств, безопасность каналов связи и многое другое.
Под безопасностью же операционной системы понимается помимо безопасности самого ядра операционной системы еще и безопасность программного обеспечения, установленного на ней. Другими словами, безопасность операционной системы – это комплекс мер, направленных на предотвращение действий со стороны пользователя или других программ, которые могут привести к нарушению нормального функционирования операционной системы.
Если есть запрет, появится и человек, который попытается его нарушить! С развитием информационных технологий и внедрением компьютера практически во все сферы деятельности появились люди, так называемые «кракеры» (от англ. cracker – «взломщик компьютерных сетей и программ»), которые различными ухищрениями и нестандартными методами пытаются с целью собственной выгоды получить несанкционированный доступ к информации, которая для них не предназначена. Порой это приводит к плачевным последствиям для владельца этой информации. Тогда и возникла потребность в борьбе с «информационными вредителями». Были разработаны целые комплексы программ для усиления информационной безопасности и борьбы с кракерами. А поскольку любым электронно-вычислительным комплексом управляет определенная ОС, то, соответственно, для обеспечения безопасности системы в целом необходимо позаботиться о безопасности самой ОС.
Каждый производитель по-своему взглянул на безопасность своей ОС. В итоге одни системы оказались достаточно защищенными, защиту других обойти было не просто, а третьи оказались практически беззащитными перед взломщиками. Степень защищенности ОС Linux – еще одной UNIX-подобной ОС реального времени, рассматривается в этой работе.
Изучая безопасность ОС, нельзя не коснуться теории компьютерной безопасности. Теория компьютерной безопасности оперирует тремя основными понятиями: угроза, уязвимость и атака.
Угроза безопасности компьютерной системы – это потенциально возможное происшествие, которое может оказать нежелательное воздействие на саму систему (такое, как перезагрузка, зависание), а также на информацию, находящуюся в ней (удаление, порча файлов и так далее).
Уязвимость компьютерной системы – это такая неудачная или не совсем корректная ее характеристика, которая представляет возможным возникновение угрозы. Уязвимости как раз и являются причиной возникновения неприятных ситуаций.
К уязвимостям можно отнести следующие состояния информационных систем:
1. Несовершенство используемого программного обеспечения
Программное обеспечение написано человеком, а человек склонен допускать ошибки. При создании программного продукта проследить все связи и возможные ошибки практически невозможно, даже когда над проектом работает большое количество людей. Создатели программных продуктов стараются как можно лучше оптимизировать код программы и избавить его от ошибок, но, тем не менее, предусмотреть все возможные ситуации не представляется возможным. Иногда такие недоработки не несут никаких критических последствий для самой программы или данных, которыми она оперирует, но бывает, что они позволяют использовать программу в целях, отличных от тех, для которых она создавалась первоначально, иногда с очень серьезными последствиями (порча данных, например). Такие недоработки в программе обычно называют «дырами».
Еще существует такое понятие, как «люк». Люком называют специальные комбинации действий над программой, которые позволяют обойти некоторые этапы выполнения. Обычно люки используются программистами при разработке и тестировании программ с целью обхода уже проверенных блоков и в конце должны «закрываться», то есть программный код, отвечающий за люк, должен быть удален из готовой программы. Но то, что должно, делается не всегда. Программист попросту может забыть про люк, в результате люк остается в готовой программе и может представлять угрозу для правильного выполнения.
2. Неправильная настройка программного обеспечения
Безопасность системы во многом зависит от правильной настройки программного обеспечения, установленного в ней. За правильную настройку программ, установленных на пользовательском компьютере, отвечает сам пользователь компьютера (обычно, его владелец), за правильную настройку программ и сервисов, работающих на специализированном компьютере, обслуживающем запросы пользователей (сервере), отвечает администратор. В обоих случаях эти лица несут полную ответственность за сохранность данных и нормальное функционирование программ на обслуживаемом компьютере. От того, насколько правильно настроено то или иное программное обеспечение, может зависеть, получит злоумышленник доступ к компьютеру или нет.
Атака на компьютерную систему – это алгоритм действий, с помощью которых может быть осуществлен поиск уязвимостей и их использование с целью осуществления угрозы.
Существуют три основных вида угроз:
· Угрозы раскрытия
· Угрозы целостности
· Угрозы отказа в обслуживании
Угроза раскрытия заключается в том, что информация становится известной тому, кому не следовало бы ее знать. В терминах компьютерной безопасности угроза раскрытия имеет место всякий раз, когда получен доступ к некоторой конфиденциальной информации, хранящейся в вычислительной системе или передаваемой от одной системы к другой. Иногда вместо слова "раскрытие" используются термины "кража" или "утечка".
Угроза целостности включает в себя любое умышленное изменение (модификацию или даже удаление) данных, хранящихся в вычислительной системе или передаваемых из одной системы в другую. Обычно считается, что угрозе раскрытия подвержены в большей степени государственные структуры, а угрозе целостности - деловые или коммерческие.