Книга предназначена для разработчиков и программистов, знакомых с любым языком программирования. В ней рассказано о применении при создании программ на С++ лучшей практики и методов программной инженерии. Специалистам, уже имеющим опыт программирования на С++, эта охватывающая широкий спектр тем книга продемонстрирует, как создавать более надежное, простое в сопровождении и модификации программное обеспечение. Автор рассказывает о принципах объектно-ориентированного программирования (ООП) перед изучением самого языка, что помогает читателю применить все мощные средства ООП для создания программных продуктов. Книга научит читателя пользоваться всеми средствами ANSI/ISO C++ с точки зрения программной инженерии. В ней рассмотрены: классы, методы, модификаторы const, динамическое распределение памяти, построение классов, наследование, полиморфизм, ввод/вывод и многое другое.
Эта книга, в первую очередь, предназначена для тех, кому хотелось бы быстро научиться писать настоящие программы на языке C++. Зачастую новички в C++ пытаются освоить язык чисто механически, даже не попытавшись узнать, как можно эффективно применить его к решению каждодневных проблем. Цель данной книги — научить программированию на C++, а не просто изложить средства языка, поэтому она полезна не только для новичков, но и для тех, кто уже знаком с языком C++ и хочет использовать его в более натуральном, естественном стиле.
Эта книга поможет Вам: - узнать приемы создания программ для Windows - научиться работать с системой программирования Borland C++ Builder 5.0 - освоить язык программирования C++ - применить полученные знания для создания собственных программ - обрести навыки профессии программиста
Пример, который поможет вам программно сменить обои на рабочем столе. Указываем путь к файлу с картинкой и жмем применить. Возможно позже выложу исходник второй версии программы, где обои будут меняться через заданый интервал времени.
Фрикер - это телефонный хакер, но чтобы стать фрикером не обязательно ломать АТС, достаточно лишь изучить все то, что относится к телефонам. Данное издание посвящено безопасности, а также применению электронных устройств для получения (или защиты) информации. Вы узнаете всё о работе АТС, о том, как можно отправить бесплатно факс в любую точку мира и что конкретно для этого необходимо. Также вы узнаете, как перепрограммировав пейджер, использовать его практически на «халяву», существенно снизив размер вносимой абонентской платы и многое другое. Но цель автора этого проекта - дать «ищущему» пользователю максимум информации для того, чтобы он сам мог решить стоит ли применить свои знания в незаконной деятельности или стать профессиональным участником рынка телекоммуникаций.
Издание предназначено для пользователей персонального компьютера, которые интересуются проблемами взлома и защиты телефонных линий, и желают получить исчерпывающие сведения о способах несанкционированного получения информации.
Краткое содержание
1. Что такое CSS и как применить
2. Свойства шрифта
3. Цветовая гамма
4. Свойства текста
5. Свойства текста, содержащего иероглифы
6. Расположение элементов
7. Границы элементов
8. Классификации
9. Принтер
10. Псевдостили гиперссылок
11. Псевдостили текста
12. Правила
13. Единицы измерения CSS
14. Фильтры в Internet Explorer
15. Статические фильтры
16. Динамические фильтры
Эта книга поможет освоить интегрированную среду разработки VBA и научиться программировать в VBA с использованием объектов, их свойств, методов и событии. Обсуждаемые приемы программирования иллюстрируются примерами, которые можно сразу же опробовать на практике. Полученные знания вы сможете применить как для настройки и усовершенствования популярных офисных приложений, включая приложения Office 2000, так и для создания собственных приложений. Книга рассчитана на тех, перед кем стоит задача быстро и без лишних усилий научиться программировать для Windows, используя VBA.
Поиск по шаблону является настолько обычным занятием в разработке программного обеспечения, что для облегчения этой задачи была создана специальная технология — регулярные выражения. Узнайте, как можно использовать ее при написании кода, прочитав эту статью.
Все устройства получают входную информацию, выполняют какие-либо операции и выдают результат. Например, телефон во время разговора преобразует звуковую энергию в электрический сигнал и обратно. Двигатель потребляет топливо (пар, расщепление атомных ядер, бензин, мышечные усилия) и преобразует его в энергию. Блендер поглощает ром, лед, лайм и кюрасао и взбалтывает их в коктейль Mai Tai. (Или, если вам хочется чего-то изысканного, сделайте Bellini из шампанского и грушевого сока. Блендер – замечательное универсальное устройство.)
Так как программное обеспечение преобразует данные, то каждое приложение фактически является устройством (хоть и виртуальным, так как у него нет физических составляющих). Например, компилятор в качестве входной информации получает исходную программу и преобразует ее в двоичный исполняемый код. Программа прогнозирования погоды генерирует предсказания на основе результатов прошлых (исторических) замеров, а графический редактор обрабатывает пикселы, применяя правила к отдельным пикселам или их группам, чтобы, например, сделать изображение более четким или изменить его стиль.
Так же, как и любое другое устройство, программное обеспечение предназначено для работы с определенным исходным материалом, например, набором чисел, данными XML-схемы или протоколом. Если программе задать некорректную входную информацию — неподходящую по форме или типу, то существует большая вероятность того, что результат будет непредсказуемым и, возможно, даже катастрофическим. Как говорится: "Мусор заложишь - мусор получишь".
На самом деле для решения всех нетривиальных задач необходимо отделять правильные данные от некорректных и отклонять некорректные данные во избежание ошибок в результатах. Это, конечно же, актуально и для Web-приложений, написанных на языке PHP. Неважно, получены ли входные данные из формы для ввода с клавиатуры или в результате выполнения программного запроса Asynchronous JavaScript + XML (Ajax), прежде чем начать какие-либо вычисления, программа должна проверить входную информацию. Возможно, что числовые значения должны находиться в пределах определенного диапазона чисел или представлять собой только целые числа. Возможно, значение должно соответствовать определенному формату, например, почтового индекса. Например, почтовый индекс в США представляет собой пять цифр плюс дополнительный префикс "Plus 4", состоящий из дефиса и 4 дополнительных цифр. Возможно, другие строки также должны состоять из определенного количества символов, например, две буквы для указания аббревиатуры штата США. Строковые данные доставляют особенно много проблем: PHP-приложение должно быть начеку по отношению к злонамеренным программам-агентам, вложенным в SQL-запросы, код JavaScript или любой другой код, которые способны изменить поведение приложения или обойти защиту.
Однако каким образом программа может определить, являются ли входные данные числом или соответствуют ли определенным требованиям, например, к почтовому индексу? На самом деле для реализации проверки путем сопоставления с шаблоном необходим небольшой парсер, создающий конечный автомат, считывающий входные данные, обрабатывающий маркеры, отслеживающий состояние и выдающий результаты. Однако создание и обслуживание даже самого простого парсера может оказаться непростым делом.
К счастью, анализ на основе сопоставления с шаблоном настолько широко распространен в компьютерных технологиях, что с течением времени (примерно с момента появления UNIX®) были разработаны специальные технологии и, конечно же, механизмы обработки, чтобы облегчить рутинную работу. Регулярное выражение (regex) описывает шаблоны посредством лаконичных и удобочитаемых обозначений. Получив регулярное выражение и данные, механизм regex сообщает, совпадают ли эти данные с шаблоном, и если совпадение было обнаружено, что именно совпало.
Вот небольшой пример использования регулярного выражения, взятый из UNIX-утилиты, работающей в режиме командной строки, которая ищет заданный шаблон в содержимом одного или нескольких текстовых файлов UNIX. Команда grep -i -E '^Bat' ищет последовательность символов beginning-of-line (начало строки), обозначаемое "крышкой", [^]), за которым следуют буквы b, a, и t верхнего или нижнего регистра (ключ -i указывает на то, что при сопоставлении с шаблоном регистр не учитывается, таким образом, например, B и b - тождественны). Следовательно, для файла heroes.txt:
Листинг 1. heroes.txt
Вышеупомянутая команда grep выдаст два совпадения:
Batman
Batgirl
Регулярные выражения
PHP предлагает два программных интерфейса регулярных выражений: один -- для интерфейса переносимых операционных систем (POSIX), а второй - для регулярных выражений, совместимых с языком Perl (PCRE). В общем и целом второй интерфейс является более предпочтительным, так как PCRE сам по себе мощнее, чем POSIX, и предоставляет все операторы, используемые в языке Perl. Более подробная информация по обращению к regex-функциям POSIX представлена в документации по языку PHP (см. раздел Ресурсы). В данной статье мы сосредоточим свое внимание на свойствах PCRE.
Регулярные выражения PHP PCRE содержат операторы, позволяющие путем сопоставления находить конкретные символы или другие операторы, определенные местоположения, например, начало и конец строки, начало или конец слова. Регулярные выражения также позволяют описывать альтернативы, которые можно задать альтернативы типа "или"-"или"; повторения фиксированной, изменяемой или неопределенной длины; наборы символов (например, "любая буква от a до m"); и классы, или типы символов (печатаемые символы, знаки препинания). Специальные операторы также разрешают использовать группировку — возможность применить оператор к целой группе других операторов.
В таблице 1 показаны некоторые типичные операторы регулярных выражений. Для создания сложных выражений можно последовательно объединять элементарные операторы из таблицы 1 (и другие).
Таблица 1. Типичные операторы регулярных выражений
Оператор Значение
. (точка) Любой одиночный символ
^ (крышка) Пустая последовательность в начале строки или цепочки
$ (знак доллара) Пустая последовательность в конце строки
A Буква A верхнего регистра
a Буква a нижнего регистра
\d Любая цифра
\D Любой нецифровой символ
\w Любая буква или цифра; синоним - [:alnum:]
[A-E] Любая заглавная буква из A, B, C, D или E
[^A-E] Любой символ, за исключением заглавных букв A, B, C, D или E
X? Найти совпадение по отсутствию или наличию одной заглавной буквы X
X* Ни одной или любое количество заглавных букв X
X+ Одна или несколько заглавных букв X
X{n} Ровно n заглавных букв X
X{n,m} Не менее n и не более m заглавных букв X; если опустить m, то выражение будет искать не менее n заглавных букв X
(abc|def)+ По меньшей мере одно вхождение последовательности abc и def
В следующем примере показано типичное использование регулярного выражения. Например, для web-сайта необходимо, чтобы каждый пользователь регистрировался. Имя пользователя должно начинаться с буквы и содержать от 3 до 10 буквенно-цифровых символов. Для проверки имени пользователя на соответствие ограничениям при отправке данных в приложение можно использовать следующее регулярное выражение: ^[A-Za-z][A-Za-z0-9_]{2,9}$.
Знак "крышка" соответствует началу строки. Первый набор [A-Za-z] соответствует любой букве. Второй набор [A-Za-z0-9_]{2,9} соответствует последовательности, содержащей от 2 до 9 букв, цифр или символов подчеркивания. Знак доллара ($) соответствует концу строки.
На первый взгляд, знак доллара может показаться лишним, однако его использование важно. Если его пропустить, то условиям данного регулярного выражения будет отвечать любая строка, которая начинается с буквы, содержит от 2 до 9 буквенно-цифровых символов и любое количество других символов. Иными словами, если бы не было знака доллара как привязки к концу строки, то подошла бы недопустимо длинная строка с подходящим началом, например, "martin1234-cruft" .
Программирование на языке PHP и регулярные выражения
В PHP есть функции для поиска совпадений в тексте, замены каждого совпадения на другой текст (похоже на операцию "найти и заменить") и поиска совпадений среди элементов списка. Вот эти функции:
Чтобы показать, как работают эти функции, давайте создадим небольшое PHP-приложение, которое будет просматривать список слов на соответствие определенному шаблону. Слова и регулярные выражения будут вводиться из обычной web-формы, а результаты отображаться в браузере посредством функции simple print_r(). Эта программка пригодится, если возникнет желание проверить или отладить регулярное выражение.
PHP-код показан в листинге 2. Все входные данные берутся из обычной HTML-формы. (Для краткости эту форму и PHP-код, отслеживающий ошибки, опустим.)
Листинг 2. Сравнение текста с шаблоном
Вначале с помощью функции preg_split() строка из слов, разделенных запятыми, преобразуется в отдельные элементы. Данная функция разбивает строку в тех местах, которые соответствуют условиям регулярного выражения. В данном случае регулярное выражение представляет собой просто "," , (запятая - разделитель списка слов, указанных через запятую). Слэш в начале и в конце просто показывает начало и конец regex.
Третий и четвертый аргументы функции preg_split() необязательны, но полезны. Добавьте в третий аргумент число n целого типа, если необходимо вернуть только первые n совпадений, или -1, если необходимо вернуть все совпадения. Если в качестве четвертого аргумента задать идентификатор PREG_SPLIT_NO_EMPTY, то функция preg_split() не будет возвращать пустые результаты.
Затем каждый элемент списка слов, разделенных запятыми, корректируется (убираются начальные и конечные пробелы) с помощью функции trim() и сравнивается с заданным регулярным выражением. Функция preg_grep() существенно упрощает процесс обработки списка: просто укажите в качестве первого аргумента шаблон, а в качестве второго - массив слов для сравнения. Функция возвращает массив совпадений.
Например, если в качестве шаблона задать регулярное выражение ^[A-Za-z][A-Za-z0-9_]{2,9}$ и список слов разной длины, то можно получить результат, показанный в листинге 3.
Листинг 3. Результат работы простого регулярного выражения
Кстати, с помощью дополнительного маркера PREG_GREP_INVERT можно инвертировать операцию preg_grep() и найти элементы, которые не совпадают с шаблоном (аналогично оператору grep -v в командной строке). Заменяя 22 строку на $matches = preg_grep( "/${_REQUEST[ 'regex' ]}/", $words, PREG_GREP_INVERT ) и используя входные данные из листинга 3, мы получим Array ( [1] => 1happy [2] => hermanmunster ).
Разбор строк
Функции preg_split() и preg_grep() очень удобны. Первая из них может разбирать строку на подстроки, если подстроки разделяются определенным шаблоном. Функция preg_grep() позволяет быстро отфильтровать список.
Но что произойдет, если строку нужно разобрать на составные части, используя одно или несколько сложных правил? Например, в США номера телефонов обычно выглядят следующим образом: "(305) 555-1212," "305-555-1212," или "305.555.1212." Если убрать пунктуацию, то количество символов сократится до 10 цифр, что легко можно определить с помощью регулярного выражения \d{10}. Однако код и префикс (каждый из которых состоит из трех цифр) телефонного номера США не могут начинаться с нуля или единицы (так как нуль и единица используются как префиксы для междугородных звонков). Вместо того чтобы разбивать числовую последовательность на отдельные цифры и создавать сложный код, для верификации можно использовать регулярное выражение.
Фрагмент кода позволяющий решить эту задачу, показан в листинге 4.
Листинг 4. Проверка американского телефонного номера
Давайте пройдем по этому коду:
* Как показано в таблице 1, в регулярных выражениях используется ограниченный набор специальных символов, например, квадратные скобки ([ ]) для наименования последовательности. Если надо найти такой символ в тексте, необходимо "выделить" специальный символ в регулярном выражении, поставив перед ним обратный слэш (\). Когда символ выделен, можно задать его посик, как и любого другого символа. Если нужно найти символ точки, например, в полном составном имени хоста, то напишите \.. При желании строку можно подать в функцию preg_quote() которая выполняет автоматическую изоляцию всех специальных символов регулярных выражений, как показано в строке 1. Если поставить echo() $punctuation после первой строки, то вы должны увидеть \(\)\.-.
* В строке 2 из телефонного номера убираются все знаки пунктуации. Функция preg_replace() заменяет все символы из $punctuation — операторы из набора [ ] - пустой строкой, эффективно устраняя такие символы. Возвращаемая новая строка присваивается переменной $number.
* В строке 4 определен шаблон верифицируемого телефонного номера США.
* Строка 5 реализует сопоставление, сравнивая телефонный номер, который теперь состоит только из цифр, с шаблоном. Функция preg_match() возвращает 1, если есть совпадение. Если совпадения нет, функция preg_match() возвращает нулевое значение. Если во время обработки возникла ошибка, то функция возвращает значение False (ложно). Таким образом, чтобы проверить удачное завершение, необходимо посмотреть, было ли возвращено значение 1. В противном случае проверьте итоговое значение функции preg_last_error() (если используется PHP версии 5.2.0 или выше). Если оно не равно нулю, то, возможно, был превышен лимит вычислений, например, разрешенная глубина рекурсии регулярного выражения. Обсуждение констант и ограничений, применяемых в регулярных выражениях PHP, представлено на странице, посвященной функциям регулярных выражений PCRE (см. раздел Ресурсы).
Извлечение данных
Во многих случаях необходимо только получить ответ на вопрос: "Соответствуют ли данные шаблону?" – например, при проверке данных. Однако чаще регулярные выражения используются для подтверждения соответствия и получения информации о совпадении.
Вернемся к примеру с телефонным номером. Пусть при соответствии шаблону нам необходимо сохранить код, префикс и номер линии в отдельных полях базы данных. Регулярные выражения могут запоминать совпадающие с шаблоном данные с помощью оператора capture. Оператор capture обозначается круглыми скобками и может использоваться в любой части регулярного выражения. Операции capture можно делать вложенными для поиска подсегментов в извлеченных сегментах данных. Например, чтобы из 10-значного номера телефона извлечь код города, префикс и номер линии, можно использовать следующую строку:
/([2-9][0-9]{2})([2-9][0-9]{2})([0-9]{4})/
Если входные данные соответствуют шаблону, первые три цифры захватываются первой парой круглых скобок, следующие три цифры - второй парой, а последние 4 цифры - последним оператором. Модификация вызова функции preg_match() возвращает извлеченные данные.
Листинг 5. Возврат извлеченных данных функцией preg_match()
Если в качестве третьего аргумента функции preg_match() указать переменную, например, в нашем коде, $matches, то в качестве ее значения будет выступать список извлеченных результатов. Нулевой элемент списка (с индексом 0) - это все совпадение целиком; первый элемент - совпадение, относящееся к первой паре круглых скобок, и так далее.
Вложенные операторы capture извлекают сегменты и подсегменты фактически любой глубины. Сложность с вложенными операторами capture состоит в том, чтобы определить, в какой части массива соответствий находится каждое соответствие, например, $matches. Действует следующее правило: подсчитайте порядковый номер открывающей скобки в регулярном выражении — этот номер и будет индексом нужного совпадения в массиве соответствий.
В листинге 6 показан пример (немного надуманный) извлечения частей городского адреса.
Листинг 6. Код для извлечения городского адреса
Опять все совпадение целиком хранится по индексу 0. А где хранится номер улицы? Если считать слева направо, номер улицы проверяется \d+. Это вторая открывающая круглая скобка слева, следовательно, значением $matches[2] будет 123. В $matches[4] оказывается название города, а в $matches[6] - почтовый индекс.
Продвинутые технологии
Обработка текста – широко распространенная задача, и PHP предоставляет ряд функций, упрощающих выполнение большого числа операций. Обратите внимание на следующее:
* Функция preg_replace() может работать как с одной строкой, так и с массивом строк. Если вызвать preg_replace() для массива строк, замена будет выполнена во всех элементах массива. В этом случае код preg_replace() возвращает массив измененных строк.
* Как и во всех остальных реализациях PCRE, здесь для осуществления замены можно прибегать к сравнению с вложенным шаблоном. Для наглядности давайте рассмотрим проблему стандартизации формата телефонного номера. Заменим все знаки пунктуации точками. Наше решение показано в листинге 7.
Листинг 7. Замена знаков пунктуации точками
Сопоставление с шаблоном и, в случае совпадения, перевод в стандартный телефонный номер выполняется за один шаг.
Часто работая в Фотошоп, приходится выполнять целый ряд постоянно повторяющихся операций. Такие операции выстраиваясь определенным образом, образуют цепочку команд - макропоследовательностей. Чтобы не повторять последовательность одних и тех же команд снова и снова, можно задействовать инструменты автоматизации. Одним из таких инструментов является Actions.
Автоматизация работы в Photoshop.
Часто работая в Фотошоп, приходится выполнять целый ряд постоянно повторяющихся операций. Такие операции выстраиваясь определенным образом, образуют цепочку команд - макропоследовательностей. Чтобы не повторять последовательность одних и тех же команд снова и снова, можно задействовать инструменты автоматизации. Одним из таких инструментов является Actions. Action - это записанный набор команд, которые можно быстро повторить. За такими макропоследовательностями также можно закреплять клавиатурные сокращения, то есть для их выполнения достаточно нажать клавишу или сочетание клавиш.
Для работы с Actions используется одноименная палитра. Чтобы увидеть эту палитру, следует выполнить команду Window>Actions или нажать клавишу F9.
Стандартные Actions
По умолчанию в Photoshop уже есть стандартный набор записанных команд, поэтому списки последовательно выполняющихся команд можно создавать самостоятельно, а можно воспользоваться уже готовыми. Например, используя стандартный макрос для создания виньетки (Vignette), достаточно выделить область на изображении и нажать кнопку его запуска.
Таким образом, все макропоследовательности состоят из команд, которые являются последними ступеньками в раскрывающемся списке.
Для удобства работы, макропоследовательности объединяются в наборы - Sets. Например, можно создать набор, в котором будут собраны макросы для работы с текстом, для создания различных текстур и т.д. По умолчанию в Photoshop есть набор Default Actions.
Палитра Actions содержит наборы различных последовательностей. Чтобы их увидеть, необходимо щелкнуть на треугольнике, расположенном слева от названия набора. После этого перед вами появится список действий, любое из которых может быть выполнено. Если вы хотите увидеть, из каких операций состоят действия, то следует щелкнуть на треугольнике, расположенном слева от них.
Внизу палитры расположены кнопки, позволяющие управлять действиями - создавать новые, запускать и останавливать запись и т.д.
Просмотрите все предлагаемые Actions на изображении с небольшим разрешением (на нем макрокоманды будут выполняться быстрее). После такого просмотра можно сформировать свою палитру, оставив понравившиеся элементы и удалив те, которые вам никогда не пригодятся. Можно также изменить названия, чтобы стало понятнее, где какая возможность скрывается.
Если какое-нибудь действие вам очень понравилось, то посмотрите, как оно было сделано. Для этого следует обратиться к палитре Actions и, раскрыв все списки, просмотреть последовательность выполняемых операций.
Лучше всего не только просмотреть, как выполнялись операции, но и попытаться добиться такого же эффекта, проделав самостоятельно все действия, особенно если вы неопытный пользователь. Это поможет лучше узнать программу, а также ознакомиться с возможностями, которые она предоставляет. Кроме того, в процессе работы можно будет изменить некоторые параметры, подобрав их для конкретного изображения.
Создание собственных макрокоманд
Можно не только пользоваться готовыми макрокомандами, но и создавать свои собственные.
Приведем пример ситуации, в которой они могу оказаться полезными. Предположим, вы хотите выложить фотографии в интернете. Прежде чем публиковать их в сети, нужно выполнить цветокоррекцию и уменьшить размер. Допустим, вы решили делать цветокоррекцию в режиме Lab Color.
Рассмотрим список действий, которые необходимо выполнить с каждым изображением:
1) Выполнить команду Image>Mode>Lab Color, чтобы перевести снимок в цветовое пространство Lab Color.
2) Повысить четкость изображения, для чего нужно перейти на палитру Channels, выделить канал Lightness и применить к нему фильтр Sharpen>Unsharp Mask. Благодаря тому, что фильтр применяется в канале освещенности, можно повысить резкость изображения, не затрагивая цветовую составляющую.
3) Улучшить цвета на изображении, для чего нужно выделить цветовой канал b, вызвать окно редактирования кривых, выполнив команду Image>Adjustments>Curves или же используя сочетание клавиш CTRL+M, и изменить форму кривой. Чем круче график кривой, тем более контрастным становится изображение в канале, и тем более насыщенными становятся цвета на снимке.
4) Выделить цветовой канал a и проделать те же действия с изменением формы кривой.
5) Наконец, нужно изменить размер изображения, используя команду Image>Image Size.
Если после этого отобразить палитру History, можно увидеть, что пришлось выполнить целый ряд команд и действий, чтобы обработать фотографию. Эти действия нужно было бы повторять с каждой следующей фотографией, которую вы хотите выложить в интернете.
Задачу можно существенно упростить, используя Actions. Вернемся к исходному изображению, используя палитру History, и создадим собственный макрос. Сначала создадим новую группу для хранения макросов. Для этого нужно нажать кнопку Create New Set в нижней части палитры Actions.
В окне New Set введим название набора команд. Создадим в новой группе первый макрос, нажав кнопку Create New Action. В появившемся окне New Action выберем название макроса и клавишу, при нажатии которой он будет запускаться, например, F11. Для вызова макропоследовательностей можно использовать клавиши F2-F12, а также их сочетания с клавишами CTRL и Shift.
Для начала записи необходимо нажать кнопку Record в нижней части палитры Actions. Теперь любая команда, выполненная в Photoshop, будет запоминаться до тех пор, пока вы не остановите запись макроса.
Скроем палитру Actions, чтобы она не мешала, и повторим выполненные ранее действия: переведем изображение в Lab Color, увеличим резкость, изменим цветопередачу и уменьшим размер изображения при помощи команды Image Size.
После этого вернемся на палитру Actions и остановим запись, нажав кнопку Stop Playing/Recording. В списке нашего макроса можно увидеть записанную последовательность команд. Также рядом с названием макроса отображается горячая клавиша, которая выбрана для его запуска.
Чтобы проверить действие макроса, вернемся к исходному изображению, используя палитру History, и нажмем горячую клавишу, которую вы выбрали для выполнения макроса. Можно убедиться, что все действия выполняются автоматически и довольно быстро. Макрос также можно запускать, нажимая кнопку Play Selecтion в нижней части палитры Actions, если предварительно выделить его в списке макрокоманд.
Записав макрос, посмотрите, как макрокоманда сработает на другой фотографии. Откройте изображение в Photoshop и снова запустите макрос горячей клавишей. Как вы можете убедиться, макрос работает.
Таким образом, благодаря макросам на подготовку фотографий для публикации в интернете может уходить гораздо меньше времени. Достаточно нажать горячую клавишу - и можно сохранять изображение.
Сохранение макрокоманд
В ряде случаев, например, при переустановке системы или при необходимости использовать созданные ранее макросы на другом компьютере, возникает необходимость сохранить Actions. Такая возможность предусмотрена в Photoshop.
Actions нельзя сохранять по отдельности, только в наборах. Поэтому для сохранения макропоследовательностей выделите на палитре Actions тот набор, в который они входят, после чего нажмите миниатюрную кнопку, расположенную в верхней правой части палитры (под кнопкой для сворачивания палитры) и выберите команду Save Actions. Если при этом будет выделен не набор, а отдельный макрос, эта команда будет неактивна.
Наборы макросов сохраняются в файлы с расширением ATN. Для загрузки сохраненного ранее набора в Photoshop необходимо щелкнуть по той же кнопке на палитре Actions и выбрать команду Load Actions.
Инструмент Batch
В Photoshop есть еще одно средство для автоматизации, которое удобно использовать вместе с Actions. Это - инструмент пакетной обработки Batch. С его помощью можно применить макропоследовательность к группе файлов, даже не открывая их в Photoshop.
Приведем простой пример использования этого инструмента. Предположим, необходимо перед публикацией фотографий в интернете защитить свое авторское право. Для этого можно добавить на фотографии какой-нибудь текст, например, адрес сайта.
Для начала запишем в макрос все действия, которые необходимо выполнить. Создадим новый Action и начнем запись. Макрос будет состоять из трех действий: добавление на изображение текста, сохранение изображения в формате JPEG и закрытие исходного файла. После выполнения этих операций остановим запись макроса.
Выполним команду File>Automate>Batch. В окне Batch необходимо установить настройки пакетной обработки файлов. В разделе Play выбирается группа, в которую сохранен макрос и его название.
В разделе Source необходимо указать путь к папке, содержащей исходные файлы. Если установить флажок Include All Subfolders, то будут обработаны и файлы, которые находятся во вложенных папках.
В разделе Destination устанавливаются параметры сохранения файлов. Если выбрать в этом списке вариант None, то файлы не будут сохраняться автоматически. Вместо этого Photoshop будет выдавать запрос на сохранение каждого файла. При выборе варианта Save and close файлы будут сохранены в ту же папку, где хранятся исходные изображения.
Для того чтобы файлы были автоматически сохранены, нужно выбрать в списке Destination вариант Save and close. При выборе варианта Folder появляется возможность указать папку для сохранения обработанных файлов. Кроме этого, можно переименовать их, используя маску. Название файла может включать исходное имя, представленное строчными или заглавными буквами, дату выполнения операции в разных форматах, порядковый номер, букву алфавита, расширение.
Флажок Override Action Save As Commands нужно использовать осторожно. Если он установлен, то файлы будут сохранены только в том случае, если операция сохранения является одним из шагов макроса.
Для запуска пакетной обработки необходимо закрыть окно Batch, нажав кнопку OK. После этого файлы будут один за другим открываться в Photoshop, к ним будут применяться заданные операции, после чего они будут закрываться и сохраняться.
Batch и Actions - это очень полезные инструменты Photoshop, которые могут сэкономить не один час времени. Кроме этого, Actions могут стать хорошим пособием для изучения программы - загрузите в Photoshop наборы макропоследовательностей, созданные опытными пользователями, и пошагово разберите, как они работают.
Как только появляется желание перейти с Windows на другие платформы или на веб-приложения, возникает проблема: там же нет «Фотошопа»! Этот популярный графический пакет благодаря пиратам есть сейчас на большинстве компьютеров в СНГ. И найти альтернативу этой программе сложно. Но как мы используем такую мощную программу? В основном это изменить размеры, подкорректировать яркость, иногда убрать лишние детали, да отправить на е-мейл подружке.
Лучшие графические редакторы, написанные на Flash.
Как только появляется желание перейти с Windows на другие платформы или на веб-приложения, возникает проблема: там же нет «Фотошопа»! Этот популярный графический пакет благодаря пиратам есть сейчас на большинстве компьютеров в СНГ. И найти альтернативу этой программе сложно. Но как мы используем такую мощную программу? В основном это изменить размеры, подкорректировать яркость, иногда убрать лишние детали, да отправить на е-мейл подружке.
Разве нужен для этого полноценный Photoshop? Конечно же, нет, если только вы не дизайнер-профессионал высокого класса. Поэтому найти аналог будет намного проще. Но искать аналог среди настольных программ скучно и неинтересно. Мы живем в век Web 2.0 и поэтому искать аналоги будем среди веб-приложений. Развитие графических возможностей Flash позволяет получить весьма интересные результаты. Описываемые редакторы не станут полной заменой «Фотошопа», но для небольших фотокоррекций они пригодятся.
72photos
Это скорее не редактор а фотогалерея с возможностью слегка подредактировать сохраненные снимки. Функции рисования здесь нет. Можно наложить эффекты на снимок, подправить цветопередачу, яркость и обрезать лишнее. Также есть размытие/резкость и несколько стандартных фильтров. Все достаточно среднее, ничего выдающегося, но как интересное применение возможностей Flash подойдет. Из полезных особенностей стоит отметить возможность работы с картинками, сохраненными на других фотохостингах, впрочем, из очень небольшого списка. FotoFlexer
Редактор, обладающий рядом неоспоримых достоинств, но есть и некоторые недостатки.
Это абсолютный лидер по реализованным функциям. Он поддерживает большое количество фотохостингов, с которых можно загрузить фотографии для редактирования, возможна загрузка просто по URL, что позволяет редактировать любую картинку, также есть загрузка картинок с компьютера пользователя. Чтобы сохранять файл, куда вам надо, придется регистрироваться. И просто на компьютер файл не отдадут. Придется выдирать с какой-то файлопомойки. Или регистрироваться. Мелочь, но неприятно.
Огромное количество эффектов и инструментов. Можно рисовать, накладывать эффекты, трансформировать картинку. Есть готовые для добавления графические примитивы, позволяющие создавать фотографии со вставкой лиц друзей. Здесь же можно и рамочки прикрутить и постер оформить. В общем, раздолье для бытового фотографа. Правда подписать фотографии не получится, русский текст программа не понимает.
Есть инструменты и для более серьезной публики. Сложные трансформации, инструменты выделения и перекрашивания, аналогичные привычным инструментам, даже кое-какая поддержка слоев.
Аналогов по функциональности среди онлайн-сервисов на сегодня нет.
Phoenix
Редактор с продуманным интерфейсом. Без регистрации работать отказывается. Зато потом способен открывать файлы не только со своего сервера и компьютера пользователя, но и со сторонних сервисов и по URL. Неплохой набор фильтров и эффектов. Есть полноценное рисование с возможностью русских надписей. Поддерживаются слои. Правда иногда серверная часть дает сбои при сохранении. Да и само приложение могло бы работать побыстрее. В остальном же отличный редактор.
Photoshop Express
Эта программа считается аналогом настольного Photoshop от создателей Photoshop. Но на самом деле она больше напоминает вышеупомянутый редактор 72photos, только более качественно исполненный. Это фотохостинг, можно просматривать галереи других пользователей, комментировать их. При этом интеграции со сторонними сервисами нет, работать можно только с фотографиями, загруженными с компьютера пользователя. Возможности редактора скромны, изменение размеров, повороты, немного эффектов. Рисования нет.
И все-таки, имеющиеся функции реализованы качественно, работает все очень быстро. Сказывается, что авторы разрабатывали не только Photoshop, но и собственно Flash. Получившимся продуктом приятно пользоваться. И, вероятней всего, следует ожидать дальнейшего развития. PicMagick
Самый элементарный и примитивный из рассматриваемых редакторов. Позволяет только загрузить картинку с компьютера, наложить стандартный набор эффектов и получить обратно свою фотографию. Возможностей сохранения на сервере, рисования и интеграции с другими сервисами нет. Минимализм в чистом виде. Даже регистрации нет. Редактор сразу готов к работе. При этом особой скоростью работы не отличается. Единственная особенность, выделяющая из ряда прочих редакторов — фильтр коррекции кожи. Впрочем, достоинство сомнительное, того же можно добиться и другими инструментами. Picnik
Этим редактором пользуются на популярном фотохостинге Flickr в качестве стандартного. Пользоваться этим редактором могут все желающие. Даже без регистрации. Закачать картинки можно с компьютера, из популярного фотохостинга или блога, с любого URL. Редактор понимает не только стандартные web-типы графики, но и большое количество других распространенных форматов. По этому параметру Picnik — абсолютный лидер.
Хорош он и в реализации. Долгий старт приложения компенсируется большим количеством эффектов и инструментов. Несколько уступая FotoFlexer, он опережает остальных конкурентов. Вот только рисования в чистом виде нет. Можно только накладывать готовые графические примитивы. И ввести русский текст нельзя, получаются сплошные вопросительные знаки.
Сохранять полученный результат можно тоже как у себя на компьютере, так и на популярных хостингах. А можно и сразу на е-мейл. Причем в разнообразных форматах. Pixer.us
Правда это в общем-то и не совсем Flash-редактор. Он написан на Javascript, что уже само по себе интересно. Да и на полноценный редактор сервис не тянет. Вы можете загрузить фотографию со своего компьютера, применить к ней ряд эффектов и сохранить обратно. И все. Работает все достаточно быстренько, но без изысков. Рисования нет. Но как демонстрация возможностей безфлешевых технологий, редактор интересен. К примеру, если сравнивать его с Picmagick, то поединок будет как минимум равным.
Pixlr
Это редактор в чистом виде, без хостинга. Зато есть API, что возможно позволит встраивать редактор в сторонние приложения. Редактор один из семейства клонов фотошопа. Есть русская локализация, чего нет у многих других редакторов. Соответственно, русские надписи делать тоже можно.
Отличная оптимизация работы. Все открывается быстро. Отличный функционал. Есть даже столь любимый Magic Wand. Слои и фильтры тоже на месте, хотя набор инструментов мог бы быть побольше. Впрочем, все основные примочки на месте. Да и интерфейс опять-таки навевает воспоминания о фотошопе. Приятный в работе, продуманный редактор.
Splashup
Очередной гибрид фотохостинга и неплохого редактора. Есть слои, эффекты, полноценное рисование. Русский язык не работает, а вот все остальное на достойном уровне. Можно загрузить свою картинку с компьютера, из интернета (поддержка фотохостингов и прямых URL), отредактировать и сохранить в различных местах.
Очень удобный, приятный интерфейс, отличная скорость работы. Достойный представитель онлайн-редакторов, пытающихся копировать Photoshop.
SUMO Paint
Солидный редактор, близок к настольному приложению как по внешнему виду, так и по функциональному. Правда, оторван от большого интернета. Ни загрузки по URL, ни интеграции с другими сервисами нет. Только аккаунт на собственном сервере и загрузка с компьютера (которая работает не очень уверенно).
Зато функционал впечатляет. Тут нет приевшихся рамочек и цветочков, только серьезные инструменты. Полноценная поддержка слоев, разнообразные эффекты и фильтры. Чем-то напоминает старые версии Photoshop. Очень достойная разработка. И даже поддержка русских шрифтов в наличии. Если поправят проблемы с загрузкой фотографий, будет замечательно.
Конечно неодин из онлайн-редакторов не составит конкуренцию Photoshop. Если в базовых инструментах как-то еще можно соперничать, то когда речь заходит о сложных фильтрах, Photoshop в не конкуренции. А представить себе в онлайн варианте пакетную обработку или плагины и вовсе невозможно. И, конечно, профессионалы не откажутся от привычного инструмента. Зато для обычных пользователей возможности онлайн-редакторов уже сегодня могут вполне пригодиться.
И будущее у этого направления весьма светлое.
Данная публикация предназначена для тех кто делает первые шаги в PHP-программировании.
В статье приводятся примеры часто используемых методов работы с текстом.
После каждого примера идет краткое описание используемых функций.
Данная публикация предназначена для тех кто делает первые шаги в PHP-программировании. В статье приводятся примеры часто используемых методов работы с текстом. После каждого примера идет краткое описание используемых функций, описания взяты из официального руководства PHP. Примеры будут пополнятся по мере поступления вопросов от читателей.
Урок №1
Заменяем {text}, например на слово "студёную", строгий регистр, т.е. заменится только {text}, но не {TexT}:
str_replace (search, replace, subject)
Эта функция возвращает строку или массив со всеми вхождениями search в subject, заменёнными данным значением replace.
Урок №2
Заменяем "летнюю", например на слово "зимнюю", нестрогий регистр, т.е. заменится "летнюю", "ЛЕТНЮЮ", "Летнюю", "леТНюю" и т.д.
preg_replace (pattern, replacement, subject)
Эта функция выполняет поиск и замену регулярного выражения.
Ищет в subject совпадения с pattern и замещает их replacement, где pattern - это регулярное выражение, с которыми мы познакомся позже.
Урок №3
Считываем первые 5 символов из текста:
substr (string, start [, length])
Substr возвращает часть строки string, специфицированную параметрами start и length.
Если start положительный, возвращаемая строка начинается со start'овой позиции в string, отсчитываемой от нуля. Например, в строке 'abcdef' символ в позиции 0 это 'a', символ в позиции 2 это 'c', и так далее.
Урок №4
Считываем последние 5 символов из текста:
Урок №5
Удаляем первые 5 символов из текста:
Урок №6
Удаляем последние 5 символов из текста:
Урок №7
Считываем символы с 3-го по 7-ой:
Урок №8
Заменяем все буквы в тексте на маленькие:
strtolower (string)
Возвращает string со всеми алфавитными символами, конвертированными в нижний регистр.
Урок №9
Заменяем все буквы в тексте на большие:
string strtoupper (string)
Возвращает string со вмеси алфавитными символами, конвертированными в верхний регистр.
Урок №10
Меняем все буквы в тексте на маленькие и делаем самую первую букву заглавной:
ucfirst (string)
Возвращает строку с первым символом в верхнем регистре, если это алфавитный символ.
Урок №11
Замена нескольких пробелов на один:
Урок №12
Удаление лишних пробелов по левому и правому краю текста:
trim (string)
Эта функция возвращает строку с вырезанными в начале и конце строки string пробелами.
Урок №13
Удаление лишних пробелов по левому краю текста:
ltrim (string)
Эта функция возвращает строку с вырезанными пробелами в начале string.
Урок №14
Удаление лишних пробелов по правому краю текста:
rtrim (string)
Эта функция возвращает строку с вырезанными пробелами в конце string.
Урок №15
Удаление всех тэгов:
strip_tags (str [, allowable_tags])
Эта функция пытается вернуть строку str с вырезанными тэгами HTML и PHP. Выдаёт ошибку с предупреждением в случае наличия неполных или ложных тэгов.
Вы можете использовать необязательный второй параметр для специфицирования тэгов, которые не должны вырезаться.
Урок №16
Удаление всех тэгов, кроме <b> и <i>:
Урок №17
Проверяем, есть ли в тексте слово "разогнём", нестрогий регистр, т.е. ищется и "РаЗогНЁМ", и "РАЗОГНЁМ" и "разогнём" и т.д.:
preg_match (pattern, subject)
Ищет в subject совпадения с регулярным выражением, заданным в pattern.
Урок №18
Проверяем, есть ли в тексте слово "надо", строгий регистр, т.е. ищется только слово "надо":
strstr (haystack, needle)
Возвращает часть строки haystack от первого вхождения needle до конца haystack.
Если needle не найден, возвращает FALSE (ложь).
Урок №19
Считываем первые 6 слов из текста:
explode (separator, string)
Возвращает массив строк, каждая из которых является подстрокой строки string и сформирована путём разделения строки по границам образованными сепаратором строки separator.
Операция .= добавляет к строковой переменной новые символы.
Урок №20
Конвертируем текст с кодировком windows-1251 в кодировку koi8-r:
convert_cyr_string (str, from, to)
Эта функция возвращает данную строку, конвертированную из одного набора символов кириллицы в другой.
Аргументы from и to это односимвольные аргументы, представляющие исходный и целевой наборы кириллицы. Поддерживаются типы:
k - koi8-r
w - windows-1251
i - iso8859-5
a - x-cp866
d - x-cp866
m - x-mac-cyrillic
Урок №21
Используем в качестве разделителя "||" (две вертикальных черты):
Урок №22
Заменяем <b> на <b> и </b> на </b>:
htmlspecialchars (string string)
Некоторые символы имеют в HTML специальное значение и должны быть представлены мнемониками HTML для сохранения своего значения.
Эта функция возвращает строку с выполненной конвертацией.
Используется для того, чтобы всякие нехорошие человеки не написали в вашей гостевой (например) нежелательных тегов, испортив тем самым её внешний вид.
Хотя эти и не единственное где можно применить данную функцию, мы поговорим об этом при случае 1
& (амперсанд) становится &
" (двойная кавычка) становится "
' (одинарная кавычка) становится '
< (меньше) становится <
> (больше) становится >
Я уже рассказывал о брандмауэре Windows Firewall, компоненте пакета обновлений Windows XP Service Pack 2 (SP2), прежние версии которого были известны как Internet Connection Firewall (ICF). В данной статье я более подробно остановлюсь на этой программе и покажу, как подготовить ее для работы в конкретной сети. В моем распоряжении была только предварительная версия SP2, в окончательную редакцию могут быть внесены изменения.
Итак, рассмотрим девять новых параметров Group Policy для Windows Firewall и соответствующие команды. Параметры Windows Firewall хранятся в папке Computer Configuration\Administrative Templates\Network\Network Connections\Internet Connection Firewall. В этой папке существует две подпапки: Domain Profile и Mobile Profile. Параметры политики Domain Profile активизируются на компьютере с установленным Windows Firewall, когда данный компьютер регистрируется в домене; в противном случае выбираются параметры Mobile Profile. Обе подпапки содержат одинаковый набор из девяти параметров политики.
В предыдущей статье речь шла о первом параметре, Operational Mode. Данный параметр обеспечивает три режима: Disabled отключает брандмауэр, Protected активизирует брандмауэр, а Shielded активизирует брандмауэр, но компьютер оказывается более изолированным от сети, чем в режиме Protected, который позволяет открыть определенные порты. Чтобы перевести компьютер в режим Disabled, Protected или Shielded, следует воспользоваться командой
netsh firewall ipv4 set opmode
с ключом disabled, enabled или shield. Обозначения в командной строке иногда отличаются от названий соответствующих параметров Group Policy. Таким образом, чтобы надежно защитить сетевой адаптер, следует ввести команду
netsh firewall ipv4 set opmode shield
Эту команду удобно использовать в командном файле. Можно создать для командного файла ярлык на рабочем столе, назвав его Shield this System, чтобы можно было дважды щелкнуть на нем при любых признаках опасности для сети. С помощью команды
netsh firewall ipv4 show opmode
можно узнать режим брандмауэра.
Изменение параметров брандмауэра
Свойства следующего параметра политики Windows Firewall - Allow User Preference/Group Policy Settings Merge не совсем ясны. В документации Windows Firewall указывается, что с помощью данного параметра локальные администраторы могут изменить режим брандмауэра. Но что означает слово "изменить" - включить или выключить брандмауэр либо настроить его, открывая и закрывая порты? В данном случае "изменить" имеет второе значение: с помощью данной политики локальный администратор может открыть или закрыть порт, но не отменить режим Disabled, Protected или Shielded, установленный доменной политикой (предполагается, что доменная политика для Windows Firewall существует). Если в политике задан режим Disabled, то локальный администратор не может управлять работой брандмауэра.
Путаница начинается, если локальный администратор пытается отменить параметры Windows Firewall, заданные объектом Group Policy Object (GPO). В ответ на команду
netsh firewall ipv4 set opmode disable
будет получен результат OK, и следующая команда Netsh Firewall сообщит, что брандмауэр отключен. Однако, заглянув в свойства сетевого адаптера в папке Network Connections, можно увидеть, что брандмауэр активен. Несколько тестов показывают, что информация графического интерфейса соответствует действительности: преобладают доменные параметры. Будем надеяться, что в окончательной версии эти недостатки будут исправлены.
Однако нельзя всегда полагаться на диалоговые окна. Если присвоить параметру Allow User Preference/Group Policy Settings Merge значение Disabled, то цвет окна становится серым, а переключатели для активизации и отключения Windows Firewall перестают действовать. Такой подход разумен. Но попробуйте активизировать параметр, а затем вернуться к экрану настройки Windows Firewall. Кнопки для включения и выключения брандмауэра доступны. Если щелкнуть на одной из них, а затем на OK, то на экране не появится сообщения об ошибке, но и изменений также не произойдет. Однако локальный администратор может открывать и закрывать порты с помощью командной строки или gpedit.msc. Для параметра политики Allow User Preference/Group Policy Settings Merge эквивалента командной строки не существует.
Открываем порты для программ
Следующий параметр политики - первый из семи параметров, с помощью которых можно открыть или (в некоторых случаях) закрыть конкретный порт. Открывая брандмауэр для прохождения определенного типа трафика (например, Web-трафика, данных аутентификации Active Directory или загрузки электронной почты), трудно определить, какой порт необходим для этого типа трафика. Задача упрощается благодаря параметру политики Define Allowable Programs. По умолчанию Windows Firewall блокирует непрошеный входящий трафик, но не исходящий. Такой подход приемлем, если рабочая станция функционирует как клиент, инициирующий обмен данными (например, запрашивая почтовый сервер о наличии сообщений или Web-сервер - об информации). Но он не срабатывает, если рабочая станция предоставляет службы другим компьютерам сети, например, если на рабочей станции размещен почтовый сервер, потому что брандмауэр блокирует попытки клиентов инициировать диалог с серверной программой. Он также непригоден для одноранговых (peer-to-peer, P2P) соединений, таких как Instant Messaging (IM), в которых две или несколько машин обмениваются данными, выполняя обязанности и клиентов, и серверов одновременно. Таким образом, для запуска сервера или организации соединений P2P необходимо открыть некоторые порты.
Но какие именно порты следует открыть? Для ответа на этот вопрос достаточно указать конкретную программу в параметре Define Allowable Programs, и Windows Firewall открывает порты, необходимые данной программе. Пользователь указывает в параметре политики местонахождение программы, определяет ее состояние (активное или блокированное; например, можно составить политику блокирования портов для конкретной программы, если эта программа была "троянским конем", проникшим в сеть) и открывает соответствующие порты для всего Internet или только для локальной подсети.
Предположим, что на компьютере работает серверная программа C:\myprogs\serverprog.exe. Неизвестно, какие порты она открывает, но необходимо, чтобы эти порты были открыты только для компьютеров той подсети, в которой расположен сервер. Нужно активизировать параметр Define Allowable Programs, затем щелкнуть на кнопке Show, чтобы на экране появилось диалоговое окно для ввода информации о почтовом сервере. В этом диалоговом окне я ввел строку
C:\myprogs\serverprog.exe:LocalSubnet: enabled:E-mail server
которая определяет четыре компонента, каждый из которых отделен от остальных двоеточием. Первый компонент - полный путь к программе. Можно использовать переменные среды, такие как %ProgramFiles%. Следующий компонент, LocalSubnet, указывает на необходимость принять трафик, входящий в порты этого сервера только из систем той же подсети. Третий компонент, enabled, разрешает прохождение трафика. И четвертый компонент, E-mail server, представляет собой просто метку, которую Windows Firewall может использовать при составлении отчетов. Число программ не ограничено.ъ
Открытие конкретных портов
С помощью остальных параметров открываются различные порты. Не совсем ясно, следует ли активизировать первый из них, Allow Dynamically Assigned Ports for RPC and DCOM. Вообще я предпочитаю инструменты на основе Windows Management Instrumentation (WMI), такие как WMI VBScripts и оснастка Manage Computer консоли Microsoft Management Console (MMC), но для WMI необходимы вызовы удаленных процедур (Remote Procedure Calls, RPC). Оснастку Manage Computer нельзя использовать для дистанционного управления системой без WMI, поэтому, чтобы управлять удаленными системами с помощью Manage Computer при активном Windows Firewall, необходимо активизировать этот параметр. Опасность открывания портов для RPC заключается в том, что за последние два года в RPC было обнаружено несколько серьезных ошибок, одна из которых привела к памятной атаке MSBlaster. Поэтому активизация брандмауэра при открытых портах для RPC - противоречивое решение; с таким же успехом можно запереть на замок все двери в доме, ради удобства (своего и грабителей) оставив открытым парадный вход. Как и предыдущий, данный параметр позволяет открыть порты для всех IP-адресов или только для локальной подсети, но такой вариант тоже не очень удачен. Во многих случаях вирус MSBlaster распространялся от зараженного компьютера, который кто-то приносил на предприятие. Поэтому перед активизацией данного параметра необходимо тщательно все обдумать.
Как и RPC, параметры File and Print Sharing, Remote Assistance Support и Universal Plug and Play можно отменить или активизировать, а действие активных параметров ограничить локальной подсетью. Все эти параметры, кроме Remote Assistance Support, можно активизировать из командной строки с помощью команды
netsh firewall ipv4 set service
за которой следует type= и имя службы (например, FILEANDPRINT, RPCANDDCOM или UPNP) или scope= с последующими ключами all (для всех IP-адресов) и subnet (для локальной подсети). Например, чтобы разрешить совместную работу с файлами и принтерами только в локальной подсети, следует ввести команду
netsh firewall ipv4 set service type=fileandprint scope=subnet
Любую команду можно дополнить ключами profile= и interface=, поэтому, если файл- или принт-службу требуется открыть для проводного Ethernet-соединениия только в случаях, когда система подключена к домену, нужно ввести команду
netsh firewall ipv4 set service type=fileandprint scope=subnet interface="local area connection" profile=corporate
Group Policy работает с профилями Domain и Mobile, а инструменты командной строки - с корпоративными и другими профилями.
Остается два параметра политики. Allow ICMP Settings воздействует на подсистему ICMP (Internet Control Message Protocol - протокол управления сообщения Internet). В сущности, для администратора важен лишь один компонент ICMP: Ping. По умолчанию в системах с брандмауэром блокируются все запросы ICMP, и потому сигналы эхо-тестирования игнорируются. В Allow ICMP Settings Properties перечислено девять типов запросов ICMP, разрешенных брандмауэром Windows Firewall. Для тестирования нужно активизировать только запрос Allow Inbound Echo Request. Данный параметр не позволяет ограничить ICMP-трафик локальной подсетью.
ICMP открывается из командной строки:
netsh firewall ipv4 set icmpsetting
с последующим ключом type= и числом (3, 4, 5, 8, 10, 11, 12, 13 или 17) или словом all. Номер указывает один из девяти параметров ICMP, и нам нужен номер 8 - входящий запрос (incoming echo request). Чтобы машина отвечала на сигналы тестирования, необходимо ввести команду
netsh firewall ipv4 set icmpsetting type=8
Команду можно уточнить с помощью ключей profile= и interface=.
Как открыть порт для службы, которая в данной статье не рассматривалась? Для этого можно воспользоваться девятым параметром политики, Define Custom Open Ports. Затем следует указать номер порта Windows Firewall, тип порта (TCP или UDP), область действия (все IP-адреса или только локальная подсеть) и действие (активизировать или блокировать). При желании порту можно присвоить описательное имя. Например, для почтового сервера можно открыть всему миру порт TCP 25:
25:TCP:*:enabled:SMTP
где 25 - номер порта, TCP - протокол, звездочка (*) открывает порт всему миру (не только подсети), ключ enabled открывает, а не закрывает порт, и SMTP - описательная фраза. В командной строке нужно ввести
netsh firewall ipv4 add portopening
с последующими ключами protocol= (варианты - tcp, udp или all), port= (с номером), name= (с именем), mode= (enable или disable) и scope= (all или subnet). Для активизации почтового сервера следует ввести команду
В процессе экспериментов могут возникнуть недоразумения - порт был закрыт, но почему-то остается открытым. Чтобы избежать недоразумений, следует уяснить разницу между поведением брандмауэров, управляемых параметром Group Policy и с помощью командной строки. Команды, подаваемые из командной строки, обычно вступают в силу немедленно. Изменения в Group Policy начинают действовать спустя некоторое время. Чтобы изменения Group Policy для Windows Firewall вступали в действие сразу же, следует применить команду gpupdate.
Необходимо дождаться, пока обработка команды завершится, затем перейти к функции Services в оснастке Manage Computer и перезапустить службу Internet Connection Firewall (в окончательной версии имя службы может быть изменено).
Дополнительные возможности командной строки
Мы рассмотрели возможности параметров Group Policy для Windows Firewall, но функции командной строки шире. Следует помнить, что Windows Firewall имеет два профиля: Domain и Mobile. Предположим, нам нужно выяснить, какой профиль используется в данный момент. Следующая команда показывает активный профиль - Domain Profile (corporate) или Mobile Profile (other):
netsh firewall ipv4 show currentprofile
Команда Set Logging позволяет больше узнать о работе брандмауэра. Она имеет четыре факультативных параметра: Filelocation= показывает брандмауэру, куда записать ASCII-файл журнала, а maxfilesize= задает максимальный размер файла. Размер файла указывается в килобайтах, и максимальное допустимое значение - 32767. Параметры droppedpackets= и connections= принимают значения enable или disable и указывают брандмауэру, следует ли регистрировать блокированные и успешные соединения. Например, чтобы записывать как успешные, так и блокированные соединения в файле C:\firelog.txt размером максимум 8 Мбайт, нужно ввести команду
netsh firewall ipv4 set logging filelocation="C:\firelog.txt" maxfilesize=8192 droppedpackets= enable connections=enable
Журнал может быть большим, но если нужно обнаружить взломщика, регулярно предпринимающего попытки атак, полезно иметь полный журнал, в котором отражены все соединения и отказы TCP и UDP. Задать текущий режим регистрации можно с помощью команды
netsh firewall ipv4 show logging
Следующая команда выдает исчерпывающий список параметров брандмауэра:
netsh firewall ipv4 show config
Заменив в данной команде ключ config ключом state, можно получить подробные сведения о действиях, выполняемых брандмауэром. Чтобы получить более компактный отчет, содержащий только информацию об открытых портах, следует заменить config на icmpsetting или portopening.
Для работы с Windows Firewall требуется освоить много новых понятий. Однако если в системе персонального брандмауэра нет, то Windows Firewall поможет защитить машину, придется лишь потратить незначительное время на создание GPO, чтобы открывать нужные порты. Вознаграждением для администратора будет сознание того, что система за брандмауэром станет куда менее уязвимой.
Модель безопасности Windows XP Professional основана на понятиях аутентификации и авторизации. При аутентификации проверяются идентификационные данные пользователя, а при авторизации - наличие у него прав доступа к ресурсам компьютера или сети. В Windows XP Professional также имеются технологии шифрования, которые защищают конфиденциальные данные на диске и в сетях: например, EFS (Encrypting File System), технология открытого ключа.
Аутентификация
Регистрируясь на компьютере для получения доступа к ресурсам локального компьютера или сети, пользователь должен ввести свое имя и пароль. В Windows XP Professional возможна единая регистрация для доступа ко всем сетевым ресурсам. Таким образом, пользователь может войти в систему с клиентского компьютера по единому паролю или смарт-карте и получить доступ к другим компьютерам домена без повторного ввода идентификационных данных. Главный протокол безопасности в доменах Windows 2000 - Kerberos версии 5. Для аутентификации на серверах под управлением Windows NT 4.0 и доступа к ресурсам доменов Windows NT клиенты Windows XP Professional используют протокол NTLM. Компьютеры с Windows XP Professional, не принадлежащие к домену, также применяют для аутентификации протокол NTLM. Используя Windows XP Professional в сети с активным каталогом (Active Directory), можно управлять безопасностью регистрации с помощью параметров политики групп, например, ограничивать доступ к компьютерам и принудительно завершать сеансы работы пользователей спустя заданное время. Можно применять предварительно сконфигурированные шаблоны безопасности, соответствующие требованиям к безопасности данной рабочей станции или сети. Шаблоны представляют собой файлы с предварительно сконфигурированными параметрами безопасности, которые можно применять на локальном компьютере или импортировать в групповые политики активного каталога. Эти шаблоны используются в неизменном виде или настраиваются для определенных нужд.
Авторизация
Авторизация позволяет контролировать доступ пользователей к ресурсам. Применение списков управления доступом (access control list, ACL) и прав доступа NTFS гарантирует, что пользователь получит доступ только к нужным ему ресурсам, например, к файлам, дискам (в том числе сетевым), принтерам и приложениям. С помощью групп безопасности, прав пользователей и прав доступа можно одновременно управлять безопасностью как на уровне ресурсов, так и на уровне файлов, папок и прав отдельных пользователей.
Группы безопасности
Группы безопасности упрощают управление доступом к ресурсам. Можно приписывать пользователей к группам безопасности, а затем предоставлять этим группам права доступа. Можно добавлять пользователей к группам безопасности и удалять их оттуда в соответствии с потребностями этих пользователей. Оснастка MMC Computer Management позволяет создавать учетные записи пользователей и помещать их в локальные группы безопасности. Можно предоставлять пользователям права доступа к файлам и папкам и определять действия, которые пользователи могут выполнять над ними. Можно разрешить и наследование прав доступа. При этом права доступа, определенные для каталога, применяются ко всем его подкаталогам и находящимся в них файлам. Среди групп безопасности, локальных для домена и компьютера, имеется ряд предварительно сконфигурированных групп, в которые можно включать пользователей.
Администраторы (Administrators) обладают полным контролем над локальным компьютером и правами на совершение любых действий. При установке Windows XP Professional для этой группы создается и назначается встроенная учетная запись Администратор (Administrator). Когда компьютер присоединяется к домену, по умолчанию к группе Администраторы добавляется группа Администраторы домена (Domain Administrators).
Опытные пользователи (Power Users) обладают правами на чтение и запись файлов не только в личных папках, но и за их пределами. Они могут устанавливать приложения и выполнять многие административные действия. У членов этой группы такой же уровень прав доступа, что и у групп Пользователи (Users) и Опытные пользователи (Power Users) в Windows NT 4.0.
Пользователи (Users) в отношении большей части системы имеют только право на чтение. У них есть право на чтение и запись только файлов их личных папок. Пользователи не могут читать данные других пользователей (если они не находятся в общей папке), устанавливать приложения, требующие модификации системных каталогов или реестра, и выполнять административные действия. Права пользователей в Windows XP Professional более ограниченны по сравнению с Windows NT 4.0.
Гости (Guests) могут регистрироваться по встроенной учетной записи Guest и выполнять ограниченный набор действий, в том числе выключать компьютер. Пользователи, не имеющие учетной записи на этом компьютере, или пользователи, чьи учетные записи отключены (но не удалены), могут зарегистрироваться на компьютере по учетной записи Guest. Можно устанавливать права доступа для этой учетной записи, которая по умолчанию входит во встроенную группу Guests. По умолчанию учетная запись Guest отключена. Можно сконфигурировать списки управления доступом (ACL) для групп ресурсов или групп безопасности и по мере необходимости добавлять/удалять из них пользователей или ресурсы, что облегчает управление правами доступа и их аудит. Это также позволяет реже изменять ACL. Можно предоставить пользователям права на доступ к файлам и папкам и указать действия, которые можно выполнять с ними. Можно также разрешить наследование прав доступа; при этом права доступа к некоторой папке применяются и к ее подкаталогам и находящимся в них файлам. При работе с Windows XP Professional в составе рабочей группы или в изолированном режиме вам предоставляются права администратора, и у вас есть все права по отношению ко всем функциям безопасности ОС. Если компьютер под управлением Windows XP Professional включен в сеть, параметры безопасности определяет сетевой администратор.
Политика групп
Параметры политики групп позволяют назначать ресурсам права доступа, а также предоставлять права доступа пользователям. Это нужно для того, чтобы требовать запуска определенных приложений только в заданном контексте безопасности (тем самым снижая риск воздействия на компьютер нежелательных приложений, например, вирусов) и конфигурировать различные права доступа для множества клиентских компьютеров. Можно сконфигурировать права доступа на эталонном компьютере, который будет использован как базовый образ для установки на другие рабочие станции, гарантируя, таким образом, стандартизованное управление безопасностью даже в отсутствие Active Directory. Функции аудита позволяют обнаруживать попытки отключить или обойти защиту ресурсов. Можно задействовать предварительно сконфигурированные шаблоны безопасности, соответствующие требованиям безопасности для данной рабочей станции или сети. Шаблоны безопасности - это файлы с предварительно установленными параметрами безопасности, которые применяют к локальному компьютеру или импортируют в групповые политики активного каталога (Active Directory). Шаблоны безопасности используются в неизменном виде или настраиваются в соответствии с определенными задачами.
Шифрование
EFS (Encrypting File System) позволяет зашифровать данные на жестком диске. Риск кражи портативных компьютеров особенно велик, а с помощью EFS можно усилить безопасность путем шифрования данных на жестких дисках портативных компьютеров компании. Эта предосторожность защищает информацию и идентификационные данные от несанкционированного доступа.
2. Корпоративная безопасность
Windows XP Professional поддерживает ряд функций защиты избранных файлов, приложений и других ресурсов. В их числе списки управления доступом (ACL), группы безопасности и групповая политика, а также средства конфигурирования и управления этими функциями. В совокупности они обеспечивают мощную, но гибкую инфраструктуру управления доступом в корпоративных сетях. Windows XP поддерживает тысячи относящихся к безопасности параметров конфигурации, которые можно применять и по отдельности. В Windows XP также есть предопределенные шаблоны безопасности, обычно используемые без изменений или как основа для особой настройки конфигурации безопасности. Эти шаблоны безопасности применяются при: создании ресурса, такого как общая папка или файл; при этом вы вправе воспользоваться заданными по умолчанию ACL или настроить их в соответствии со своими потребностями; распределении пользователей по стандартным группам безопасности, таким как Users, Power Users и Administrators, и принятии заданных по умолчанию параметров ACL; использовании предоставляемых ОС шаблонов групповой политики - Basic (основной), Compatible (совместимый), Secure (безопасный) или Highly Secure (высокобезопасный). Каждая из особенностей системы безопасности Windows XP - списки ACL, группы безопасности и групповая политика - имеет параметры по умолчанию, которые разрешается изменять в соответствии с требованиями организации. Предприятия также вправе применять соответствующие средства для реализации и настройки управления доступом. Многие из этих средств, такие как оснастки Microsoft Management Console, представляют собой компоненты Windows XP Professional, другие поставляются в составе комплекта ресурсов Windows XP Professional Resource Kit.
3. Управляемый доступ к сети
Windows XP содержит встроенную подсистему безопасности для предотвращения вторжений. Ее работа базируется на ограничении прав любого, кто пытается получить доступ к компьютеру из сети до привилегий гостевой учетной записи. Взломщикам или вообще не удастся получить доступ к компьютеру и перебором паролей получить дополнительные привилегии, или они получат только ограниченный гостевой доступ.
Управление сетевой проверкой подлинности
Все большее число систем под управлением Windows XP Professional подключается к Интернету напрямую, а не через домены. Поэтому продуманная система управления доступом (в том числе устойчивыми паролями и разрешениями, сопоставленными учетными записями) важна как никогда ранее. Для обеспечения безопасности следует избегать анонимных параметров управления доступом, обычно связанных с открытыми средами, подобными Интернету. Вот почему в Windows XP Professional по умолчанию все пользователи, вошедшие по сети, работают под учетной записью Guest. Это исключает для злоумышленника возможность войти в систему через Интернет под локальной учетной записью Администратор (Administrator), у которой нет пароля.
4. Упрощенное совместное использование ресурсов
Модель совместного использования и безопасности для локальных учетных записей позволяет выбрать модель безопасности на основе применения исключительно гостевой учетной записи (Guest) либо классическую (Classic) модель безопасности. В гостевой модели при любых попытках войти в систему локального компьютера через сеть применяется только гостевая учетная запись. В классической модели пользователи при доступе через сеть входят в систему локального компьютера под своими учетными записями. На компьютерах в составе домена эта политика не применяется, а по умолчанию используется гостевая учетная запись. Если гостевая учетная запись существует и ей назначен пустой пароль, сетевые пользователи смогут войти в систему и получить доступ к любому ресурсу, разрешенному для доступа учетной записи Guest. При включенной политике "force network logons using local accounts to authenticate as Guest" локальные учетные записи должны аутентифицироваться как учетная запись Guest при доступе через сеть. Эта политика служит для ограничения разрешений локальной учетной записи, обращающейся к системным ресурсам на другом сетевом компьютере. Кроме того, на компьютерах, поддерживающих модель упрощенной защиты общих ресурсов, диалоговое окно Security Properties заменено упрощенным диалоговым окном Shared Documents Properties.
5. Ограничение на учетные записи с пустыми паролями
Для безопасности пользователей, не защитивших свою учетную запись паролем, в Windows XP Professional такие учетные записи разрешено применять только для входа в систему компьютера с его консоли. По умолчанию учетные записи с пустыми паролями запрещено применять для входа в систему удаленно по сети и вообще для любых других действий по входу в систему, кроме как с физической консоли компьютера. Например, нельзя задействовать службу вторичного входа в систему (RunAs - запуск от имени) для запуска программ под учетной записью с пустым паролем локального пользователя. Назначение пароля локальной учетной записи устраняет указанное ограничение на вход через сеть, а также предоставляет ей доступ по сети к любым ресурсам, на которые у нее есть права. Если ваш компьютер не расположен в физически защищенном помещении, рекомендуется назначать пароли всем локальным учетным записям пользователей. Несоблюдение этого требования ведет к тому, что любой пользователь, получивший физический доступ к компьютеру, может войти в систему под учетной записью без пароля. Это особенно важно для переносных компьютеров, на которых следует предусмотреть устойчивые пароли для всех локальных учетных записей пользователей. Указанное ограничение не относится к доменным учетным записям, а также к локальной гостевой учетной записи. Если учетная запись Guest с пустым паролем существует, под ней можно войти в систему и обратиться к любому ресурсу, разрешенному ей для доступа. Если требуется отключить ограничение на вход через сеть без пароля, надо соответствующим образом настроить локальную политику безопасности (Local Security Policy).
Шифрованная файловая система
Дополнительные функции шифрованной файловой системы (Encrypting File System, EFS) существенно обогатили Windows XP Professional, обеспечив дополнительную гибкость для корпоративных пользователей при развертывании решений безопасности, основанных на шифровании файлов с данными. Любой злоумышленник, имеющий физический доступ к компьютеру, может загрузить на нем другую ОС, обойти защиту основной ОС и получить доступ к конфиденциальным данным. Шифрование конфиденциальных файлов средствами EFS обеспечивает дополнительную защиту. Данные зашифрованного файла останутся недоступными, даже если атакующий получит полный доступ к среде хранения данных компьютера. Только полномочные пользователи и назначенные агенты восстановления данных в состоянии расшифровывать файлы. Пользователи с другими учетными записями, обладающие разрешениями для файла - даже разрешением на передачу прав владения (Take Ownership), не в состоянии открыть его. Администратору доступ к содержимому файла также закрыт, если только он не назначен агентом восстановления данных. При попытке несанкционированного доступа к зашифрованному файлу система откажет в доступе.
Архитектура EFS
EFS базируется на технологии шифровании с открытым ключом и использует архитектуру CryptoAPI. Стандартная (по умолчанию) конфигурация EFS не требует никакого административного вмешательства: вы вправе выполнять шифрование файлов сразу же после установки системы. EFS автоматически создает пару ключей шифрования и сертификат пользователя, если они не были созданы ранее. В качестве алгоритма шифрования EFS использует DESX (Expanded Data Encryption Standard) или 3DES (Triple-DES). Поставщики услуг криптографии поддерживают два алгоритма: RSA Base и RSA Enhanced - для создания сертификатов EFS и для шифрования симметричных ключей шифрования. Если зашифровать папку, все файлы и подпапки в ней шифруются автоматически. Рекомендуется шифрование именно на уровне папок, чтобы в процессе работы не появлялись незашифрованные временные файлы.
[pagebreak]
EFS и NTFS
Шифрованная файловая система (EFS) защищает конфиденциальные данные в файлах на томах NTFS. EFS - основная технология шифрования и расшифровки файлов на томах NTFS. Открывать файл и работать с ним может только пользователь, его зашифровавший. Это чрезвычайно важно для пользователей переносных компьютеров: даже если взломщик получит доступ к потерянному или украденному компьютеру, он не сможет открыть зашифрованные файлы. В Windows XP шифрованная файловая система также поддерживает автономные файлы и папки (Offline Files and Folders). Зашифрованный файл останется недоступным для просмотра в исходном виде, даже если атакующий обойдет системную защиту, например, загрузив другую ОС. EFS обеспечивает устойчивое шифрование по стандартным алгоритмам и тесно интегрирована с NTFS. EFS в Windows XP Professional предоставляет новые возможности совместного использования зашифрованных файлов или отключения агентов восстановления данных, а также облегчает управление посредством групповой политики и служебных программ командной строки.
Как работает EFS
EFS позволяет сохранить конфиденциальность информации на компьютере в условиях, когда люди, имеющие физический доступ к компьютеру, могут преднамеренно или неумышленно скомпрометировать ее. EFS чрезвычайно удобна для обеспечения конфиденциальности данных на мобильных компьютерах или на компьютерах, на которых работают несколько пользователей, т. е. таких системах, которые могут подвергаться атакам, предусматривающим обход ограничений списков ACL. В совместно используемой системе атакующий обычно получает несанкционированный доступ, загружая другую ОС. Злоумышленник также может захватить компьютер, вынуть жесткий диск, поместить его на другой компьютер и получить доступ к файлам. Однако если у него нет ключа расшифровки, зашифрованный средствами EFS файл будет выглядеть как бессмысленный набор символов. Поскольку EFS тесно интегрирована с NTFS, шифрование и расшифровка выполняются незаметно ("прозрачно") для пользователя. При открытии файла EFS автоматически расшифровывает его по мере чтения данных с диска, а при записи - шифрует данные при записи на диск. Работая с зашифрованным файлом, вы можете даже не догадываться, что он зашифрован (при условии, что у вас есть соответствующие права). В стандартной конфигурации EFS позволяет зашифровать файл прямо из Проводника Windows без какого-либо вмешательства администратора. С точки зрения пользователя шифрование файла или папки - это просто назначение ему определенного атрибута.
Конфигурирование EFS
По умолчанию система поддерживает работу EFS. Разрешается шифровать файлы, для которых имеется разрешение на изменение. Поскольку в EFS для шифрования файлов применяется открытый ключ, нужно создать пару ключей открытый/закрытый и сертификат с открытым ключом шифрования. В EFS разрешены сертификаты, подписанные самим владельцем, поэтому вмешательство администратора для нормальной работы не требуется. Если применение EFS не соответствует требованиям организации или если есть файлы, которые нельзя шифровать, существует много способов отключить EFS или нужным образом конфигурировать ее. Для работы с EFS всем пользователям требуются сертификаты EFS. Если в организации нет инфраструктуры открытого ключа (Public Key Infrastructure, PKI), применяются подписанные самим владельцем сертификаты, которые автоматически создаются ОС. При наличии центров сертификации сертификаты EFS обычно выпускают именно они. Если вы используете EFS, обязательно предусмотрите план восстановления данных при сбое системы.
Что разрешается шифровать
На томах NTFS атрибут шифрования разрешается назначать отдельным файлам и папкам с файлами (или подпапками). Хотя папку с атрибутом шифрования и называют "зашифрованной", сама по себе она не шифруется, и для установки атрибута пары ключей не требуется. При установленном атрибуте шифрования папки EFS автоматически шифрует: все новые файлы, создаваемые в папке; все незашифрованные файлы, скопированные или перемещенные в папку; все вложенные файлы и подпапки (по особому требованию); автономные файлы.
Шифрование базы данных автономных файлов
В Windows XP можно шифровать базу данных автономных файлов для локальной защиты кэшируемых документов от воровства компьютера, а также обеспечения дополнительной безопасности локально кэшируемых данных. В Windows 2000 этой функции не было - она предусматривает шифрование кэшируемых файлов. Например, вы вправе активно использовать автономные файлы, при этом конфиденциальность данных обеспечивается автоматически. Как администратор отдела технической поддержки вы можете задействовать эту возможность, чтобы обезопасить все локально кэшируемые документы. Автономные файлы - превосходная защита от потери конфиденциальных данных при захвате мобильного компьютера. Указанная функция поддерживает шифрование и расшифровку всей автономной базы данных. Для конфигурирования порядка шифрования автономных файлов нужны административные привилегии. Чтобы зашифровать автономные файлы, откройте папку Мой компьютер (My Computer) и в меню Сервис (Tools) выберите команду Свойства папки (Folder Options), в открывшемся окне свойств на вкладке Автономные файлы (Offline Files) установите флажок Шифровать автономные файлы для защиты данных (Encrypt Offline Files To Secure Data) .
Удаленные операции EFS на общих файлах и Web-папках
Можно шифровать и расшифровывать файлы, расположенные в Web-папках Web Distributed Authoring and Versioning (распределенная система хранения файлов с доступом через Web), или WebDAV. У Web-папок много преимуществ по сравнению с общими файлами, и Microsoft рекомендует максимально широко применять их для удаленного хранения шифрованных файлов. Web-папки требуют меньше внимания от администраторов и безопаснее, чем общие файлы. Web-папки также обеспечивают безопасное хранение и доставку шифрованных файлов через Интернет средствами стандартного протокола HTTP. Чтобы использовать общие файлы для удаленных операций EFS, требуется доменная среда Windows 2000 или более поздних версия Windows, так как при шифровании и расшифровке пользовательских файлов EFS работает от имени пользователя посредством протокола делегирования полномочий в Kerberos. Основное отличие удаленных операций EFS с общими файлами и файлами в Web-папках - то, в каком месте эти операции выполняются. Если файлы хранятся в общих файлах, все операции EFS выполняются на компьютере, где расположен файл. Так, если вы подключились к общему сетевому файлу и пытаетесь открыть ранее зашифрованный файл, он расшифровывается на компьютере, где хранится, а затем передается открытым текстом по сети на ваш компьютер. При хранении файла на Web-папках все операции EFS выполняются на локальном компьютере. Скажем, при подключении к Web-папке и попытке открыть зашифрованный файл последний пересылается по сети в зашифрованном виде на локальный компьютер и уже там расшифровывается системой EFS. Входящий и исходящий трафик Web-папок - это необработанные данные, которые, даже перехваченные атакующим, остаются зашифрованными и совершенно для него бесполезны. Такое различие в выполнении операций EFS объясняет, почему общие файлы требуют больших усилий со стороны администраторов, чем Web-папки. EFS с Web-папками устраняет необходимость в специализированном ПО для безопасного совместного использования зашифрованных файлов пользователями и организациями. Файл может храниться в свободном доступе на файловых серверах в интрасети или в Интернете и при этом оставаться надежно защищенным средствами EFS.
6. Службы сертификации
Службы сертификации - это компонент базовой ОС, позволяющий ей выполнять функции центра сертификации (certification authority, CA), или ЦС, в том числе выпускать цифровые сертификаты и управлять ими. Windows XP Professional поддерживает многоуровневые иерархии ЦС и сети ЦС с перекрестными доверительными отношениями, а также изолированные и интерактивные ЦС.
Хранилища сертификатов с открытыми ключами
Windows XP Professional хранит сертификаты с открытыми ключами в личном (Personal) хранилище сертификатов. Они хранятся открытым текстом, так как это общедоступная информация. Сертификаты имеют цифровую подпись ЦС для предотвращения изменения. Сертификаты пользователя расположены в папке Documents and Settings<имя_пользователя>ApplicationDataMicrosoft SystemCertificatesMyCertificates профиля пользователя. Эти сертификаты записываются в локальном реестре при каждом входе в систему компьютера. Для перемещаемых профилей сертификаты обычно хранятся в определенном месте (не на компьютере) и "следуют" за пользователем при его входе в систему любого компьютера в домене.
Хранение закрытых ключей
Поставщики услуг криптографии (cryptographic service provider, CSP) - как Base CSP, так и Enhanced CSP, хранят закрытые ключи в профиле пользователя в папке %SystemRoot%Documents and Settings<имя_пользователя> Application DataMicrosoftCryptoRSA. В перемещаемых профилях пользователей закрытый ключ располагается в папке RSA на контроллере домена и загружается на компьютер только на время его работы. Поскольку закрытые ключи надо защищать, все файлы в папке RSA автоматически шифруются случайным симметричным ключом - основным ключом пользователя (user's master key). Ключ длиной в 64 символа создается надежным генератором случайных чисел. На базе основного ключа создаются ключи 3DES, используемые для шифрования закрытых ключей. Основной ключ автоматически генерируется и периодически возобновляется. При хранении на диске основной ключ защищается по алгоритму Triple DES с применением ключа, созданного на основе вашего пароля. Основной ключ применяется для автоматического шифрования всех файлов в папке RSA по мере их создания.
Автоматический запрос сертификата пользователя
В Windows 2000 имелась функция автоматического запроса сертификата пользователя. Автоматический запрос сертификата компьютера и контроллера домена поддерживается и групповой политикой Microsoft Active Directory. Автоматический запрос сертификата компьютера чрезвычайно полезен для упрощения подключений по IPSec или L2TP/IPSec VPN к серверам с Windows XP со службой Routing и Remote Access и другим серверам. Эта функция снижает совокупную стоимость владения и упрощает управление жизненным циклом сертификатов для пользователей и администраторов. Автоматический запрос сертификата смарт-карты и ЦС с самоподписанными сертификатами обеспечивают дополнительную защиту пользователям предприятий, где требуется усиленная безопасность.
Запросы в ожидании и обновление сертификатов
Автоматический запрос сертификата пользователя в Windows XP Professional обеспечивает также запросы в ожидании и обновление сертификатов. После запроса сертификата вручную или автоматически на сервере сертификации Windows .NET Server CA ожидается разрешение администратора на выпуск сертификата или завершение процесса верификации. После одобрения и выпуска сертификата механизм автоматического запроса автоматически установит сертификат. В процессе обновления сертификатов пользователя с истекшим сроком действия также применяется механизм автоматического запроса. Сертификаты автоматически обновляются от имени пользователя, причем процедура определяется параметрами шаблонов сертификатов в Active Directory. По умолчанию сертификаты и ключи защищены. Для дополнительной защиты вы вправе применить дополнительные меры безопасности, в том числе выполнять экспорт закрытых ключей и хранить их в защищенном месте.
7. Управление реквизитами
Управление реквизитами в Windows XP состоит из трех компонентов: интерфейс пользователя для ввода реквизитов, хранилище имен и паролей пользователя и связка ключей (keyring).
Интерфейс пользователя для ввода реквизитов
Приложение отображает интерфейс пользователя для ввода реквизитов, если компонент аутентификации возвратил ошибку проверки подлинности. (Это касается только приложений, в которых такой интерфейс реализован.) Вам предлагается ввести имя пользователя и пароль в соответствующем диалоговом окна или выбрать сертификат X.509 из хранилища My Store. Приложение также может предусматривать флажок Remember my password (Запомнить пароль), при установке которого реквизиты запоминаются. Сохранение реквизитов поддерживают только интегрированные с Windows XP компоненты проверки подлинности (например, Kerberos, NTLM, SSL). Для базовой проверки подлинности отображается интерфейс пользователя для ввода реквизитов, но возможности сохранения реквизитов нет.
Хранилище реквизитов пользователя
Реквизиты перемещаемых профилей хранятся в защищенном хранилище Stored User Names and Passwords (Сохраненные имя и пароль пользователя). Порядок доступа к реквизитам определяют параметры локальной защиты (Local Security Settings). Реквизиты хранятся на основе целевой информации, возвращенной ресурсом. Когда установлен флажок Remember my password в интерфейсе запроса реквизитов, реквизиты сохраняются в наиболее общей форме. Скажем, после обращения к определенному серверу в домене реквизиты сохраняются в форме *.domain.com. При сохранении разных реквизитов для разных серверов в этом домене указанная запись не перезаписывается, а создаются более конкретные записи о целевой информации. При обращении к ресурсу с применением интегрированного компонента проверки подлинности последний выберет среди сохраненных реквизитов пользователей наиболее близко соответствующие целевой информации, возвращенной ресурсом. Найдя нужные реквизиты, компонент ничего не будет спрашивать у пользователя. В случае неудачи поиска реквизитов приложению, которое пыталось обращаться к ресурсу, возвращается ошибка аутентификации. Приложение, обращающееся к ресурсу, не обязательно должно реализовывать интерфейс пользователя для ввода реквизитов. Если оно взаимодействует с интегрированным компонентом проверки подлинности, последний и выполняет поиск реквизитов. В действительности сохраненные реквизиты сможет получить только компонент проверки подлинности. Для Windows XP Professional в составе домена используется классический интерфейс пользователя для ввода реквизитов, а в Windows XP Home Edition и Windows XP Professional в рабочей группе - новый дружественный интерфейс пользователя.
Связка ключей
Связка ключей (keyring) позволяет вручную управлять сохраненными реквизитами. Для работы с ней служит элемент User Accounts Панели управления. В связке ключей отображается список сохраненных реквизитов. При выделении реквизита в поле описания в нижней части окна отображается его краткое описание. Можно добавлять новые реквизиты, редактировать и удалять существующие. При добавлении реквизитов система представит диалоговое окно, похожее на интерфейс пользователя для ввода реквизитов, и попросит указать целевую информацию. В целевой информации разрешается использовать символы подстановки в виде звездочки (*). Редактирование реквизитов позволяет самостоятельно изменить целевую информацию или сами реквизиты. Здесь можно изменить имя пользователя и пароль на сервере. Не разрешается применять интерфейс пользователя для ввода реквизитов и редактирования реквизитов, созданных конкретным приложением. Например, не удастся отредактировать реквизиты паспорта. Но вы вправе удалять любые реквизиты. Возможность сохранять реквизиты обычно определяется в групповой политике. Чтобы разработчики могли использовать механизм сохранения реквизитов, API запроса реквизитов и другие базовые API описаны в соответствующем комплекте Platform Software Development Kit (SDK).
8. Быстрое переключение пользователей
Быстрое переключение пользователей в Windows XP Professional доступно, только когда компьютер работает в составе рабочей группы или изолированно. Если компьютер присоединен к домену, параметры входа в систему компьютера определяются политикой, заданной администратором. На компьютерах с Windows XP Professional, которые не работают в составе домена, разрешается переключаться между сессиями разных пользователей без выхода из системы и закрытия приложений. Названные возможности обеспечивает технология поддержки и хранения пользовательских сессий, аналогичная той, что применяется в терминальной службе Microsoft Windows 2000 Terminal Services. Смена пользователя выполняется буквально в мгновение ока "горячими клавишами" я+L или через меню выключения компьютера. В результате не будет закрыто ни одно приложение, а значит, не нужно ломать голову над тем, сохранять ли файлы другого пользователя - вся рабочая обстановка будет сохранена такой, какая она есть. Очередному пользователю Windows выведет окно приглашения, которое, кстати, легко настроить и оформить картинками по своему вкусу.
Разумеется, на сохранение каждого рабочего сеанса потребуется столько оперативной памяти, сколько нужно для хранения приложений, выполняемых в сеансах, плюс еще дополнительно 2 Мбайт на каждый сеанс. Поэтому для надежной поддержки нескольких пользователей рекомендуется компьютер с объемом ОЗУ не менее 128 Мбайт. Приложения, сохраняемые в фоновых сессиях, продолжают работать - скажем, почтовая программа другого пользователя будет продолжать принимать почту! Если система настроена на переход в "спящий" режим (hibernation mode) после приостановки работы, то все сеансы будут сохранены на жестком диске и восстановятся после включения компьютера. Быстрое переключение пользователей разрешено для версий Windows XP Home Edition или Windows XP Professional на изолированном компьютере или компьютере в составе рабочей группы. При присоединении компьютера под управлением Windows XP Professional к домену эта функция отключается.
[pagebreak]
9. Личная конфиденциальность
Возможности обеспечения личной конфиденциальности в Windows XP Professional такие же, как и в Windows XP Home Edition. Они различаются при работе в домене или в составе рабочей группы и в изолированном режиме. В домене применяется назначенная администратором политика.
10. Доступ к Интернету - Internet Connection Firewall
Межсетевой экран Internet Connection Firewall в Windows XP Professional обеспечивает защиту настольных и переносных компьютеров при подключении к Интернету - особенно в случае постоянных подключений, таких как кабельные модемы и DSL.
Групповая политика в ICF
Характерная функция ICF в Windows XP Professional - зависящая от места групповая политика. Это удобно для мобильных пользователей, желающих обеспечить безопасность при работе на переносных компьютерах в местах общественного подключения к Интернету: в гостиницах, аэропортах и т. п. Когда компьютер с Windows XP Professional работает в составе домена, администратор домена обычно создает групповую политику, запрещающую поддержку ICF в корпоративной сети. Это облегчает работу как пользователя, так и администратора. Когда пользователь вернется домой или подключится к Интернету в общественном месте, межсетевой экран ICF снова заработает, так как указанная политика в той сети не действует.
Как работает межсетевой экран
Такую технологию, как фильтры пакетов на основании полной информации о пакете, межсетевой экран ICF использует совместно с компонентом ICS. Хотя ICF обычно и применяется только в изолированном режиме работы компьютера, его иногда используют для защиты общего адаптера и обеспечения безопасности домашней сети. По умолчанию фильтры пакетов межсетевого экрана ICF блокируют все незапрошенные пакеты из открытого сетевого интерфейса. Для этого ICF обращается к таблице трафика в Network Address Translation (NAT) и проверяет весь входящий трафик на соответствие своим правилам. Входные потоки данных пропускаются только при наличии соответствующей записи в таблице трафика NAT, созданной межсетевым экраном или другими средствами из внутренней защищенной сети. Иначе говоря, если источник сетевого сообщения находится вне защищенной сети, входящие данные отбрасываются. Межсетевой экран ICF в Windows XP Professional дает уверенность, что хакеры не смогут просканировать вашу систему или подключиться к ее ресурсам. Однако здесь имеется определенный компромисс: межсетевой экран затрудняет конфигурирование системы для работы в качестве сервера в Интернете. Межсетевой экран ICF в Windows XP Professional доступен, только когда компьютер включен в рабочую группу или в изолированную конфигурацию. В домене параметры ICF определяются политиками, назначенными администратором.
Параметры групповой политики, относящиеся к безопасности
С Windows XP поставляются шаблоны защиты, представляющие собой заранее сконфигурированные наборы политик безопасности, которые разрешается применять для обеспечения определенного уровня защиты пользовательских компьютеров. Шаблоны предусматривают несколько уровней защиты: низкий (low), средний (medium) и высокий (high). Существуют также определенные политики управления паролями: определение минимальной длины пароля; настройка интервала между обязательной сменой пароля; управление доступом к ресурсам и данным.
9. Политика ограничения используемых приложений
Эта политика предоставляет администраторам механизм определения и управления ПО, работающим в домене. Она позволяет ограничить круг приложений только разрешенным к выполнению ПО и запрещает р
В данной статье я бы хотел рассмотреть и сравнить между собой несколько способов раскрутки сайтов. Некоторые способы уже известны многим как быстрый путь к увеличению посещаемости сайта. Посмотрим так ли это на самом деле.
Достижение высоких позиций невозможно только редактируя meta-теги.
В свое время я прочел очень интересную книгу Стефана Ковея "7 привычек успешного человека". Мне в этой книге особенно понравился раздел "Персональная этика". В нем автор упоминает о том, как некоторые люди изо всех сил пытаются найти "быстрый и простой способ достичь успеха в жизни не работая и не совершенствуя свои профессиональные навыки".
Далее автор подводит итог: "Персональная этика - вещь иллюзорная и обманчивая. Вот поэтому пытаться достичь каких-либо значимых целей так просто и быстро так же утопично, как найти Эйфелеву башню на карте Мадрида".
Я думаю, что сказанное выше можно смело применить и к поисковой оптимизации: простых путей нет. Вот поэтому я считаю мифом, что раскрутить сайт можно только путем редактирования meta-тегов.
Почему meta-теги бессильны?
Все дело в том, что толком неизвестно насколько важными являются meta-теги для релевантности сайта. Да и вообще используют ли информацию из них поисковые машины.
Иначе обстоит дело с поиском внутри самого сайта. Вот здесь информация из meta-тегов как раз и помогает найти пользователю страничку на сайте с необходимой информацией. Или, по крайней мере, сузить количество возможных страниц до минимума.
К сожалению, разница между внутренним поиском и поиском с помощью поисковой машины (напр. той же Google) очень велика. Например, с помощью внутреннего поиска можно без проблем найти минимальное количество страничек, которые будут максимально соответствовать поисковому запросу. К тому же содержание сайта (контент) и meta-теги только помогут пользователю добраться до нужной ему информации.
С другой стороны, все главные поисковые машины интернета имеют свои базы данных, которые содержат информацию о всех интернет страничках, о которых они только знают. Они-то не всегда доверяют информации из meta-тегов, так как она запросто может отличаться от истинного содержания сайта. К примеру, вы как владелец сайта, желаете видеть свой сайт на верху результатов поиска по многим ключевым словам (фразам), но поисковик все равно поместит туда наиболее релевантные по данным ключевым словам сайты.
Вот по этой причине только изменять информацию в meta-тегах не приведет к росту рейтинга сайта и увеличению трафика.
И о контенте замолвим мы слово...
Бесспорно, вы можете наполнять свой сайт статьями любого содержания и тематики и надеяться на быстрый эффект. Но вот только написание хороших статей (т.е контента) требует времени и часто довольно много. Можно, конечно, потратить годы на написание статей, что в конечном итоге приведет к появлению довольно весомого архива полезной информации. Вот только у меня возникаю сомнения, что кто-то сможет писать 100 статей в неделю, да еще и интересных и полезных в информационном плане для посетителя. Тут нужно либо нахально воровать контент с других сайтов, либо пользоваться программами для его генерации, либо становиться роботом с множеством рук!
А как же ссылки?
Да, без сомнений, ссылки - это очень важный инструмент, который помогает вашему сайту хотя бы просто быть замеченным (проиндексированным) поисковой машиной. Вот только делается это не так и быстро, ввиду довольно большой инертности поисковиков. Да ведь играет еще и "вес" ссылающегося на вас сайта, а в данном случае лучше получит одну ссылки с сайта с PR=6-7, чем с сотни с PR=2-3. Но пока ваш сайт еще не раскручен, то крупные сайты вряд-ли поставят на ваш сайт ссылки. Зачем это им?
Так что лучше пока забудьте о популярности ссылки и вместо этого подумайте о привлечении на сайт целевой аудитории и как она узнает о существовании вашего сайта. Тут все проще пареной репы, как говорится. У вас есть сайт и вы занимаетесь бизнесом, который [лучше] [уникальнее] [качественнее] чем аналогичный у ваших конкурентов. Вам, естественно, нужно его заставить приносить прибыль. Не обязательно в вас должно быть много денег для рекламы вашего сайта.
Хорошая реклама в (пусть и не в самом популярной) газете, журнале или даже телепрограмме уже поможет обратить внимание на ваш ресурс. Ведь, чем популярнее сайт, тем о нем должны больше говорить. Можно даже использовать PPC (Paid per click, сервис показа баннеров с вашей рекламой с оплатой за клики), который поможет привлечь на ваш сайт заинтересованных посетителей.
Но, как бы вы не рекламировали свой сайт, не рассчитывайте на бум в течении суток.
А теперь снова вернемся к книге Стефана Ковея. Конечно, можно научиться быстро редактировать meta-теги и зарегистрировать сайт в тысячах поисковых машин, поставить свою ссылку на миллионах бесполезных сайтов. Тем не менее, если вы не потратите время на написание хорошего и уникального контента, который будет понятен и интересен посетителю, написан простыми словами без использования сленга, у вас никогда не будет долговременных положительных результатов.
Как достичь долговременных результатов
Одним из способов быстрой раскрутки есть оптимизация сайта под малоиспользуемые ключевые слов. Ваш ресурс-то будет высоко в поисковых рейтингах, да вот толку от этого маловато.
Но так как мы уже решили, что эффективная оптимизация - процесс довольно долгий, то следующие 5 советов помогут вам с пользой это время использовать.
1) Тщательно исследуйте нужные вам ключевые слова с помощью таких сервисов, как Wordtracker или KeywordDiscovery. Пусть эти сервисы и платные, но, как я считаю, чтобы заработать деньги, их нужно сначала потратить. Рано или поздно все к этому приходят. А вот как раз платные сервисы по анализу ключевых слов - совершенный инструмент раскрутки сайта.
2) Не перегружайте свой сайт графикой. Тут есть два недостатка: до сих пор толком неизвестно, как поисковые роботы обрабатывают графику; да и мало у кого из посетителей хватит терпения долго ждать загрузки вашей веб-странички.
3) Используйте понятный посетителю язык, на котором написана информация на сайте. Пусть посетителю будет понятно, что вы желаете ему рассказать. Не забывайте также оптимизировать текст под те ключевые слова, по которым вы желаете достичь высоких позиций в поисковиках.
4) Не лишним будет убедиться, что текст в теге "title" и в описании ссылки полностью сходится с контентом вашего сайта.
5) Будьте терпеливы и настойчивы. Как правило, нужно около 6-9 месяцев, чтобы получить стабильный трафик на ваш сайт с популярных поисковиков. Что поделать, так уж устроены поисковые алгоритмы - им нужно некоторое время, чтобы присмотреться к новым ресурсам. И тут не следует расстраиваться, лучше потратить время на наполнение сайта хорошим контентом.
И помните, что ваши труды по оптимизации - это работа на будущее. Как и все в этой жизни, если вы тратите время и деньги правильно и для конкретной цели, то ожидаемые результаты не заставят себя ждать.
Для многих вебмастеров SEO (search engine optimization, оптимизация для поисковой машины) - это не что иное, как просто набор трюков и методик, которые несомненно должны поднимать их сайт в рейтингах всех поисковиков. Такое отношение к SEO может и дает временные результаты, тем не менее, здесь содержится большой недостаток: правила постоянно меняются.
Алгоритмы поисковых машин постоянно меняются, как, например, антивирусное программное обеспечение. Ведь в мире постоянно появляются новые вирусы, поэтому они и должны постоянно совершенствовать и вносить коррективы в свои программы. Аналогично обстоит дело и с поисковиками: все в этом мире быстро меняется, а интернет-сфера еще быстрее.
Тем не менее, существует определенный набор правил, по которым поисковики ранжируют сайты, которых должен придерживаться каждый вебмастер в нелегком процессе поисковой оптимизации. Конечно, нет 100% гарантии, что все это работает сейчас или уже появились новые правила игры, но идея остается прежней. Меняются лишь детали, как говорится.
Но если мы не можем применить для оптимизации стандартный набор правил, то что же нам делать? Выход здесь в том, что не нужно всеми силами стараться разобраться в хитростях работы поисковой машины, а просто понять каким образом они работают. У этих самых хитростей есть своя логика работы, которую довольно просто вычислить, что и является их недостатком.
Так что же на самом деле необходимо?
Для достижения высоких позиций в рейтинге (да еще на долгое время) следует понимать, что поисковый робот - это в своем роде живое существо. Конечно, я при этом не имею ввиду, что у них есть мозги, пусть это останется для писателей-фантастов. Тем не менее их поведение и способы работы во многом похожи на работу этого самого мозга.
А теперь остановимся на рассмотрении некоторых функций их "мозга". В общем можно сказать, что им присуща такая специфика, как (если принять интернет за мир с множеством дорог) ходить различными путями, следуя указаниям установленных знаков и собирая всевозможную информация об этой дороге. Затем они направляют собранную информацию группе серверов, которые уже по своим специфическим алгоритмам определяют ее важность для внесения в свои базы.
По каким принципам работают эти алгоритмы? Для начала они создаются людьми, которые прекрасно разбираются в принципах работы интернета и информации, которая в нем содержится. А так как всемирная паутина постоянно изменяется, то эти самые люди и вносят необходимые коррективы в поисковые алгоритмы. По своей сути поисковую машину следует рассматривать, как существо, которое постоянно собирает информацию, сохраняет ее, а потом сортирует исходя из ее важности и с большим удовольствием отсеивает ненужную. Только вот как это она делает и исходя из каких принципов - толком не ясно.
Присмотримся поближе
Понимание того, что из себя представляет поисковая машина на самом деле, попытаемся выяснить в сравнении с анатомией человека. Пусть машина и не дышит, но она содержит много схожего, что необходимо ей для ее виртуальной жизни. А состоит она из следующего:
Легкие: Данный орган у поисковой машины, как и большинство жизненно важных органов, расположены внутри огромных data-центров (сервера, специально предназначенные для хранения информации). Как и организме человека, легкие мы не считаем очень важным органом, тем не менее понимаем, что без них не обойтись и нужно поддерживать их здоровыми.
Руки и ноги: Представим себе, что руки и ноги поисковой машины не что иное, как ссылки на ресурсы, которые она щедро выдает по запросу пользователя. С помощью этого органа мы можем найти все, что нам нужно и получить указатель в виде ссылки на необходимый ресурс. Также, как и тело человека изначально было создано для движения и исследования окружающего мира, аналогично и поисковые машины изначально запрограммированы исследовать всемирную паутину.
Глаза: Глазами поисковой машины являются так называемые пауки (еще их называют роботами или краулерами). Эти самые пауки постоянно просматривают интернет для поиска новых сайтов и следят за изменениями на уже проиндексированных. В данном случае пауки "ползают" по страничкам сайта по его внутренним ссылкам (как по путям), аналогично человеку, который на своем пути видит множество дорог для своего передвижения. К счастью для нас, поисковые роботы движутся по оптико-волоконным проводам, вот поэтому они могут путешествовать по интернету со скоростью света. Это-то и позволяет им посетить все интернет-странички, которые попадаются им на пути.
Мозг: Мозг поисковой машины выполняет те же функции, что и мозг человека: содержит целый набор функций для управления организмом своего хозяина. Также у мозга должен быть свой инстинкт, который должен знать о работе и постоянно контролировать все органы и системы. Вот поэтому поисковой машине никак не обойтись без этого самого мозга, который ей и помогает выжить в этом враждебном мире (пусть в чем-то и виртуальном).
Инстинкт: С помощью инстинкта поисковые машины имеют набор ключевых функций, таких как просматривание сайтов и фильтрация данных, которые нужно или не нужно индексировать. Они запрограммированы игнорировать некоторые типы файлов, не соответствующих определенным критериям. Как мне кажется, в инстинкте поисковой машины главное - это механизм или алгоритм, с помощью которого она индексирует сайты.
Знания: Поисковые машины прекрасно осведомлены о всех тонкостях индексации сайтов. Те знания, которыми они владеют, идут далеко впереди знаний всех пользователей, вебмастеров и оптимизаторов. Поисковая машина знает множество методов сортировки, представления данных, и, естественно, еще и имеет свой специфический набор хитростей и уловок.
Пока поисковый робот путешествует по интернету и индексирует веб-странички, параллельно он отсылает обратно в свой data-центр собранные им данные. Именно в этом центре данные обрабатываются согласно алгоритмов, а спам-фильтры отсеивают ненужное.
Подобно тому, как мы анализируем информацию из статьи в газете согласно своему видению мира, так и поисковики обрабатывает и ранжируют данные в строгом соответствии со своими законами и пониманием работы интернета.
Изучение: Так как поисковая машина ранжирует веб-странички согласно своему видению и пониманию законов функционирования интернета, а эти правила постоянно изменяются, то поисковые алгоритмы постоянно изменяются. Вот тут-то как раз и нужен механизм адаптации или самообучения поисковика.
В то же время, наряду в способностях просматривать странички, поисковые роботы должны уметь определять и наказывать попытки запрещенной раскрутки сайта. При этом благосклонно относится к честным вебмастерам и оптимизаторам.
Вот примеры тех областей, в которых поисковые машины так часто любят менять свои алгоритмы:
* Определения релевантности контента того сайта, на который она нашла ссылку;
* Способность обнаруживать информацию, которая содержится в новых типах данных, к примеру, базы данных, flash и т.п.
* Понимание нечестных методов раскрутки сайтов, таких как размещение "невидимого" текста, ссылок и т.п. Данные технологии рассматриваются поисковой машиной как спам, а пойманные на этом ресурсы попадают в так называемый "черный список";
* Изучение полученных данных, выявление недостатков в индексации, что приводит в действие механизм изменения алгоритма в сторону более эффективного определения релевантности сайта.
Способность к изучению и адаптации к окружающему интернет-пространству изначально закладывается при разработке алгоритмов работы поисковой машины. Ну и, само собой, остается актуальной до следующего обновления алгоритма.
От теории к практике
Все, о чем было сказано выше, касалось лишь аспектов работы поисковой машины. А вот как эти знания применить для раскрутки сайта? Все дело в том, что для правильного выбора стратегии раскрутки необходимо хорошо понимать, каким образом работает эта самая поисковая машина: собирает информацию, ранжирует сайты и т.д.
В свое время, когда одним из основных методов раскрутки было размещение большого количества ключевых слов на страницах сайта, многие вебмастера создавали целые сообщества из сайтов, дабы взаимным обменом ссылок достичь высоких позиций в рейтингах. А вот работает ли эта тактика сегодня? Работает, только результат скорее всего будет временным и краткосрочным.
Ведь поисковая машина, как и человек, хочет выжить в агрессивной окружающей среде. Поэтому, если результаты их работы будут плохими (а вот как раз нечестные методы раскрутки часто ведут к выдаче ненужной посетителю информации), то они медленно, но уверенно перестанут существовать. А ведь при постоянно растущей конкуренции эволюционировать крайне необходимо.
Для примера, пользователю значительно удобнее и проще найти сайт с множеством контента, который ему необходим. Как правило, на таких сайтах он часто обновляется, что позволяет сайту быть актуальным. Поэтому делайте выводы.
Немаловажным моментом остается и обмен ссылками. В данном вопросе намечается тенденция к снижению релевантности обратных ссылок, а обмен ссылками между сайтами разных тематик и вовсе малоэффективен. Но если же вы все же решите поставить обратные ссылки, то обязательно убедитесь, что они ведут на родственные по тематике сайты.
Данная стратегия хорошо работает как для привлечения посетителей, так и для повышения релевантности сайта. Ведь многие пользователи переходят из сайта на сайт по внутренним ссылкам. А если они еще и стоят на авторитетном и посещаемом ресурсе, то это только дополнительный плюс.
И напоследок...
Сам собою напрашивается вывод делать ставку на будущее. И отношение к поисковой машине как живому организму (пусть и в общих чертах) поможет выбрать правильную тактику. Вот когда она в очередной раз придет на ваш сайт, то "накормите" ее вкусным новым контентом, новыми разделами и она обязательно еще к вам вернется. А вот негостеприимных сайтов они не любят, как и быть обманутыми нечестными хозяевами. У роботов память отменная...