Интеграция BILLmanager с DNSmanager

Материал из ISPWiki

Перейти к: навигация, поиск

Содержание

Интеграция для создания самостоятельных услуг

Подключение DNSmanager ничем не отличается от стандартной настройки сервера обработки. Подробнее можно ознакомиться в статьях Серверы и Как создать тарифный план

При связке BILLmanager с DNSmanager возможно использовать два вида услуги серверов имен: с собственным сервером имён (при этом пользователю выделяется IP адрес) и с использование серверов имён провайдера.

Собственный сервер имён

Чтобы дать возможность клиенту указывать доменное имя для своего NS сервера, необходимо в тарифном плане указать опцию "Собственный сервер имён". При заказе услуги клиент сможет указать доменное имя, например, "ns.mynameserver.com", которое будет использовано для создания пространства имен.

В случае открытия услуги на базе DNSmanager 5, созданные сервера имен можно использовать в качестве основного сервера имен для доменов с настройкой передачи зоны.

Сервера имён провайдера

Действует только если сервер настроен с правами реселлера и в тарифном плане отключена опция "Собственный сервер имён". При заказе услуги шаг с указанием доменного имени пропускается.

При создании пользователя в DNSmanager будет использовано доменное имя, прописанное в конфигурации сервера ("Интеграция" -> Серверы) в поле View.

Особенности: позволяет экономить IP адреса.

Интеграция для создания дополнительных услуг

Общая информация

Интеграцию с DNSmanager можно использовать так же для обработки дополнения к услугам, имеющего тип "Сервера имен" (внутреннее имя ns). При этом в зависимости от настроек тарифного плана и/или выбранного клиентом при заказе услуги значения будут созданы либо сервера имен в собственном пространстве имен, либо в пространстве имен провайдера.

Настройка тарифного плана при этом производится в соответствии со страницей документации по созданию тарифа с выбором серверов имен.

Настройка интеграции

Настройка интеграции BILLmanager с DNSmanager для обработки дополнений к услугам вида "Сервера имен" средствами BILLmanager состоит из следующих этапов:

  1. Добавление в BILLmanager связей с DNSmanager. Настройка связей с DNSmanager выполняется в разделе "Связь с DNSmanager", при этом могут быть использованы как существующие подключения в DNSmanager, так и добавлены новые. Для каждого подключения необходимо указать будет ли подключение использоваться для создания "Собственных" серверов имен клиента, либо для создания серверов имен в пространстве имен провайдера, либо для обоих целей стразу. Так же нужно указать ограничение на количество доменных имен, которое может добавлять клиент в панель DNSmanager под каждой учетной записью, которая ему будет предоставлена.
  2. Включение для обслуживающего сервера, на котором располагается услуга опции "Использовать интеграцию с DNSmanager". После этого работу с серверами имен будет выполнять BILLmanager.

На данный момент обработка дополнений типа "Севера имен" средствами BILLmanager доступна для следующих панелей управления сервером:

  • VDSmanager (собственную интеграцию с серверами имен в DNSmanager лучше отключить)
  • VMmanager

Порядок действий BILLmanager при обработке услуг

При заказе клиентом услуги, для тарифного плана которой настроено дополнение "Сервера имен" возможно три варианта:

  1. Клиент отказался от серверов имен. В этом случае интеграция с DNSmanager игнорируется и услуга обрабатывается в штатном режиме.
  2. Клиент заказал собственные сервера имен. В этом случае BILLmanager выбирает первый сервер с DNSmanager, который подключен к тому же проекту, что и тарифный план, к которому относится услуга, и для которого разрешено использование собственных серверов имен. После обработки основной услуги, BILLmanager создает в DNSmanager учетную запись пользователя. В качестве пространства имен указывается доменное имя заказанной услуги. Данные доступа учетной записи сохраняются в базу данных BILLmanager и доступны для использования в шаблоне письма об открытии услуги.
  3. Клиент заказал услугу сервера имен на серверах имен провайдера. В этом случае клиенту создаются учетные записи на всех серверах с DNSmanager, подключенных для того же проекта, что и тарифный план, к которому относится услуга, и для которого установлена опция обработки услуг "Сервера имен провайдера". Учетные данные так же сохраняются в базу данных BILLmanager.

Во втором и третьем случае для панелей управления VDSmanager и VMmanager, модуль интеграции пытается настроить поддержку серверов имен в ISPmanager, если он установлен на виртуальном сервере. В случае использования собственных серверов имен, в ISPmanager так же добавляется доменное имя вида ns2.имя_домена_указанное_для_услуги, которое в дальнейшем выступает в роли вторичного сервера имен для всех добавляемых в панель ISPmanager доменов. В качестве серверов имен по умолчанию в ISPmanager приписываются сервера имен указанные в настройках проекта, для серверов имен провайдера и сервера имен в домене виртуального сервера для собственных серверов имен.

После добавления в ISPmanager учетных данных для подключения в DNSmanager, BILLmanager запускает синхронизацию доменных имен настроенных в ISPmanager со списком доменов в DNSmanager. Операция выполняется аналогично ручному нажатию кнопки "Обновить" в разделе "Доменные имена" в ISPmanager.

В случае если на виртуальном сервере не установлен ISPmanager, либо если BILLmanager не смог получить к нему доступ, клиенту отправляется письмо и создается тикет с указание доступа к DNSmanager (начиная с версии 4.0.77.1 письмо отправляется в любом случае).

При изменении значения дополнения "Сервера имен" после обработки услуги может возникнуть две ситуации:

  1. У клиента не были заказаны сервера имен. В этом случае производится обработка дополнения как описано выше.
  2. У клиента были заказаны сервера имен другого типа. В этом случае предыдущие учетные записи удаляются из DNSmanager и создаются новые с учетом необходимого типа.

Дополнительная информация

Формат имени пользователя

В зависимости от панели управления, которая используется для основной услуги, формат имени пользователя, который создается в панели DNSmanager может быть:

  • VDSmanager - вида pXX.XX.XX.XX, где XX.XX.XX.XX - основной IP адрес виртуального сервера в VDSmanager. Что обеспечивает совместимость с интеграцией с DNSmanager реализованной в VDSmanager и возможность перехода с одной схемы работы на другую.
  • VMmanager/VEmanager - аналогично имени виртуального сервера.

Необходимые действия при переводе функции интеграции с DNSmanager с VDSmanager на BILLmanager

Для того что бы BILLmanager'у было известно о типе используемых серверов при переключении задачи управления учетными записями в DNSmanager к BILLmanager, необходимо прописать в базе данных информацию о типе используемых в данный момент учетных записей. Это можно сделать выполнив следующие запросы к базе данных:

insert into item2server (item, username, dnsserver, nstype) select distinct i.id, concat('p', v.ip), dns.pid, 'dnsprovider' from item i left join vds v on v.pid = i.id left join pricelist p on p.id = i.price left join server s on s.id = i.server left join dnsserver dns on dns.project = p.project and dns.useforprovider = 1 where dns.pid is not null and i.status in (2,3,5) and i.parent is null and i.id in (select parent from item where enumitem = (select id from enumerationitem where internalname = 'dnsprovider')) and p.type in (select id from itemtype where module = 'vds') and i.id not in (select item from item2server) and s.cpmodule = 'cpvdsmgr' and v.ip is not null order by i.id; - для серверов имен провайдера

insert into item2server (item, username, dnsserver, nstype) select distinct i.id, concat('p', v.ip), dns.pid, 'dnsprivate' from item i left join vds v on v.pid = i.id left join pricelist p on p.id = i.price left join server s on s.id = i.server left join dnsserver dns on dns.project = p.project and dns.useforprivate = 1 where dns.pid is not null and i.status in (2,3,5) and i.parent is null and i.id in (select parent from item where enumitem = (select id from enumerationitem where internalname = 'dnsprivate')) and p.type in (select id from itemtype where module = 'vds') and i.id not in (select item from item2server) and s.cpmodule = 'cpvdsmgr' and v.ip is not null order by i.id; - для собственных серверов имен

Была ли эта информация полезной? Да | Нет
Личные инструменты