Я слышал, что системы на основе Linux лучше для безопасности. Видимо, они не имеют вирусов и не нуждаются в антивирусном программном обеспечении. Даже мой университет заявляет об этом - они отказываются иметь Windows на своих серверах, что является настоящим позором, потому что мы хотели использовать .NET Framework для создания некоторых веб-сайтов.
Единственная причина, по которой я вижу безопасность Linux, заключается в том, что она с открытым исходным кодом, поэтому ошибки теоретически могут быть обнаружены и исправлены раньше.
Я немного знаю о том, как работают операционные системы, но не особо разбирался в том, как Linux и Windows реализуют свои ОС. Может кто-нибудь объяснить разницу, которая делает Linux-системы более безопасными?
Ответы:
Я не думаю, что операционная система "безопасна". Конкретная конфигурация операционной системы обладает определенной степенью устойчивости к атакам.
Я, вероятно, буду заслужен пламенем за то, что являюсь «апологетом Microsoft» здесь, но этот поток очень неестественен к обобщениям о «Windows», которые не соответствуют действительности.
Windows 1.0 - 3.11, 95, 98 и ME основаны на DOS. Эта линейка операционных систем не имела никакой безопасности в формальном смысле (защищенные адресные пространства, разделение режима ядра / пользователя и т. Д.). К счастью, когда мы говорим о «Windows» сегодня, мы не говорим об этих операционных системах.
Семейство операционных систем Windows NT (Windows NT 3.5, 3.51, 4.0, 2000, XP, 2003, Vista, 2008 и 7) имеет очень разумную систему безопасности, «разработанную» с момента первого выпуска в 1992 году. разработан с учетом «Оранжевой книги» TCSEC и, хотя и не идеален, я думаю, что он достаточно хорошо спроектирован и реализован.
Windows NT была «многопользовательской» с самого начала (хотя функциональность нескольких пользователей, получающих графический пользовательский интерфейс одновременно с одного и того же сервера, существовала только в Citrix WinFrame в эпоху Windows NT 3.51). Существует разделение между ядром и пользовательским режимом, при этом защита адресного пространства зависит от базовых аппаратных функций MMU и CPU. (Я бы сказал, что это очень "Unix-y", но на самом деле это очень "VMS-y".)
Модель прав доступа к файловой системе в NTFS довольно «богата», и, хотя у нее есть некоторые недостатки, связанные с «наследованием» (или его отсутствием - см. Как обойти недостаток дизайна NTFS Move / Copy? ), Так было до последние 10 лет или около того, что операционные системы в стиле Unix реализовали аналогичную функциональность. (Novell NetWare превзошла Microsoft в этом вопросе, хотя я думаю, что MULTICS побили их обоих ...> улыбка <)
Диспетчер управления службами, в том числе система разрешений для контроля доступа к программам запуска / остановки / паузы, очень хорошо спроектирована и имеет гораздо более надежную конструкцию, чем различные «архитектуры» сценария init.d (больше похоже на «джентльменские соглашения»). ") во многих дистрибутивах Linux.
Руководитель исполнительного объекта (см. http://en.wikipedia.org/wiki/Object_Manager_(Windows) ), которая в некоторой степени аналогична файловой системе / proc и файловой системе / dev, имеет модель ACL, которая похожа на файловую систему и намного, намного богаче, чем любая модель разрешений, которую я знаю для / proc или / dev в любом дистрибутиве Linux.
Хотя мы могли бы обсудить достоинства и недостатки реестра, модель разрешений для ключей в реестре гораздо более детализирована, чем модель установки разрешений для файлов в каталоге / etc. (Мне особенно нравятся комментарии Роба Шорта о реестре в его интервью «За кодексом»:http://channel9.msdn.com/shows/Behind+The+Code/Rob-Short-Operating-System-Evolution Роб изначально был одним из главных разработчиков реестра Windows, и я думаю, можно с уверенностью сказать, что он не обязательно рад с / как все обернулось.)
Сам Linux - просто ядро, а Windows более аналогична дистрибутиву Linux. Вы сравниваете яблоки и апельсины, чтобы сравнить их вот так. Я бы согласился, что Windows сложнее «раздеть», чем некоторые системы на базе Linux. С другой стороны, некоторые дистрибутивы Linux поставляются с большим количеством «дерьма». С появлением различных «встроенных» разновидностей Windows стало возможным (хотя и не для широкой публики) создавать «дистрибутивы» Windows, отличающиеся по своему поведению от настроек по умолчанию Microsoft (исключая различные службы, изменяя разрешения по умолчанию и т. Д.) ,
Различные версии Windows имели свою долю плохо выбранных значений по умолчанию, ошибок, которые позволяли неавторизованным пользователям получать привилегии, атаки типа «отказ в обслуживании» и т. Д. Ядра Unix (и множество приложений на основе Unix, работающих по умолчанию как root), имели такие же проблемы. Начиная с Windows 2000, Microsoft проделала потрясающую работу по упрощению разделения приложений, запуска программ с наименьшими правами и удаления ненужных функций ОС.
Короче говоря, я предполагаю, что то, что я говорю, заключается в том, что конкретная конфигурация конкретной операционной системы для ваших нужд имеет большее значение, чем тип используемой вами операционной системы. Дистрибутивы Windows и Linux имеют очень похожие возможности в отношении функций безопасности. Вы можете применять надежные методы защиты (наименьшие привилегии, ограниченная установка дополнительных компонентов, криптографически безопасные механизмы аутентификации и т. Д.) В любой ОС. Независимо от того, действительно ли вы это делаете или нет - вот что имеет значение.
источник
Еще одна вещь, которая не упоминается, заключается в том, что безопасность в Windows гораздо более непрозрачна, чем в Linux.
Например, я могу посмотреть пару текстовых файлов и точно узнать, что работает мой веб-сервер. IIS? Не так много - вы можете увидеть результаты конфигурации через инструмент GUI, но есть скрытые настройки. Затем вы должны использовать другой набор инструментов для просмотра списков ACL для файлов и т. Д.
То же самое с большинством программ в мире Windows - очень трудно быстро понять, что именно влияет на среду выполнения, между реестром и ACL.
источник
Не знаю насчет сравнения разрешений файлов ... Когда я был администратором UNIX / Linux, NT4 имел ACL для файлов, которые были гораздо более детализированными, чем традиционные разрешения в стиле "777" в UNIX / Linux. Разумеется, разрешения - это еще не все, и я уверен, что современные дистрибутивы Linux, по крайней мере, делают детализированные ACL доступными, даже если они не реализованы по умолчанию. На мой взгляд, концепции sudo и root всегда существовали в UNIX, хотя Windows постоянно добавляла эти концепции и, вероятно, сейчас находится на одном уровне.
Моя собственная интерпретация заключается в том, что, поскольку код ядра Linux и многие его драйверы и утилиты открыты - он, вероятно, был рассмотрен гораздо более подробно и исправлен гораздо чаще для ошибок кодирования, которые могут привести к удаленным уязвимостям, которые может использовать хакер. В любом случае, мне кажется, теория заключается в том, что, поскольку Linux не принадлежит корпорации, она может исследовать цели безопасности более полно, чем корпорация. Бизнес должен зарабатывать деньги; в то время как группы с открытым исходным кодом просто не имеют этого ограничения.
Гораздо проще войти в систему Linux и просто завершить работу всей оконной системы, демонов RPC и т. Д. - вы можете получить систему на основе Linux или BSD до одного или двух открытых портов с минимумом установленных пакетов и тем не менее иметь очень полезную систему очень легко. Это, вероятно, больше связано с наследием UNIX как ОС разработчика; все было построено, чтобы быть модульным, а не чрезмерно взаимосвязанным. Это приводит к гораздо более настраиваемой системе, в которой вы можете просто удалять ненужные вещи. Я не думаю, что так легко защитить серверы Windows таким образом.
Группа OpenBSD довела эту концепцию до крайности. Основная цель программы номер один - проверить каждую строку кода на предмет возможных недостатков безопасности. Доказательством тому является пудинг, за последние годы было обнаружено невероятно низкое количество уязвимостей для OpenBSD из-за этого почти фанатичного (я использую слово с уважением) внимания к деталям.
Корпорации, в то время как они делают прекрасное программное обеспечение (MSSQL, Exchange, Windows Server 2003 - все прекрасно в моей книге), просто преследуют разные цели.
источник
На мой взгляд, если достаточно хорошо сконфигурированы системы на базе Linux, они более безопасны, чем системы Windows. Некоторые из причин:
Прозрачность и множество простых сетевых инструментов. Например, администратору Linux очень легко увидеть текущую конфигурацию брандмауэра, набрав «iptables -L -n» на оболочке. Вы также можете увидеть, какие порты открыты на машине, запустив «nmap» с другой машины Linux. Это делает жизнь намного проще, так как вы можете очень точно указать, какие порты могут быть доступны, с каких адресов и т. Д.
Текстовые файлы журнала в одном месте: текстовые файлы журнала в одном месте "/ var / log" легко архивировать и анализировать. Кроме того, такие инструменты, как logwatch, которые могут отслеживать эти файлы журналов и отправлять вам важные сообщения по электронной почте, упрощают работу. Мы даже можем написать свои собственные инструменты для анализа файлов журналов и поиска интересующей нас информации. Журналы можно даже экспортировать на удаленный сервер системного журнала, если мы не хотим, чтобы журналы присутствовали на одном сервере.
Не беспокойтесь о вирусах: меньше ли вирусов в Linux, потому что систем на базе Linux меньше, ИЛИ потому что все пользователи любят Linux или потому, что Linux более безопасен. Причина не имеет значения. Если в конце концов Linux имеет меньше вирусных угроз, то это хорошо для Linux. Я лично видел, как люди установили два антивируса, антишпионское и рекламное ПО на одну машину. Все эти инструменты защиты потребляют много ресурсов процессора и памяти.
Поддержка многих языков программирования: в Linux очень просто писать код. C, C ++, Python, Perl, Java и т. Д. Просто работают без необходимости установки какого-либо дополнительного пакета. (Это в случае, если вы устанавливаете большой дистрибутив, такой как Fedora, который поставляется на DVD.) Это повышает безопасность, поскольку мы можем выполнять повторяющиеся задачи путем кодирования. Так что, если сделать ошибку и возникнет проблема, это будет со всеми учетными записями, и это будет легко обнаружить и исправить. Если бы нам пришлось вносить одинаковые изменения в большое количество учетных записей / каталогов вручную, мы могли бы ошибиться в одной или двух, и для обнаружения таких ошибок может потребоваться много времени. Также мы можем исправлять ошибки и искать простые ошибки, используя код. Поскольку все файлы конфигурации, файлы информации о пользователях, файлы журналов и т. Д. Находятся в тексте, очень легко кодировать все, что мы хотим достичь, и существует множество способов сделать то же самое.
Открытый исходный код: поскольку, вероятно, многие люди видели код, очень редко некоторые шпионские и рекламные программы входят в состав приложений, поставляемых с Linux. Вы также можете увидеть исходный код, если безопасность очень важна для некоторого сервиса, и посмотреть, как он работает. Если вы точно знаете, как это работает, то вы знаете ограничения и когда это сломается. Фактически, если существуют хорошо известные ограничения безопасности, которые были бы задокументированы на страницах руководства, на веб-сайте пакета и в комментариях в файлах конфигурации. Разработчикам нечего терять, если вы скажете, что если вы используете наш инструмент в таком сценарии, то это рискованно. Организациям, продающим программное обеспечение, может быть невыгодно сообщать об ограничениях для программного обеспечения, и это может ухудшить их программное обеспечение и снизить продажи / прибыль.
Бесплатная и совместимость: хотя это не связано с безопасностью. Для университета, где стоимость имеет значение, системы на основе Linux намного более экономичны, чем системы на основе Windows, и нет необходимости приобретать лицензии для ОС, а также для дополнительного программного обеспечения, которое мы установим после установки ОС. Что касается совместимости, мы можем подключаться с компьютеров Linux к другим ОС и легко обмениваться файлами. В Linux мы можем смонтировать множество файловых систем, включая FAT, NTFS, HFSPLUS. Мы можем делиться вещами используя ftp, http, ssh, samba, nfs и т. Д., И все эти вещи устанавливаются или могут быть установлены с помощью одной команды. Другие ОС обычно предоставляют только одну возможность делиться вещами.
Но если неправильно сконфигурировать системы на основе Linux, это может вызвать больше проблем, чем можно себе представить. Многие пользователи могут одновременно войти в систему и делать практически все из оболочки. Очень легко оставить бэкдоры, трояны, если брандмауэр не настроен должным образом. Атакующий может удалить файл журнала или вмешаться в него, чтобы скрыть свои следы. Атакующий может кодировать на атакованной машине, так как все редакторы, компиляторы, отладчики легко доступны, как только злоумышленник получает доступ к оболочке. Все серверы ftp, http могут быть запущены из учетной записи пользователя, но не на защищенных портах (1-1024). Таким образом, злоумышленник может загрузить код http-сервера, скомпилировать его и запустить http-сервер через порт 6000, чтобы он выглядел как X-сервер.
Таким образом, системы Linux более безопасны, если администратор знает, что он делает, или, по крайней мере, пытается найти информацию на страницах руководства и в документации, прежде чем вносить какие-либо новые изменения.
источник
Безопасность сервера - это больше, чем просто ОС. Я бы сказал, что более важным фактором в безопасности сервера является человек, работающий на сервере, и то, насколько осторожно они относились к блокировке.
Тем не менее, если университет является магазином Linux, они не позволят вам использовать Windows Server независимо от того, какие данные вы найдете в безопасности Windows Server. Я хотел бы изучить использование Mono (www.mono-project.com), если вы хотите использовать .Net Framework.
источник
диапозитивные
ps auxf
и вы узнаете, какие службы запущены, под какой учетной записью.netstat -lnp
и вы узнаете, какие программы имеют какие порты TCP открыты.iptables -L
и вы знаете, какие правила есть у вашего брандмауэра.strace
илиlsof
проверить активность процесса.ls -lah
или,tree -pug
и вы точно знаете, какие права доступа и разрешения у полной папки./var/log
и могут быть проверены с помощью простого «поиска по файлам»./etc
. Поиск по текстовым файлам, или их архивирование, или применение контроля версий (subversion / git) действительно просты.Система четких разрешений
ls
цветном режиме).$HOME
и/tmp
.Расширенные параметры безопасности
sudo
пользователям и процессам могут быть предоставлены разрешения на выполнение только нескольких административных команд.Одиночные точки для входа и повышения привилегий
sudo
или связаться со службой DBus, которая сначала проверяет PolicyKit. Эти программы SetUID можно найти с помощью одной команды «Поиск всех файлов».ssh
. Это туннель SSL с проверкой открытого / закрытого ключа.Безопасные фоновые процессы
Хорошие инструменты аудита
nmap
,ncat
делают аудит безопасности простым.Хорошие обновления безопасности
lsof | grep =
).Все, что здесь упомянуто, поставляется или в любой основной дистрибутив Linux, например, Red Hat, Debian, openSUSE или Ubuntu.
источник
С самого начала Linux был спроектирован как многопользовательская система, поэтому у него гораздо более сильная система разрешений, чем у Windows. Он также был разработан для того, чтобы вы не работали с правами администратора (root-доступ), поэтому все программы разработаны так, чтобы не нуждаться в правах. Это означает, что если ваша учетная запись будет взломана, вся система не будет.
Отчасти это также, вероятно, происходит из-за того, что люди, работающие под Linux, (вообще говоря) более технические, и поэтому менее склонны совершать глупые ошибки, которые приводят к взлому компьютеров.
источник
С моей точки зрения, в Windows у вас меньше контроля, чем в Linux. Закаливание окон ... сложнее :). Хотя любой инструмент зависит от навыков владельца, я хотел бы рассмотреть следующее:
Поэтому, хотя я предпочитаю Linux вместо Windows, я думаю, что вы не должны доверять установкам по умолчанию.
источник
Большинство предыдущих постов были посвящены вторжению, и была проделана хорошая работа по этому вопросу, один из вопросов вашего вопроса был о вирусах. Основными причинами того, что в дистрибутивах Linux меньше проблем с вирусами, является то, что существует больше оконных коробок, чем Linux и Mac вместе взятых. Авторы вирусов хотят получить максимальную отдачу, поэтому они пишут для Windows.
Все системы способны проникать и заражаться. Любой, кто говорит вам по-другому, будь то ваши инструкторы или кто-то еще, или дураки, имеют собственность на берегу океана в Юте, чтобы продать вас.
источник
Судя по исправлениям безопасности для ВСЕГО программного обеспечения в наши дни, я думаю, что проблема не в программном обеспечении, а в количестве рабочих столов под управлением Windows. Это цель, для создания бот-сетей. Если Linux когда-либо действительно вырастет в настольном пространстве, то на него будут больше нападать. Я думаю, что Mac OSX уже видит это.
источник
Есть одна очень важная причина, по которой Linux и OpenBSD могут быть более безопасными, чем Windows. Это способность операционной системы защищать себя от сетевых атак.
В Windows входящие сетевые пакеты подвергались воздействию значительных частей операционной системы задолго до того, как брандмауэр Windows может отклонить пакет. В Linux, используя IPTables или в OpenBSD, используя PF, вы можете изолировать мошеннические пакеты намного раньше в процессе получения ОС новым сетевым пакетом, что снижает риск.
Однако после того, как вы откроете порт и запустите на нем службу, то есть сделаете сетевой компьютер полезным, вы будете в такой же безопасности, как и код, который запускает эту службу.
источник
Нет такой вещи, как ОС, которая более безопасна, чем другая. Все зависит от знаний людей, которые управляют системой.
Я встречался и работал с некоторыми чрезвычайно талантливыми администраторами * nix на протяжении многих лет, и они могли настроить чрезвычайно безопасный сервер * nix. Однако прикрепите их к хосту Windows, и они не будут знать, как заблокировать компьютер. То же самое можно сказать и о другом, я знаю немало о защите хоста Windows, но поставил меня перед * nix-боксом, и я понятия не имел, что делал.
Ни одна из ОС не является более или менее безопасной, чем другая. Конечно, мы могли бы поговорить об истории платформ и использовать ее, чтобы обсудить, какая из них стала более безопасной с течением времени, но мы не говорим о * nix ОС 10 лет назад и о развертывании Windows NT 4 в производственных средах. , Мы говорим о современных ОС (или, по крайней мере, так и должно быть), и какие из них могут быть лучше защищены.
Я видел, как кто-то что-то говорил в ответе о том, что пакеты, поступающие на брандмауэр Windows, затрагивают больше частей ОС, чем брандмауэр Linux. Вопрос к нему: кто, черт возьми, доверяет программному брандмауэру, работающему на хосте? Вот для чего нужны конечные точки / внешние брандмауэры. Чтобы защитить сеть. Хост, на котором запущен сервис, имеет доступ к сервису. Задача хостов - обеспечить, чтобы этот сервис не был скомпрометирован. Перед сетевыми устройствами стоит задача предотвратить попадание других пакетов из Интернета на хосты других служб.
Как только сеть должным образом защищена, все зависит от того, насколько хорошо защищено приложение, запущенное на хосте. Есть ли у этого приложения какие-либо переполнения буферов, которые можно использовать? Есть ли какие-либо способы в пределах доступного приложения получить доступ к ОС и каким-то образом получить более высокий уровень разрешений? Если нет, то это хорошо защищенное приложение. Если есть, то у вас есть проблема, которая должна быть раскрыта.
Если кто-то не будет рассматривать другую ОС в своем дата-центре, это признак невежества (относится ко всему магазину Linux, а также ко всему магазину Windows). Обе ОС там используют и должны использоваться как таковые. Ни один не лучше и не хуже, чем другие. (И да, у нас есть пара машин Linux в нашей среде, обслуживающей производственные сервисы.)
источник
Нет необходимости проклинать ваш университет за использование серверов Linux. В соответствии с вашими конкретными требованиями, как сказал AdamB, используйте Mono (www.mono-project.com). Обычно профессора, интересующиеся ОС, предпочитают linux, даже любой любитель ОС предпочел бы linux, для любопытства, как это работает на практике из книг.
Linux теперь следует DAC (дискреционное управление доступом), это более умная система для контроля доступа. Как упоминалось в других ответах, да, linux был многопользовательским, и поэтому система контроля доступа стала лучше, чем другие.
Но безопасность, к которой вы обращаетесь, выглядит как безопасность сервера, которая связана не столько с проблемой ОС, сколько с проблемами всей серверной сети. где я имею в виду списки контроля доступа брандмауэров, маршрутизатор и т. д. Обновления бесплатны, пожизненно. он открыт, поэтому его много тестируют, что очень важно.
Помимо безопасности, экономическая жизнеспособность делает linux лучшим вариантом для серверов, где их очень мало, но приложения должны запускаться или размещать службы. И эти приложения очень хорошо перенесены на них. Например, Apache.
Я думаю, что не только безопасность, но и другие факторы, которые делают вас, как большинство остальных университетов, выбирают Linux на серверах.
источник
Хотя здесь есть много отличных ответов, я просто хочу также добавить, что не существует такой вещи, как безопасная операционная система.
Известно, что если человек создал «безопасную» платформу, то другой человек может со временем найти дыры в этой платформе.
Я согласен, что первые два предложения Эвана лучше всего отражают безопасность ОС:
Поэтому не имеет значения, сравниваем ли мы GNU / Linux, системы BSD (Free / Open / Net), Microsoft, Windows, Mac OSX, Symbian, PalmOS, Cisco IOS, AIX, QNX, Solaris, z / OS или любые другие другие «операционные системы», которые запускают такие вещи, как ваш телевизор, MP3-плеер, микроволновая печь и т. д. и т. д.
Каждый из них имеет часть целого, которая обладает способностью эксплуатироваться определенным человеком.
По этой причине большинство поставщиков имеют инструкции о том, как настроить свои системы так, чтобы конфигурация была максимально безопасной. Это означает использование других технологий для минимизации площади поверхности.
например:
источник
Факт безопасности операционной системы в отношении фреймворков - это не просто проблема типа ядра. Каждый из фреймворков индивидуально имеет свои механизмы безопасности. Спецификация многопользовательской учетной записи в Microsoft Windows действительно обеспечивает большую гибкость в плане массового развертывания, однако в Linux вы можете контролировать входные и исходные разрешения и делегирование.
Уровень безопасности .NET Framework в основном связан с вашей групповой политикой, настройками powershell andnetsh console. Причина в том, что ядро телеметрирует при низкоуровневых параметрах доступа с динамическими запросами доступа в памяти. Фреймворки Linux часто требуют аналогичного уровня внимания, но в основном это связано с флагами, которые вы указываете при настройке языка. Linux при правильной настройке доказано, что она более безопасна, чем Microsoft Windows. Хотя на «приличном» уровне конфигурации; инструменты могут проскользнуть прямо через ваш IIS и проникнуть прямо в ваши сервисы, используя определенный GUID. В целом Linux позволяет больше аспектного контроля, чем
Основные моменты:
Правительственные постановления:
Личные мнения:
Каждая операционная система потенциально может быть более безопасной, чем остальные. Взяв сырое сравнение фреймворков, работающих с более высокой безопасностью в Linux или Windows, я бы сказал, что основная часть веб-безопасности - это использование наиболее несовместимой, но эффективной фреймворк Таким образом, становится гораздо труднее привязать к собственным разрешениям доступа к жесткому диску и ручкам библиотеки. Таким образом, у вас есть несколько приваренных чаш на вашей операционной системе. Как сказал Эван с разрешениями NTFS и / proc или / dev. Если вы используете что-то, что не может с этим поговорить; его сложнее взломать.
То, что я узнал от веб-разработки, никогда не стоит недооценивать вашу структуру. .NET имеет разрешения на создание общих подключенных томов и механизмов управления для кластеров SQL Server; в то время как Apache Source может делать то же самое с операционными системами, использующими Linux. Это довольно приличный вопрос, хотя я должен сказать, что Linux обеспечивает большую безопасность при управлении отдельными аспектами, а также при ограничениях и мониторинге на нескольких языках; в то время как Windows обладает широкими возможностями аудита и ведения журналов с интерфейсом отладки логики высокого уровня. Оба они сравнимы, в конечном итоге это сводится к тому, «насколько хорошо - вы его заблокируете» и «сколько существует наворотов?» в рамках. Apache имеет больше надстроек безопасности;
В настоящий момент, сравнивая PHP в Linux или Windows, совершенно очевидно, что в операционной системе Linux можно использовать больше расширений; Windows имеет другой уровень управления разрешениями по сравнению с PHP, что затрудняет управление каталогами и доступом к файлам. В Apache, например, XAMPP, LAMPP или WAMP, я чувствую, что Windows немного менее безопасна, учитывая тот факт, что ее ограничения на брандмауэр легче нарушать, потому что она использует те же правила туннелирования, что и ваш веб-браузер. Linux, с другой стороны, может использовать пулы приложений и дополнительные механизмы безопасности на уровне пакетов, которые гораздо сложнее воспроизвести. Windows потребует от вас использования всех аспектов операционной системы, чтобы сделать сеть более безопасной.
IIS (на сервере Microsoft, а не на клиенте Windows) в Windows с ASP.NET с последними микшерами SEC_ATL также может быть очень безопасным.
Только Apache, вы можете запустить его с Linux, чтобы активировать драйверы верхнего и нижнего уровня, SMIME, кодеки и ценные бумаги пакетного уровня. В то время как Windows потребует, чтобы вы установили перекрывающие механизмы безопасности, которые в противном случае блокировали бы ваш трафик немного больше, чем вы хотели бы, если бы речь шла о работе тысяч серверов.
В Linux более узкое ядро и оптимальность для сетевой безопасности тем лучше (как в Apache с NSLUG).
С Windows вам больше нравится программировать модули Powershell и дополнительное наложение безопасности для вашей платформы ASP.NET и настраивать групповую политику на USGS, потому что большую часть времени она действительно нуждается в том, чтобы отключать тот тип трафика, который Linux будет автоматически отрицать и не думать. около.
В равной степени они могут быть сильными. Из коробки «живая» версия Linux будет сильнее ненастроенного Microsoft Windows Server, только что настроенного с помощью мастера.
Со временем Linux превзойдет Windows в игре безопасности. Серверы Debian 3 сегодня все еще сильнее, чем Microsoft Server 2008 R2, и предполагают, что они могут поддерживать те же технологии без перестройки ядра. Debian все еще может курить, и я видел это своими глазами.
Хотя, как я уже говорил, я уверен. Это зависит от персонала, с которым вы работаете, и от вашего внимания к деталям. Это всегда имеет большое значение, когда дело доходит до работы в большой сети серверов.
источник
В основном я считаю, что Linux считается более безопасным выбором из-за повсеместного использования программного обеспечения с открытым исходным кодом.
Непринужденность исходит из идеи, что «сообщество» заметит, что если что-то будет добавлено что-то подозрительное (скажем, если openSSH неожиданно начнет звонить домой с паролями), оно не будет надолго задерживаться.
Но я не могу повторить достаточно того, что уже сказали выше: безопасность во многом зависит от конфигурации: кого волнует, не звонит ли openSSH домой, если у вас нет брандмауэра, нулевой пароль root и PermitRootLogin включены в sshd;)
источник
Краткий ответ: изначально UNIX был разработан для обеспечения безопасности; Windows была разработана, чтобы быть простой. Теперь потомки UNIX будут делать вид, что для своих пользователей они проще; Windows притворяется более безопасной.
Они еще не встречались
источник
В предыдущих версиях Windows приложения работали в одном и том же адресном пространстве, поэтому они могли проходить указатели друг через друга. Они также полагались на совместную многозадачность, а иногда и не сотрудничали.
Даже в самых ранних версиях Linux / Unix было разделение между приложениями и между O / S и прикладным уровнем. Нарезка задач, хотя и не всегда идеальная, была, по крайней мере, справедливой.
Таким образом, наследие Unix (или Linux) для более надежных систем, которые требуют более высокой доступности.
Все это все еще применяется сегодня? Это другой вопрос.
источник
Теперь, когда NT догнал Unix во многих ранее несовершенных местах, права доступа к файлам и защита памяти больше не являются серьезными проблемами дифференциации.
Но .... а. В системах Unix весь доступ ко всем устройствам осуществляется через файлы, для которых можно легко управлять безопасностью. Например, знаете ли вы, как запретить пользователю X доступ к звуковой карте в Windows, в то же время разрешая пользователю Y? В Unix такие вещи просты.
б. Структура каталогов гораздо более вменяемая. (Например, пользовательскому приложению требуется только доступ на запись к вашей домашней папке и т. Д.) Однако это улучшилось и в Windows за несколько лет.
д. Это важная персона: SELinux (и функция песочницы Trusted Solaris и Mac OS «Ремень безопасности»). Это известно как NDAC (недискреционное управление доступом). Если вы работаете с дистрибутивом ОС с этими функциями, то в сущности одновременно существуют два уровня безопасности: обычный DAC (система разрешений), который всегда был в Unix, и современные версии окон - и, кроме того, «Брандмауэр приложений», который навязывают SELinux и подобные системы. Например, вы можете установить политику, которая гласит, что веб-серверу Apache разрешено писать в / tmp и читать из / var / www и / etc / apache. Любой другой доступ к диску будет отказано независиморазрешений. Кроме того, вы можете указать, что он может принимать входящие соединения только через порт 80 и не устанавливать исходящие соединения. Затем, даже если есть ошибка, которая позволит кому-то сделать что-то очень плохое, и даже если apache работает как root, это не будет иметь значения - политика предотвратит это. Это требует (очень незначительного) снижения скорости и может быть проблематично, если вы используете необычную конфигурацию, но в обычном случае может значительно повысить уровень вашей безопасности как в Unix, так и в Windows старого стиля.
е. Слои - системы Unix состоят из множества отдельных уровней и сервисов, которые могут быть заменены. Это означает, что они могут быть индивидуально проанализированы на предмет корректности и безопасности, заменены и т. Д. Почти для любого из них нет необходимости перезагружаться. Это большой плюс в системах типа сервера. Кроме того, в системе Unix проще отключить (и удалить) то, что вам не нужно. Например, зачем запускать графический интерфейс на веб-сервере? Это увеличивает поверхность атаки и занимает оперативную память.
е. Для тех, кто сказал, что Windows NT была разработана с нуля для обеспечения безопасности ... это правда, ядро было разработано с самого начала с расширенными функциями безопасности и многопользовательскими функциями, но есть две основные проблемы: 1. Плохая репутация Microsoft с безопасностью и 2. ОС в целом была разработана для обеспечения совместимости с устаревшими приложениями Windows, что означало множество компромиссов. Unix всегда был многопользовательским, и поэтому приложения не испытывают особого удивления, когда безопасность обеспечивается - что означает меньше компромиссов.
источник
Существует несколько причин, по которым системы на основе Linux часто считаются более безопасными, чем системы Windows.
Одним из них является мастерство владельца. Если вы зайдете в Best Buy или Wal-mart (здесь, в США) и купите компьютер, не задумываясь об этом, на нем будет работать Microsoft Windows. Это означает, что существует огромное количество систем Windows, управляемых людьми, которые не имеют ни малейшего представления. Поскольку почти никто не покупает компьютер с Linux случайно (по крайней мере, после того, как Microsoft провела контратаку на нетбуках), большинство пользователей Linux либо что-то знают о компьютерах, либо их компьютер кто-то установил. Это относится ко всем средам, в которых есть люди, которые не знают, что делают; те, кто не работает под управлением Windows, и те, кто работает под управлением различных ОС.
Одним из них является количество нападавших. Microsoft Windows является гораздо более привлекательной целью из-за всех плохо управляемых машин. Существует множество ценных целей Linux, но они, как правило, хорошо администрируются (наряду с множеством ценных целей Windows). В разумных пределах никто не ориентируется на компьютеры с Linux в целом.
Одним из них является культура. В любой среде Unix / Linux существует четкое различие между учетными записями пользователя root и пользователя, и почти во всех случаях люди работают в своих учетных записях пользователей, когда им не нужно быть пользователем root. По моему опыту, различие не столь сильное в средах Windows, в котором каждый пользователь обычно имеет одну учетную запись с какими-либо привилегиями. Я сейчас на своем рабочем компьютере, где у меня есть одна учетная запись, учетная запись администратора. Все, что я делаю, делается с помощью учетной записи с высокими привилегиями. Когда я вернусь домой к своему Linux-боксу, я сделаю почти все в учетной записи с ограниченными правами и буду наращивать, когда мне это нужно. Моей жене приходилось спорить, чтобы получить две учетные записи на своем компьютере на работе, одну обычную учетную запись администратора и одну учетную запись с ограниченными правами, чтобы она могла видеть, имеют ли обычные пользователи права на запуск того, что она пишет.
Одним из них является обратная совместимость. Хотя Unix изначально не представлял собой безопасную ОС, он рано получил безопасность. Программы для Linux не требуют запуска с правами root, если они на самом деле не выполняют функции root. Windows, с другой стороны, запускает большое количество программ, требующих учетных записей администратора, потому что это то, что разработчики запускали и тестировали (см. Выше), и эти разработчики, как правило, не заботились о безопасности, и это работало просто отлично. Это большая проблема, которую Microsoft пытался решить с помощью UAC. Я не думаю, что это особенно хорошее решение, но, если честно, Microsoft не собирается находить здесь хорошее решение (я не думаю, что отказ от обратной совместимости является хорошим решением здесь).
Это приводит к тому, что большинство крупномасштабных проблем безопасности будут возникать в системах Microsoft независимо от достоинств моделей безопасности, а также от того, что у Microsoft возникают большие проблемы с безопасностью. С точки зрения эвристики доступности, тот факт, что люди могут думать о большем количестве проблем безопасности Microsoft, искажает их мнение.
Это, на мой взгляд, веские причины. Я не затрагивал фактическую безопасность ОС, так как не знаю, что дистрибутив Windows или Linux более уязвим, чем другой, когда им управляет опытный администратор. Linux обладает преимуществом открытого исходного кода, в котором любой может найти и исправить ошибки, в то время как Microsoft ввела методы обеспечения безопасности, которые могут работать, а могут и не работать лучше. (Если бы я хотел запустить действительно безопасную ОС, я бы выбрал OpenBSD, ОС с открытым исходным кодом, которая стремится быть защищенной.) Обе ОС имеют хорошие системы разрешений (я предпочитаю Unix, но другие разумные люди не согласны).
Конечно, есть веские причины считать ОС менее безопасными. У некоторых людей есть любимая ОС, и они не теряют возможности ругать других. Некоторые люди не любят Microsoft, Ричарда Столлмана или кого-то другого, или организацию, и клеветают на связанные ОС. Некоторые люди не заметили, что Microsoft изменилась за эти годы, так как не так давно Microsoft действительно не заботилась о безопасности, а Windows действительно была менее безопасной, чем Linux.
источник
Там нет реальной причины, кроме инерции. Я видел, как многие сторонники Linux выдвигают аргументы против Windows (и не только с точки зрения безопасности), которые на первый взгляд кажутся верными, но - которые, если немного копнуть, - применимы только к Windows 3.1 или 95/98.
Я говорил это раньше, но хотя в Windows может быть больше исправлений и т. Д., Это исправления для обнаруженных уязвимостей . И это не те, которые были исправлены , вы должны беспокоиться, не так ли? Я не верю, что быть открытым исходным кодом также является более безопасным. Развертывание собственных патчей может подойти для домашнего пользователя, но корпоративный пользователь или администратор всегда хотят, чтобы Real Thing сертифицировалась для работы (и была полностью протестирована) с различными приложениями и сертифицирована как не нарушающая работу. следующее обновление ядра. То же самое относится и к исправлениям сообщества FOSS.
Итак, в моей книге это смесь инерции, предрассудков и внедрения в культуру UNIX, исключая альтернативы.
источник
Процессы в Linux / Unix не могут изменять свои привилегии после того, как они назначены пользователем, процессы в окнах могут изменять свои привилегии пользователя и изменять их пользователя в середине процесса.
Это суть того, почему окна менее безопасны, чем Linux / Unix.
источник