Как защитить свой блог (картинки и текст) от копирования?

В общем случае – никак :(
Всё, что Вы видите в своем браузере – оно уже есть на Вашем компьютере. Но можно сильно усложнить сам процесс копирования для любителей copy-paste.
Итак, основные направления:
- запрет выделения текста мышью и дальнейшее copy-paste
- запрет хотлингов (т.е. показывать картинки с Вашего сайта на другом домене)
- защита картинок через “водяной знак” (он же Watermark)
- запрет парсинга страницы сайта с другого домена
Запрет выделения текста мышью (запрет копирования)
Казалось бы самый простой вариант – заблокировать правую кнопку мыши. Но это не есть хорошо. Часть посетителей пользуется ей для нажатия на ссылку “открыть в новом окне”. Запрет “в лоб” правой клавиши мыши приведет к потери посещаемости сайта.
На самом деле нам надо:
- заблокировать выделение текста
- заблокировать “горячие” клавиши типа Ctrl-U (показ исходного кода страницы), Ctrl-C и Ctrl-V
- оставить работу правой клавиши мыши на ссылках
Используем плагин WP-CopyProtect [Protect your blog posts]

Плагин позволяет защитить контент блога от выделения и копирования, настройки очень простые

Разрешаем частичное копирование
Вероятно, потребуется разрешить частичное копирование информации с Вашего сайта.
Как на примере ниже.
Этот текст можно скопировать в буфер :) Этот текст можно скопировать в буфер :) Этот текст можно скопировать в буфер :) Этот текст можно скопировать в буфер :)
Такой вариант можно сделать с использованием тэгов <pre></pre>
Используем плагин Copy Anything to Clipboard

По умолчанию, плагин позволяет скопировать в буфер информацию между тэгами <pre></pre>, настройки можно изменить.

Также можно настроить отображение и название кнопки “Copy”

Запрет хотлингов, они же hotlinking
Веб отличается от MicroSoft Word. Если скопировать себе содержимое чужого сайта – текст да, скопируется, а вот картинка будет по прежнему показываться именно с Вашего сайта. Т.е. любитель copy-paste помимо воровства контента оставляет нагрузку на Ваш сервер.
Необходимо запретить своему серверу отдавать картинки при запросе с чужого домена. Но необходимо это делать аккуратно, не забыть про поисковых роботов – иначе Ваши картинки не будут видны в поиске картинок.
На самом деле тема очень большая и непростая. Блокировка хотлинга осуществляется настройкой правил для сервера, а сервер может быть разным.
а) связка серверов Nginx+PHP-FPM (Апач вообще не участвует), связка Nginx+Apace+PHP (Апач есть, но он не участвует в раздаче статики)
ВАЖНО: на 99% хостингов на входе будет Nginx
Если на входе стоит Nginx, то не важно, что там делается для статики (картинки, стили, скрипты) в .htaccess – запрос до Apache (и, соответственно, до обработки правил в .htaccess) не дойдет никогда. Для этого Nginx на входе и ставят.
Hotlink protection на Nginx делается легко с помощью всего лишь одного правила для вашего виртуального хоста.
Вот вариант.
# Предотвращаем загрузку изображений за исключением файла заглушки badreferer.png # Вместо любого запрошенного изображения вставляем заглушку badreferer.png # Для сайтов с реферером server1 и server2 разрешаем хотлинки location ~* ^.+\.(jpg|jpeg|gif|png)$ { root /path/to/root; valid_referers none blocked server_names ~\.server1\. ~\.server2\.; if ($invalid_referer) { rewrite ^ /badreferer.png last; } } location /badreferer.png { root /path/to/badreferer; }
в) На нормальных хостингах блокировку загрузки картинок можно сделать через панель управления ePanel
Вот ссылка на инструкцию к ePanel.
б) Сервер Apache без NginX – через настройку файла .htaccess
ВАЖНО: практически не осталось хостеров, которые используют только Apache
Пример
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]
Во второй строке задается разрешенный реферер – т.е. сайт (Ваш домен), который имеет право ссылаться на ваши изображения. Для разрешения хотлинкинка для нескольких сайтов, просто скопируйте эту строку и вставьте ее, изменив значение для реферера.
Или вот так, с заглушкой
# Предотвращаем загрузку изображений с хоста www.server.com, # за исключением файла баннера banner.jpg и файла заглушки # null.gif # Вместо любого запрошенного изображения вставляем заглушку # null.gif размером в несколько килобайт, находящуюся по адресу # http://www.server.com/images/null.gif RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(.+\.)?server\.ru/ [NC] RewriteCond %{REQUEST_URI} !null\.gif$ [NC] RewriteRule \.(jpg|jpeg|gif|bmp|png)$ http://server.ru/images/null.gif [L]
Есть онлайн-генератор для файла .htaccess
Защита картинок через “водяной знак”
Watermark, он же “водяной знак” – посмотрим на два основных варианта.
Для логотипа – т.е. накладывается Ваша картинка на существующую картинку
или
Для надписи, например url Вашего сайта
Хороший плагин – Signature Watermark – может оба варианта

Настройки плагина, выбираем тип:
- текст и картинка
- только текст
- только картинка

Например, при выборе текста – появляется дополнительная вкладка с параметрами. Да, центровку выбрать в бесплатной версии нельзя – только в платном варианте.

Вот такой симпатичный “водяной знак” получается на примете тестовой картинки.

Защита от парсинга сайта
Парсинг – простая вещь, средствами PHP открывается нужный URL и в файл сохраняется весь код сайта для последующего анализа. Самый простой пример – получение title, который хранится между определенными заголовками.
Вот что-то типа этого, команда file() закачивает весь код страницы в переменную, потом там ищем тэги <title> и получаем заголовок страницы в виде текстовой переменной.
$f=join('', file($backurl));
$begin=strpos(strtolower($f), "<title>", 0);
$end=strpos(strtolower($f), '</title>', $begin);
$backtitle=substr($f, $begin, $end-$begin);
$backtitle = strip_tags($backtitle);В принципе, роботы Яндекс и Google делают тоже самое при обходе сайтов, только анализируют всю страницу:)
Естественно, через парсинг желающий получает весь контент страницы. Ничего тут особо не поделаешь.
Можно защитится частично, т.к. запрос к url от браузера и запрос через функцию PHP отличаются. Но для PHP есть расширение, которое полностью эмулирует запрос браузера – и защита становится бессмысленной.
| Подпишитесь в VKontakte - нажмите кнопку | ||
| Подпишитесь в Telegram - нажмите кнопку | ||
| Наша группа ODNOKLASSNIKI |
Вы можете сохранить ссылку на эту страницу себе на компьютер в виде htm файла
Пишите на электронную почту (тема и email будут добавлены автоматически в письмо)
В Вашем браузере должна быть настроена обработка ссылок mailto
site_post@bk.ru
или просто скопируйте адрес e-mail
Почитать в разделе
Защита WP
(Читать полностью...)
- Всего статей в разделе: 12
- Показано статей в списке: 11
- Сортировка: название по алфавиту
Бан хакеров по IP для WordPress
(Читать полностью...)
Блокируем ботов-подборщиков через fail2ban
80% всех атак ботов на WordPress идут на вход в административную панель. Наша задача - такие IP отправить в бан. Используем плагин WP fail2ban.
Плагин делает важную вещь — он выводит в лог /var/log/auth.log (это один из системных логов Linux) каждую попытку авторизации на сайте (настройками можно изменить). Т.е. не создается дополнительный лог-файл - а идет запись в один общий системный лог Linux. Это удобно, если у Вас несколько сайтов на VPS, всё ошибки входа по всем сайтам будут записываться в один общий файл.
И не нужно дополнительно под каждый сайт настраивать WP fail2ban:) ВАЖНО: можно вообще "спрятать" админку от злых ботов
Меняем адрес административной панели...(Читать полностью...)
Варианты основных хакерских атак на Ваш сайт
(Читать полностью...)
Двухфакторная аутентификация WordPress
(Читать полностью...)
Закрываем папки и файлы WordPress с помощью Apache
Используем web-сервер Apache для блокировки доступа извне ВАЖНО: всё нижеперечисленное будет работать, если Вы конечно, используете сервер Apache. Если Вы используете связку NginX и PHP-FPM (сервера Apache тут нет!) все эти инструкции работать не будут! Сервер Apache не участвует в обработке запросов!
Закроем файл wp-login.php
Мы можем спрятать вход в административную панель. И ввод логина/пароля не будет уже использовать напрямую файл wp-login.php.
Но сам файл wp-login.php конечно продолжает существовать и работать, просто теперь WordPress при его запросе показывает ошибку 404. Но как мы помним, ботнетов много - и они по прежнему будут загружать Ваш сервер PHP на обработку...(Читать полностью...)
Защита базы данных сайта MySql
(Читать полностью...)
Как сбросить пароль администратора WordPress
(Читать полностью...)
Как скрыть логин автора поста
(Читать полностью...)
Как скрыть логин пользователя WordPress
(Читать полностью...)
Переводим сайт WordPress на https
(Читать полностью...)
Плагины для архивирования и переноса сайта
(Читать полностью...)















