По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Каждый день на сайт заходят тысячи поисковых роботов/ботов, и очень немногие из них помогают. Некоторые из них вообще являются продуктами злоумышленных целей ботами или спамом. Откуда можно узнать, сколько разных ботов посещают ваши веб-сайты? На самом деле, однозначного ответа нет. Для этого необходимо просмотреть файл access.log веб-сервера и найти столбец User-Agent. Допустим, вы хотите перечислить все боты, кроме Googlebot, тогда вы можете выполнить следующую команду на вашем веб-сервере, где существует файл access.log. grep bot access.log |grep -v Googlebot Вас тоже удивил результат? Вот, что выдал тот же запрос на моем сервере: root@gf-prod:nginx# grep bot access.log |grep -v Googlebot | wc -l 616834 root@gf-prod:nginx# Прежде чем блокировать что-либо, необходимо просмотреть их и убедиться, что вы не блокируете то, что используется вашим приложением. Вообще, есть много способов блокировки ботов, но я всегда предпочитаю блокировать их на границе. Причина проста - бесполезные запросы вообще не должны попадать и обрабатываться веб-сервером. А теперь, давайте узнаем, как блокировать ботов, которые вам не нужны, с помощью брандмауэра Cloudflare. Заходим на панель управления Cloudflare; Переходим на вкладку Firewall, затем - правила firewall и нажимаем на кнопку создать правило firewall. Вводим название правила; В качестве фильтра выбираем User Agent, оператор - contains, а в качестве значения - название бота, которое нужно заблокировать; Чтобы добавить несколько критериев в одно правило используйте оператор OR. Примечание: боты, указаны в целях демонстрации, они не обязательно вредоносные. Затем в качестве действия выбираем Block и нажимаем Deploy; Если умеете работать с выражениями, то тоже самое можете сделать кликнув на ссылку Edit expression. Сразу после применения, можно будет увидеть созданное правило. Чтобы данное правило применялось к трафику, переключатель состояния должен быть ON. Легко, не так ли? Что еще можно сделать, экспериментируя с правилами межсетевого экрана? Для повышения безопасности можно применять указанные ниже критерии блокировки: Блокировать если запрос идет с конкретного ASN или IP адреса; По соответствию ключевым словам cookie, referrer, X-Forwarder-for; Блокировка запросов из конкретной страны; Отключение нежелательных HTTP-методов в роде PUT, DELETE, OPTIONS, PURGE и т.д. И другие подобные опции. Все это можно выполнить как с помощью графического интерфейса, так и редактированием выражений. Изменения применяются почти сразу. Заключение Правила брандмауэра Cloudflare - отличный способ без простоев повысить защиту веб-приложений на границе сети. Если еще не применяете данное решение, вы также можете рассмотреть возможность использования Cloud WAF для повышения безопасности приложений и защиты от DDoS и других сетевых уязвимостей.
img
Одним из ключевых факторов, которые следует учитывать при разработке веб-сайта или веб-приложения, является пропускная способность, которая потребуется вашему сетапу для правильной работы. Знание требований к пропускной способности поможет вам выбрать правильного хостинг-провайдера и составить план в соответствии с вашими потребностями. В этом руководстве мы покажем вам, как рассчитать пропускную способность, необходимую для вашего веб-сайта или веб-приложения. Что такое пропускная способность? Пропускная способность представляет собой максимальную емкость данных, которые могут быть переданы по сети за одну секунду. Наименьшая единица измерения выражается в битах в секунду. С развитием технологий интернет-провайдеры теперь используют мегабит в секунду (Мбит/с) или гигабит в секунду (Гбит/с). Пропускная способность - это термин, который описывает объем трафика между вашим сайтом и пользователями через Интернет. Не путайте пропускную способность со скоростью соединения, поскольку они не совпадают. Пропускная способность против передачи данных Термин пропускная способность иногда используется как синоним передачи данных. На самом деле это две очень разные вещи. Пропускная способность определяет максимальный потенциальный объем данных, который вы можете передавать за единицу времени между вашим сайтом и пользователями. Этот термин отражает не фактические данные, которые вы передаете, а теоретический объем данных, который вы можете обработать за одну секунду. С другой стороны, под передачей данных понимается фактический общий объем данных, которые вы передаете за период, обычно за месяц. Единицы измерения - килобайты (КБ), мегабайты (МБ), гигабайты (ГБ), а для больших приложений - терабайты (ТБ). Важность пропускной способности Расчет правильной полосы пропускания для вашего веб-приложения имеет решающее значение на этапе разработки и для обеспечения стабильной производительности. Обязательно учитывайте внезапные всплески трафика. Хорошее правило - на 50% превышать прогнозируемую потребность в пропускной способности. Однако при выборе веб-хостинга расчет может показаться ненужным, поскольку большинство хостинг-провайдеров предлагают планы с «неограниченной» пропускной способностью. Примечание: ваша система может со временем расширяться, и требования к пропускной способности могут возрасти. Поэтому выберите масштабируемый план, позволяющий при необходимости изменять пропускную способность. Что такое неограниченная пропускная способность Многие провайдеры рекламируют планы с «неограниченной» пропускной способностью. Эта формулировка подразумевает, что вы можете передавать столько данных, сколько вам нужно. Здесь веб-хостинг предлагает фиксированную ставку, которая упрощает покупку и поиск решения для хостинга. Однако правда в том, что хостинговые компании не могут предложить действительно неограниченную пропускную способность. Затраты и технологические требования были бы слишком высокими для этого. По этой причине планы с неограниченной пропускной способностью предлагают достаточную пропускную способность, чтобы удовлетворить потребности большинства клиентов. Таким образом, планы кажутся неограниченными для этих пользователей. В большинстве случаев обычные планы покрывают стандартные требования к веб-приложениям. Есть также планы для более продвинутых клиентов, обеспечивающие скорость, превышающую ту, которую предлагают обычные безлимитные планы. Расчет требований к пропускной способности Прежде чем рассчитывать требования к пропускной способности, вы должны знать средний размер страницы на вашем веб-сайте. Чтобы определить размер, используйте тест времени загрузки и учитывайте данные как минимум для десяти страниц. Затем рассчитайте средний размер страницы для вашего сайта. Имея эту информацию, вам необходимо учесть еще два элемента: Количество посещений ваших страниц. Дополнительная пропускная способность может потребоваться в случае всплеска трафика. Это предотвращает потенциальные проблемы с производительностью или даже простои. Есть две формулы для расчета необходимой пропускной способности. Требования к пропускной способности веб-сайта без скачиваний пользователем Если ваш веб-сайт не предлагает посетителям загружаемый контент, используйте следующую формулу для расчета необходимой пропускной способности: Пропускная способность = Средний размер страницы * Среднее количество просмотров страницы * Среднее количество посетителей в день * 30 * Избыточность Средний размер страницы - это средний размер вашей веб-страницы. Среднее количество просмотров страницы - среднее количество просмотров страницы на посетителя. Среднее количество посетителей в день - среднее количество посетителей в месяц. 30 - число дней в месяце. Избыточность - фактор безопасности для предотвращения скачков трафика. Диапазон от 1,3 до 1,8. Расчет немного отличается, когда ваш сайт предлагает загружаемый контент. Требования к пропускной способности веб-сайта со скачиванием Чтобы рассчитать необходимую пропускную способность, когда ваш веб-сайт предлагает загружаемый контент, используйте следующую формулу: Пропускная способность = [(Средний размер страницы * Среднее количество просмотров страницы * Среднее количество посетителей в день) + (Средняя загрузка в день * Средний размер файла)] * 30 * Избыточность Новые параметры в этой формуле: Среднее количество загрузок в день - представляет собой среднее количество загружаемых файлов в день. Средний размер файла - это средний размер загружаемых файлов. С помощью этого расчета вы знаете прогнозируемые требования к пропускной способности для пользовательских загрузок.
img
Полиалфавитный шифр – это криптосистема, в которой используется несколько моноалфавитных шифров. Поэтому нам необходимо иметь как минимум 2 таблицы и шифрование текста происходит следующим образом. Первый символ шифруется с помощью первой таблицы, второй символ – с помощью второй таблицы и так далее. Сильные стороны полиалфавитных шифров заключается в том, что атака по маске и атака частотным криптоанализом здесь не работает, потому что в таких шифрах две разные буквы могут быть зашифрованы одним и тем же символом. Моноалфавитные шифры были популярны вплоть до конца 16 века, так как практически все научились их вскрывать. Необходимо было что-то менять и поэтому в 1585 году был создан шифр Виженера. С этого началась новая эпоха в истории криптографии, которая называется период полиалфавитных шифров, хотя попытки создать подобные криптосистемы были и раньше за пол века до этого, но ничего серьёзного из этого не получилось. Шифр Гронсфельда Данный шифр представляет собой модификацию шифра Цезаря и по своей структуре похож на шифр Виженера. Принцип работы. Берём к примеру текст «РАБОТА» и ключ, например - «136». Ключ в данном случае не одно число, а набор цифр, для понимания можно представить в виде «1,3,6» и не важно какой длины. Далее каждой букве исходного текста присваиваем по 1 цифре ключа, например «Р(1) А(3) Б(6) О(1) Т(3) А(6)» и каждому символу исходного текста прибавляем значение ключа по методу Цезаря. Получается зашифрованный текст «СГЖПХЁ». При расшифровании проделываем ту же логику, как при расшифровании по методу Цезаря. Шифр Виженера Шифр Виженера является самым популярным полиалфавитным шифров за всю историю. Для начала создаётся квадрат Виженера. Ключом в данном методе может быть любой длины и состоять из любых символов, которые есть в таблице 3. Например возьмём ключ «ШИНА» и исходный текст «РАБОТА». Проделываем то же самое, что и при шифре Гронсфельда, к каждой букве исходного текста записываем исходную букву ключа – «Р(Ш) А(И) Б(Н) О(А) Т(Ш) А(И)». Согласно таблице 3 по диагонали находим букву исходного текста, а по вертикали находим букву ключа, их пересечение является зашифрованной буквой, таким образом проделываем для всех букв и шифруем текст, получается «СЙППКЙ». Чтобы расшифровать нам нужно точно так же под каждой буквой закрытого текста записываем букву ключа - «С(Ш) Й(И) П(Н) П(А) К(Ш) Й(И)». По вертикали находим букву ключа и по этой строке находим зашифрованную букву, пересечение с буквой по горизонтальной строки – буква исходного текста, расшифровывает и получаем исходный текст. Атака методом индекса совпадений В данном случае рассмотрим криптоанализ шифра Виженера, его так же можно применять и к шифру Гронсфельда. Нижеприведённый метод криптоанализа называется методом индекса совпадений. Атака методом индекса совпадений состоит из 2 шагов: Определяет длину ключевого слова Дешифрование текста Рассмотрим каждый из этапов: 1. Для того, чтобы найти длину ключа воспользуемся методом индекса совпадений. ИС = 0,0553 Индекс совпадений – это константа, вероятность того, что две наугад выбранные буквы в нормальном осмысленном произвольном русском тексте будут одинаковые.То есть вероятность, что две наугад выбранные буквы будут одинаковые, равна 5,53%. При атаке на шифротекст необходимо ориентироваться именно на эту вероятность. Если имеет шифротекст, зная о нём только то, что он зашифрован шифром Виженера, определяем длину ключа. В шифре Виженера ключом выступает любая последовательность цифр, начиная с 2, потому что если была бы 1 буква, то это просто шифр Цезаря. Итак, начиная с минимума, предполагаем, что длина ключа составляет 2 символа и проверяем это. Выбираем из шифротекста каждую вторую букву, начиная с первой и выписываем отдельно полученную строку. Предполагаемую длину ключа обозначаем k=2, а количество символов в этой строке за L. Далее из алфавита берём каждую букву и считаем для неё индекс совпадений, то есть берём определённую букву и подсчитываем сколько раз она встретилась в этой строке шифротекста (это число обозначаем – n), и так для всех букв. Далее высчитываем индекс совпадений по формуле ИС = n(n-1)/L(L-1) Далее высчитываем индекс совпадений для всего текста путем сложения всех индексов совпадений для всех букв отдельно. Получаем определённое значение и сравниваем его со значением константы. Если индекс совпадений очень близко к константе или больше, то это означает, что подобрана верная длина ключа. Если значение индекса намного отличается от константы, то значит подобранная длина ключа неверная и необходимо взять длину ключа 3 и выбирать из шифротекста каждую третью букву, начиная с первой и выполнять те же действия. Если индекс снова намного отличается от константы берем следующие значения ключа и выполняет те же действия, до тех пор, пока индекс совпадений будет очень близок к константе. 2. Вычислив длину ключевого слова возвращаемся к шифротексту. Разбиваем текст на количество символов символов в ключе, например, при длине ключа k=3, делим текст на 3 части. В первую часть будет входить каждая третья буква, начиная с первой, во вторую часть – каждая третья буква, начиная со второй, и третья часть – каждая третья буква, начиная с третьей. После этого выписываем отдельно каждую часть. Отдельная часть представляет собой обычный шифр Цезаря. Далее дешифруем каждую часть методом частотного криптоанализа. Находим самую частую букву каждой части шифротекста, сравниваем её с буквой «О», так как она в русском алфавите самая частая и сравниваем шифрованную букву с буквой «О». Вычисляем разницу позиций между ними – в ответе получим число, равное ключу и дешифруем с помощью него по шифру Цезаря первую часть шифротекста. Такие же действия проделываем и для остальных частей, затем восстанавливаем части дешифрованного шифротекста и получаем исходный текст. Автокорреляционный метод Данный метод проще в реализации, чем метод индекса совпадений, но последовательность действий точно такая: Определение ключа Дешифрование текста Имея шифротекст, необходимо посчитать количество букв в нём. Желательно весь шифротекст записать в одну строку, затем сделать копию и разместить под ней же. Как и в случае с методом индекса совпадением предполагаем для начала минимальную длину ключа, то есть k=2. Затем в копии строки шифротекста убираем первые два символа и дописываем их в конец строки. Далее ищем количество совпадающих букв между этими двумя строками и находим долю количества совпадений от общего количества символов в тексте по формуле: Y = n/L Y - Доля количества совпадений n – количество совпадений L – количество символов в шифротексте Полученное значение сравниваем со значением контанты индекса совпадений, так же – если это значение намного отличается, предполагаем длину ключа k=3 и делаем ту же процедуру до тех пор, пока доля количества совпадений будет близка к константе индекса совпадений. После нахождения длины ключа проделываем то же самое, что и в методе индекса совпадений и дешифруем текст. Шифр Тритемиуса Шифр Тритемиуса позиционируется усиленным шифром Цезаря и описывается формулой: C = (m+s(p))modN C - номер зашифрованного символа в алфавите m - номер символа открытого текста в алфавите n - количество символов в алфавите s(p) - это ключ, который представляет собой математическую функцию, например: s(p) = 2p+const p - порядковый номер символа в исходном тексте const - любое число, которое задаётся в ручную Точно так же, как в шифре Цезаря каждый символ, перед тем, как шифровать, будет переводится в число, согласно определённой таблице. Первое, что нужно сделать – пронумеровать все символы в исходном тексте, то есть каждый символ получается свой номер в зависимости от своей позиции в тексте. Шифрование происходит посимвольно. Расшифрование происходит похожим способом и описывается формулой: C = (m-s(p))modN Шифр для своего времени очень неплох, потому что не смотря на свою простоту, то есть самая сложная часть – это выбрать функцию s(p). Он демонстрирует достаточно высокий криптоустойчивости, то есть не уступает ни шифру Виженера, ни шифру Гросфельда. Книжный шифр Книжный шифр – не является популярным шифром среди старых шифров, но при грамотном подходе к использованию, обеспечивает криптостойкость на порядки выше, чем шифр Виженера и Гронсфельда. Это симметричный шифр, в котором в качестве ключа используется любая книга на выбор, и процесс шифрования происходит посимвольно. Выбираем первый символ исходного текста и находим его в нашей книге (с любого места). И в качестве зашифрованного символа используем комбинацию из 3 цифр (номер страницы, номер строки, номер символа в строке) и проделываем тоже самое с остальными символами исходного текста. При этом для повышения безопасности при повторении символа в исходном тексте выбирать для него другую комбинацию в книге, чтобы зашифрованные комбинации не повторялись. Чтобы получатель смог расшифровать полученное сообщение должен обладать точно такой же книгой. Поочередно смотрит комбинацию и находит её в данной книге и расшифровывает полученное сообщение. Недостаток этого шифра – это непрактичность и трудоёмкость при шифровании и расшифровании.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59