Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

BIND с хранением зон в MySQL

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [*nix/Linux] >> BIND с хранением зон в MySQL
Имя
Сообщение << Старые топики   Новые топики >>
BIND с хранением зон в MySQL - 2008-09-23 16:42:18.413333   
surgutor

Сообщений: 627
Оценки: 0
Присоединился: 2008-05-29 11:42:15.623333
Доброго времени суток. У меня проблема-нужно настроить байнд с хранением зон в мускле под фри. Как это сделать? Поиск по интернету ничего не дал, к сожалению.
Есть у кого личные маны или какая-нибудь инф-я по этому поводу? Буду очень благодарен, ибо уже не соображаю просто КАК это сделать.
Post #: 1
RE: BIND с хранением зон в MySQL - 2008-09-23 23:24:35.743333   
Сhaos_Сode

Сообщений: 1049
Оценки: 0
Присоединился: 2006-01-12 11:54:12
Ммм.. Настроить таким образом BIND врядли получится(попросту он на такое вроде как не способен), можно написать интерфейс управления зонами, который будет позволять удобным образом добавлять новые хосты в мускул, и синхронизировать их с файлами зон байнда.(перегенирировать их, или дозаписывать)
Post #: 2
RE: BIND с хранением зон в MySQL - 2008-09-30 12:32:46.573333   
saint_byte

Сообщений: 19
Оценки: 0
Присоединился: 2008-09-30 11:21:05.296666
Вот походу есть программула на эту тему : http://source.xname.org/
Post #: 3
RE: BIND с хранением зон в MySQL - 2008-09-30 17:08:20.320000   
surgutor

Сообщений: 627
Оценки: 0
Присоединился: 2008-05-29 11:42:15.623333
Все, всем спасибо! я все сделал
Если кому-то понадобмтся-пишите-есть ман
Post #: 4
RE: BIND с хранением зон в MySQL - 2008-09-30 17:17:37.010000   
Сhaos_Сode

Сообщений: 1049
Оценки: 0
Присоединился: 2006-01-12 11:54:12
Дай плиз ссылку на ман сюды =)
Post #: 5
RE: BIND с хранением зон в MySQL - 2008-10-03 18:12:21.633333   
surgutor

Сообщений: 627
Оценки: 0
Присоединился: 2008-05-29 11:42:15.623333
Сегодня вечером залью-так как сервер на рабочей машине упал…
Post #: 6
RE: BIND с хранением зон в MySQL - 2008-10-03 23:46:47.133333   
surgutor

Сообщений: 627
Оценки: 0
Присоединился: 2008-05-29 11:42:15.623333
Как и обещал)))
Только не жди ничего такого) это самое элементарное пока) Наверно даже не скелет, так не подобрал веб-интерфейса) Тот который я нашел-"гланды через попу", а каждый раз при добавлении зон лезть в мускл как то не хочется)))
ЗЫ. Если материальчик окажется полезным-отпишись, пожалуйста. Найдешь так же баги или косяки (как в программе, так и моей настройке) тоже отпишись, буду признателен)
К сожалению, сервер лежит-не могу дать так. А мозг туго соображает
поэтому выложил ман)))

********************************************************************************
Установка DNS-сервера bind с хранением зон в базе данных MYSQL
См. также
Сайт проекта mysql-bind: http://mysql-bind.sourceforge.net/
Как прописывать DNS-зоны: http://subnets.ru/blog/?p=38
********************************************************************************
0. Предполагается, что MySQL-сервер уже установлен и настроен.
1. Скачиваем проект mysql-bind с офф. сайта (на самом деле, оттуда нам понадобятся два файла: mysqldb.c и mysqldb.h)
2. Переходим в папку со скаченным файлом и распаковываем:
cd ~/downloads/
tar -xzf mysql-bind.tar.gz
3. Переходим в порты и скачиваем исходники bind9 (используемая версия mysql-bind расчитана именно на этот сервер). Пока не компилируем!
cd /usr/ports/dns/bind9
make fetch extract
4. Копируем скаченные файлы mysql-bind в исходники bind'а:
cp ~/downloads/mysqldb.c /usr/ports/dns/bind9/work/bind-x.x.x/bin/named/
cp ~/downloads/mysqldb.h /usr/ports/dns/bind9/work/bind-x.x.x/bin/named/include/named/
5. Переходим в папку с исходниками (work/bind-x.x.x) и вносим следующие изменения:
а) В файле bin/named/Makefile.in задаем:
DBDRIVER_OBJS = mysqldb.@O@
DBDRIVER_SRCS = mysqldb.c
Запускаем команду mysql_config –cflags и записываем вывод в переменную DBDRIVER_INCLUDES
(например: DBDRIVER_INCLUDES = -I/usr/local/include/mysql -fno-strict-aliasing -pipe)
Запускаем команду mysql_config –libs и записываем вывод в переменную DBDRIVER_LIBS
(например: DBDRIVER_LIBS = -L/usr/local/lib/mysql -lmysqlclient -lz -lcrypt -lm)
б) В файле bin/named/main.c:
Добавляем заголовочный файл #include <named/mysqldb.h>
Внутри функции setup(), добавляем вызов mysqldb_init() перед строкой ns_server_create().
Внутри функции cleanup(), добавляем mysqldb_clear(); после ns_server_destroy().
6. Устанавливаем Bind:
cd /usr/ports/dns/bind
make
make install
7. Создаем для каждой зоны свою таблицу mysql:
CREATE TABLE название_таблицы (
name varchar(255) default NULL,
ttl int(11) default NULL,
rdtype varchar(255) default NULL,
rdata varchar(255) default NULL
) TYPE=MyISAM;
8. Создаем необходимые записи для зоны (подробнее про записи днс см. по ссылке в шапке этой страницы):
INSERT INTO название_таблицы VALUES ('mydomain.com', 259200, 'SOA', 'mydomain.com. webmaster.mydomain.com. 2008092901 28800 7200 86400 28800');
INSERT INTO название_таблицы VALUES ('mydomain.com', 259200, 'NS', 'ns0.mydomain.com.');
INSERT INTO название_таблицы VALUES ('mydomain.com', 259200, 'NS', 'ns1.mydomain.com.');
INSERT INTO название_таблицы VALUES ('mydomain.com', 259200, 'MX', '10 mail.mydomain.com.');
INSERT INTO название_таблицы VALUES ('w0.mydomain.com', 259200, 'A', '192.168.1.1');
INSERT INTO название_таблицы VALUES ('w1.mydomain.com', 259200, 'A', '192.168.1.2');
9. В файле named.conf прописываем нужную зону: zone "smol.website.ru" {
type master;
notify no;
database "mysqldb имя_базы_данных имя_таблицы адрес_mysql_сервера логин пароль";
};
Прощу обратить ОСОБОЕ ВНИМАНИЕ-в последней строчке необходимо указать ЛОГИН и ПАРОЛЬ!!! Информация хранится в открытом виде, что, разумеется, опасно! Поэтому есть два пути-"гланды через ж…у", т.е. исхитриться как нить хранить код в закодированном коде. Второй более простой. В БД создать пользователя login-"bind" и pass-"bind" и поставить ему привилегии select. В теории я пока не знаю, зачем ломать БД ДНСки, но все же. Какой из этих двух вариантов лучше-постараюсь выяснить и рассказать. Не лишней будет и помощь со стороны, если кто имеет опят)
Post #: 7
Страниц:  [1]
Все форумы >> [*nix/Linux] >> BIND с хранением зон в MySQL







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.