CloudFlare + ISPmanager

Многие видели наверно список хостеров работающих с cloudflare через api. А кто не видел, тот сейчас узнает.
Сначала регистрируемся тут https://ru.cloudflare.com/partner-programs
И получаем API ключ.

Потом идем на наш сервер с ISP manager.
Там вкладка Плагины. Выбираем cloudflare. Все просто и понятно.

Но там выдает ошибку.

Заходим по ssh на сервер, т.к. в репозиториях нет этого модуля, то собираем вручную.
Устанавливаем CPAN
yum install perl-CPAN
Далее если установился ExtUtils::MakeMaker
то идем к следующему пункту, если нет то вводим cpan, появится окно

в нем пишем install ExtUtils::MakeMaker

Using included version of JSON::PP::Compat5006 (1.09) because it is not already installed.
Using included version of CPAN::Meta::YAML (0.008) because it is not already installed.
Using included version of CPAN::Meta (2.112621) because it is not already installed.
Using included version of File::Copy::Recursive (0.38) because it is not already installed.
Using included version of Version::Requirements (0.101020) because it is not already installed.
Using included version of JSON::PP (2.27200) because it is not already installed.
Using included version of version (0.88) as it is newer than the installed version (0.77).
Using included version of Parse::CPAN::Meta (1.4401) because it is not already installed.
Using included version of ExtUtils::Manifest (1.60) as it is newer than the installed version (1.56).
Checking if your kit is complete…
Looks good
Writing Makefile for ExtUtils::MakeMaker
Writing MYMETA.yml and MYMETA.json
Could not read ‘/root/.cpan/build/ExtUtils-MakeMaker-6.66-0WpzyX/MYMETA.yml’. Falling back to other methods to determine prerequisites
Can’t exec «make»: No such file or directory at /usr/share/perl5/CPAN/Distribution.pm line 2003.
BINGOS/ExtUtils-MakeMaker-6.66.tar.gz
make — NOT OK
Warning (usually harmless): ‘YAML’ not installed, will not store persistent state
Running make test
Can’t test without successful make
Running make install
Make had returned bad status, install seems impossible
Failed during this command:
BINGOS/ExtUtils-MakeMaker-6.66.tar.gz : make NO

Теперь приступим к установке самого модуля.
создадим папку
cd /var/
mkdir punycode
cd punycode
скачаем сам модуль http://search.cpan.org/CPAN/authors/id/R/RO/ROBURBAN/IDNA-Punycode-0.03.tar.gz
распакуем скачанный архив tar xvfz IDNA-Punycode-0.03.tar.gz
перейдем в папку cd IDNA-Punycode-0.03
соберем сам модуль

[root@s3 py]# cd IDNA-Punycode-0.03
[root@s3 IDNA-Punycode-0.03]# perl Makefile.PL
Checking if your kit is complete…
Looks good
Warning: prerequisite Test::More 0.32 not found.
Writing Makefile for IDNA::Punycode

теперь установим модуль
make install
если напишет нет make, то установим его
yum install make

после этого повторим
make install

[root@s3 IDNA-Punycode-0.03]# make install
cp lib/IDNA/Punycode.pm blib/lib/IDNA/Punycode.pm
Manifying blib/man3/IDNA::Punycode.3pm
Installing /usr/local/share/perl5/IDNA/Punycode.pm
Installing /usr/local/share/man/man3/IDNA::Punycode.3pm
Appending installation info to /usr/lib64/perl5/perllocal.pod

теперь заходим в панель и устанавливаем плагин, потом обновляем страницу и видим что у нас появился пункт в меню cloudflare

заходим в него, нажимаем на кнопку Settings и в окне вписываем свой API hostkey, который мы получили в самом первой ссылке, при регистрации в партнерской системе.

Пробуем активировать домен. После этого на почту должно письмо.

Переходим по ссылке в письме, ставим пароль и видим наш домен.

На этом установка плагина закончена.

Далее.
Step 3: Enable CloudFlare for Three Test Websites To ensure that CloudFlare was properly installed, enable CloudFlare for three test websites from your control panel.
To check if a website is on CloudFlare, use Terminal. Open Terminal, and enter the following dig command.

dig www.mydomain.com

Output without CloudFlare-enabled:

www.mydomain.com 10782 IN CNAME www.mydomain.com

Output with CloudFlare-enabled:

www.mydomain.com 10782 IN CNAME www.mydomain.com.cdn.cloudflare.net.

If you see ‘.cdn.cloudflare.net’, then CloudFlare is enabled.

Переводим понятным языком.
Домены клиентов будут оставаться на ВАШИХ ns серверах.
Но при включении кнопочки cloudflare в isp manager панели.
В dns зоне домена будут добавлены дополнительно 2 записи.



*это тестовый домен, на нем невозможно посмотреть результат.

Каждый пользователь ISP manager видит у себя в меню панели.

Если у него есть аккаунт на cloudflare — он может забить логин/пароль.
А если у него нету — то, нажимая на кнопку «включить» — автоматически создается ему аккаунт в системе cloudflare и туда добавляется его домен. И последующие домены будут так же добавляться. Регистрация происходит на email пользователя, который забит в isp manager.

Все домены добавленные в аккаунт cloudflare таким образом — сразу становятся «подтвержденными».
Но при попытке настроить DNS зону, внутри сервиса cloudflare — будет выходить ошибка. Там будет написано, что домен должен находиться на dns хостера-партнера.
Зато доступны все остальные функции.
Приложения, статистика, фильтрация ip.

Вот такая вот штука.

Обзор написан alice2k в мае 2013. Скрины и сам рассказ установки предоставил xakep, который создал это для своего хостинга lite-host.ru.

Пока что alice2k еще не особо вникал в полезность подобных шлюзов, но если так подумать, получается что cdn, защита спама/атак, udp флуда. Плюс на такие домены можно повесить кешированную заглушку, как везде. И заодно продвигается сервис cloudflare. alice2k уже давно на своих серверах отключает почту и dns в принципе 🙂 А всем людям дает ссылку, чтобы они пользовались яндексом или cloudflare.

Если вы хотите сами написать обзор-мануал, который может быть полезен обществу — присылайте на project@obzor.ly, если он полезен — обязательно будет опубликован. А в конце будет указан автор/хостер этого мануала.

  • Максим

    По www домен будет работать через cloudflare, а как же без www? Вижу, что запись «домен A ip» — сервера, поэтому не вижу смысла фильтровать только через www.