Настраиваем проброс IP клиентов за CloudFlare

Опубликован в блоги: Системному администратору, Nginx
Многие для защиты и ускорения работы своего ресурса пользуются системой CloudFlare, однако при её использовании в логи веб-сервера пишутся IP адреса сети CloudFlare, а не настоящие IP пользователей. В данном HOWTO мы рассмотрим как это исправить.

Введение

CloudFlare — это распределённая по всему миру CDN (content delivery network), предоставляющая функции ускорения загрузки пользовательских сайтов за счёт кэширования и обеспечивающая фильтрацию трафика (на платных тарифных планах ещё и полноценную защиту от DDoS атак).

Для своей работы CloudFlare использует прокси-серверы, расположенные по всему миру, что скрывает настоящий IP, на котором располагается сервер.

Схема работы выглядит так: Клиент -> CloudFlare -> Сервер -> CloudFlare -> Клиент. Таким образом, в логах сервера вы увидите не реальный IP клиента, а IP одного из прокси-серверов CloudFlare. При этом CloudFlare передаёт настоящий IP-адрес клиента в отдельном HTTP-заголовке CF_CONNECTING_IP. Далее мы рассмотрим как настроить его обработку.

Читать дальше →

Отключение APC

Опубликован в блоги: .htaccess, APC
Для некоторых сайтов необходимо отключить ускоритель PHP — APC.
Для этого необходимо вставить следующую строчку в файл .htaccess:

php_flag apc.cache_by_default Off


Если необходимо отключить лишь у одного скрипта, то в самом начале кода добавьте:
ini_set('apc.cache_by_default', 'Off');


Нужно понимать, что производительность сайта упадёт примерно на 30%.

Основные моменты использования iptables

Опубликован в блоги: IPTABLES, SSH
Что такое iptables? iptables — утилита(служба) для контроля сетевого трафика или попросту некий фаерволл с огромными возможностями.
Важно: запускать iptables необходимо с правами root'a.

Синтаксис iptables следующий:
iptables [-t ТАБЛИЦА] -A ЦЕПОЧКА ПАРАМЕТРЫ -j ДЕЙСТВИЕ

Ключи для работы с цепочками:
-A — добавить новое правило.
-D — удалить правило.
-F — удалить все правила.
-R — замена правила.
-L — вывод списка всех правил.

Читать дальше →

Конвертируем базу данных MySQL из WINDOWS-1251 в UTF-8

Опубликован в блоги: SQL, Базы данных


Часто случается, что необходимо выполнить конвертацию существующей базы из одной кодировки в другую. Нам чаще всего приходится конвертировать из Win-1251 в UTF-8. Это можно произвести разными способами, но самый быстрый и простой – использование SQL-запроса.


Читать дальше →