CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
26.06.2017

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Приложения :: Безопасность

Дискуссионный клуб :: Windows vs Linux

Ещё о SmoothWall и немного идеологии

Кони троянские... Не знаю как у вас, а мои подопечные ловят этих самых "коней" регулярно. Достаточно также случаев, когда вредоносное ПО не идентифицируется ни одним из антивирусов. Последний "всплеск" был связан с распространением метода заражения autorun, любезно предоставляемым ms win. Ничего удивительного: антивирусные системы файрвола и мэйл-сервера остались "не у дел" и даже с таким трудом внедрённый в сознание пользователей совет "не запускать неизвестные exe-шники" не помог: вредоносная программа запустилась сама при подключении сменного носителя. Слава Богу, M$ хоть оставила возможность отключить автозапуск, но я не об этом. Так или иначе, а троянские программы на компьютеры пользователей попадают. И случается это не так уж редко, если в вашем ведении два-три десятка организаций с общим числом компьютеров, выражаемым в сотнях.

А программы эти, как известно, норовят активно использовать Сеть. Пароли, скажем, Ваши отправить злоумышленнику, адресную книгу — спаммерам, а то и включить зараженный компьютер в планируемую DOS-атаку или спам-бот. Не знаете, что это такое? Поинтересуйтесь у Google. Я же только скажу, что за последние несколько месяцев пара-тройка моих клиентов оказывалась в результате подобных инцидентов blacklisted на спам-копах и лишалась, таким образом, минимум на неделю возможности отправки e-mail. Ощутимый удар для какого-нибудь рекламного агентства или издательства. Так что: бди, сисадмин!

Ничего подобного, конечно, не случится, если Вы фильтруете исходящий трафик. Факт заражения локальной станции при этом, однако, иметь место может. А мало ли какие еще фантазии были у вирусописателя? Да и вычислительные ресурсы, которых всегда не хватает, как-то жалко отдавать вирусу — не для этого покупались. Словом, зараженную машину нужно лечить, и, желательно — поскорее.

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

Анализ логов файрвола, как средство поиска поражённых станций — само собой напрашивающееся решение. Если Вы используете моду Performance Graphs, то график "Firewall hits over the last day" всегда покажет, насколько высока была запрещённая активность за последние сутки (а при желании — и за последние неделю, месяц, год). "Всплеск" такой активности — указание на то, что что-то неблагополучное происходит. И если уж такое случилось, то стоит поинтересоваться, кто был виновником этого "всплеска".

Беда в том, что просмотр в окне браузера десятков (а то и сотен — случалось) страниц firewall log — не человеческая задача. В смысле: не для человека. Функция "Export" позволит получить исходный лог (нетрудно догадаться, что это — всего лишь результат фильтрации по времени /var/log/messages), а потом его уже анализировать с помощью grep, wc и т.п. (полагаю, вы знаете что это такое). Уже — лучше. Но, open source это или "где"?! Неужели нельзя заставить smoothwall самого находить зараженные станции? Можно, отчего же. И даже — более того.

Пишем.... Точнее, сначала обращаем внимание на имя cgi-скрипта, выполняющего вывод firewall log. Это, как выясняется, firewalllog.dat. Поскольку корневой каталог http-сервера известен, то полный путь к нужному файлу будет: /httpd/cgi-bin/logs.cgi/firewalllog.dat. Предложение простое: добавить на страницу firewall log ещё одну кнопку и выводить по её нажатию интересующую информацию.

Первое решается вставкой строк

    <TD WIDTH='10%' ALIGN='CENTER'>
      <INPUT TYPE='submit' NAME='ACTION' VALUE='$tr{'info'}'>
    </TD>

Сразу вслед за аналогичными строками, выводящими кнопки "Update" и "Export". Смысл этой операции должен быть очевиден любому мало-мальски знакомому с html.

Так же, как приведенный ниже фрагмент кода должен быть понятен любому, когда-либо писавшему cgi-скрипты.

if ($cgiparams{'ACTION'} eq $tr{'info'}) { # вх. параметр — info
  my %lhosts; # хэш ip станций
  my %netsettings; # хэш параметров сети
  # читаем параметры сети:
  &readhash("${swroot}/ethernet/settings", \%netsettings);
  print "Content-type: text/plain\n\n";
  print "SmoothWall firewall log\r\n";
  print "Date: $cgiparams{'DAY'} $longmonths[$cgiparams{'MONTH'}]\r\n\r\n";

print "station ip\tfirewall hits\r\n\r\n"; # имена колонок
  foreach $_ (@log) { # для всех строк лога
    # заданой даты:
    /(^${monthstr} ${daystr} ..:..:..) [\w\-]+ kernel: (.*)/; 
    my $packet = $2; # описание пакета
    # если пакет исходящий
    if ($packet=~/^IN=$netsettings{'GREEN_DEV'} \S+ SRC=(\S+)/) { 
      my $src=$1; # от кого?
      # дополняем, если нужно, хэш ip станций:
      unless (exists $lhosts{$src}) { $lhosts{$src}=1 }
      # или инкрементируем счётчик вхождений:
      else { $lhosts{$src}+=1 } } }
      # распечатываем с сортировкой по числу вхождений:
  foreach $key (sort {$lhosts{$b}<=>$lhosts{$a}} keys %lhosts) {
      print "$key\t\t$lhosts{$key}\r\n" }

exit 0; }

Место вставки — перед фрагментом, выполняемым в случае, если входным параметром будет export ($cgiparams{'ACTION'} eq $tr{'export'}). Фрагмент не покажется Вам сложным, если Вы обратите внимание, что он на 90% (и в принципе написания) повторяет фрагмент для входного параметра export. На мой взгляд, это даже программированием назвать было бы слишком смело. Результат, однако, вполне удовлетворителен: выбираем дату (если интересуют не текущие сутки), жмём на Info — получаем список станций в порядке убывания количества попыток нарушения правил файрвола.

Наиболее рьяным сторонникам автоматизации можно предложить написать аналогичный независимый скрипт и выполнять его по cron. Раз в сутки, например. С отправкой сообщения на Ваш e-mail, если количество нарушений правил файрвола отдельной станцией превысит, например 500-т. Или — в виде SMS на мобильный, если Ваш оператор принимает SMS-сообщения, отравленные посредством e-mail. И так далее, насколько позволит Ваша фантазия.

А теперь — немного об идеологии. Возможны ли "самоделки", подобные описанной выше, при работе с закрытым коммерческим продуктом? В большинстве случаев — нет. Хотя и закрытый продукт может предоставлять API или средства разработки plugin-ов. Последнее, всё-таки, чаще исключение, чем правило, но не будем на этом останавливаться. Главное, мне кажется, в ином. Отличается сам подход. Пресловутый "unix way", что ли?

Я не знаю, что есть "unix way" в применении к пользовательскому десктопу. Для сервера — более-менее понятно (читайте ESR-а), но, сдаётся мне, что в данном случае уместнее говорить не о собственно "unix way", как его определяет Рэймонд, а об идеологии, которая предшествовала его реализации. Современные программные комплексы настолько сложны, что только независимая разработка компонент допускает участие в них множества программистов, не являющихся сотрудниками одной компании. "Отцы-основатели" unix предложили концепцию, подразумевающую раздельную разработку компонент, движение open source дополнило её требованием открытости кода... и мы имеем "то, что имеем".

Так, стек протоколов TCP/IP, драйверы wi-fi адаптеров, wireless tools Жана Турилье (Jean Tourrilhes), wpa_supplicant Жуни Малинена (Jouni Malinen) и хренова куча сетевых менеджеров wi-fi разрабатываются достаточно независимо. Распространённый на win-форумах запрос "нужна прога" звучит при таких условиях довольно глупо. "Проги", которая сама по себе обеспечила бы поддержку адаптера, протокола 802.11, аутентификацию, шифрование и выбор сети просто не существует. Складывается впечатление, что для движения open source unix way — оптимальная (если не единственно возможная) идеология.

Вопрос в том, хорошо это или плохо. Вон, в ms win большая часть из вышеперечисленного является частью ОС одного производителя. Не достаёт, как правило, только драйвера устройства... Хорошо ведь! Но это — только пользовательская точка зрения. Для индустрии же разнообразие и количество независимых разработок — благо. В любом из смежных секторов экономики подобный вопрос был бы совершенно излишним. Автомобилестроителям не приходит в голову предать анафеме картинг или объявить бесполезной тратой средств разработку болидов Формулы-1. Все понимают, что без картинга не вырастут толковые механики (инженеры, гонщики), а отсутствие Формулы-1 вряд ли пойдёт на пользу прогрессу в отрасли. Претензии к удобству сидения в карте и отсутствию крыши в болиде одинаково глупы. Как и отрицание востребованности комфортабельных седанов или автобусов (в классификации Нила Стивенсона), впрочем.

С другой стороны, проприетарная модель разработки ПО, демонстрирующая исключительную способность лучшим образом соответствовать пожеланиям покупателя, несёт в себе неизбежные изъяны. Ибо основное назначение товара — быть проданным. Рациональность постановки задачи и её оптимальное решение — не главное, был бы покупатель: "за Ваши деньги — любую глупость". Бизнес ИТ-технологий ничем в этом плане не отличается от любого иного. "It's busyness...", как любили повторять мои корейские коллеги по СП, пытаясь оправдать этим любую глупость или мерзость.

Монополия M$ на ОС и проприетарная модель разработки сводит всё многообразие ПО к "системе" и "прогам". В результате монополия с каждым годом усиливается, количество продаж — растёт и только эффективность использования средств ВТ что-то никак не повысится. А с чего бы ей повышаться? Впрочем, кого... волнует?




Комментарии

Страницы комментариев: 1 :: 2 :: 3 :: следующая

САЕшник, Fri Nov 13 21:06:25 2009:
"аноним, суббота, 7 ноября 2009 г. 13:51:18:
>На четверть доли, т.е. ~25% - величина относительная, а не абсолютная

Машина с Linux работает как 25% компьютера с Windows, то есть в 4 раза медленнее. Хватит вводить в заблеждение то быстрее то медленнее!"

Здесь одно из двух: либо Вы так прикалываетесь, либо Вам пора к врачу.
Для второго случая всё-таки попробую разъяснить: предлог "на" в начале цитируемого Вами предложения относится и к 25% тоже.
Если же "аноним, пятница, 6 ноября 2009 г. 19:18:34:" - это тоже Вы, то вдогонку:
Петафлопсы - эта на новейших многотысячеузловых суперкомпьютерах или суперкластерах (навряд ли там когда-нибудь использовали линь, а тем более - винь) при распределённых вычислениях. На моей же одноузловой рабочей станции на базе ПК с проц-ом Q9550 используемое САЕ ПО на винях ХРх64Е выдавало ~18 Гигафлопсов, а на лине х86_64 - ~24 Гигафлопса
Для первого случая добавлю, отвечая на один из возможных Ваших провокационных вопросов: чёткого представления о различии между суперкомп-ами и суперкластерами не имею (как-то заглядывал в Википедию, но это не помогло). Правда, могу предположить, что у суперкомп-ов более высокоскоростной межузловой интерфейс, хотя могу и ошибаться...
аноним, Sat Nov 7 13:51:18 2009:
>На четверть доли, т.е. ~25% - величина относительная, а не абсолютная

Машина с Linux работает как 25% компьютера с Windows, то есть в 4 раза медленнее. Хватит вводить в заблеждение то быстрее то медленнее!
САЕшник, Sat Nov 7 11:31:44 2009:
"аноним, пятница, 6 ноября 2009 г. 19:18:34:
>Всего лишь на четверть...

Петафлопса?"

На четверть доли, т.е. ~25% - величина относительная, а не абсолютная.
аноним, Fri Nov 6 19:27:04 2009:
аноним, пятница, 6 ноября 2009 г. 19:18:34:
>Всего лишь на четверть...

Петафлопса?

Декалитра:)))
аноним, Fri Nov 6 19:18:34 2009:
>Всего лишь на четверть...

Петафлопса?
САЕшник, Fri Nov 6 18:57:23 2009:
"аноним, пятница, 6 ноября 2009 г. 17:29:02:
Вычислительная мощность компьютеров под управлением Linux на стопитцот миллионов тысяч петафлопсов выше чем с установленной Windows..."

Всего лишь на четверть...
аноним, Fri Nov 6 17:51:50 2009:
аноним, пятница, 6 ноября 2009 г. 17:29:47:
Линукс для линуксоидов!
Слава линукс!

да никто и не спорит. дураки и быдло во все времена не переводились. линух, удивительным образом объединяет и тех и других. хе.. хе.. хе..
аноним, Fri Nov 6 17:29:47 2009:
Линукс для линуксоидов!
Слава линукс!
аноним, Fri Nov 6 17:29:02 2009:
Вычислительная мощность компьютеров под управлением Linux на стопитцот миллионов тысяч петафлопсов выше чем с установленной Windows. И тем не мение многие уставливают Windows. Кто они? Конечно тупые мудаки, быдло, дебилы, педики, сталинисты, быдло, быдло, быдло... Муахахахаха фап-фап-фап-фап-фап-фап-фап-фап.
САЕшник, Fri Nov 6 16:55:23 2009:
"Да и вычислительные ресурсы, которых всегда не хватает, как-то жалко отдавать вирусу — не для этого покупались."

Да. Только почему-то я знаю многих людей, которые просто так избавляются от ~40% этих ресурсов, не получая взамен никаких материальных или иных выгод, используя на 64разр. комп-ах 32разр. ПО вместо 64разр...
Парадокс, не правда ли?

Страницы комментариев: 1 :: 2 :: 3 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
Создание сайтов и продвижение в Москве ашманов и партнеры отзывы.
24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds