Добро пожаловать на форум, Гость!
Войдите или зарегистрируйтесь!
Имя пользователя:   Пароль:  
Запомнить меня 




Начать новую тему Ответить на тему   [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Генерация файлов зон для bind
СообщениеДобавлено: 14 дек 2012, 15:50 
Бородатый сис
Аватар пользователя
Статус: Не в сети

GeoIP: Kyrgyzstan

Сообщений: 2898
Откуда: Из серверной
Зарегистрирован: 03 мар 2010, 15:12
Благодарил (а): 19 раз.
Поблагодарили: 121 раз.
ОС: RHEL 6.7
Когда-то я публиковал статью про скрипты создающие файлы обратных зон для подсети. Сегодня столкнулся с обратной проблемой - восстановил бекап на свежеустановленом сервере с cPanel. все прошло гладко, за исключением bind - так как в процессе установки панели произошла ошибка и DNSник не был установлен при импорте бекапа естессно не восстановились его данные. А перезаливать ой как не хотелось. За сим и придумался нижеследующий скрипт:

Синтаксис: [ Загрузить ] [ Скрыть ]
Используется подсветка синтаксиса bash
#!/bin/bash

serial="`date +%Y%m%d`00"

for user in `ls /var/cpanel/users`; do # дергаем список файлов с нужной нам инфой
        domain=`cat /var/cpanel/users/${user} | grep "DNS="` # Грепаем файл на предмет наличия домена
        domain=${domain:4} # Отсекаем лишнее - начинаем читать после 4-го символа
        ip=`cat /var/cpanel/users/${user} | grep "IP="` # То же самое с IP-адресом
        ip=${ip:3}

        echo -e "\$ORIGIN ${domain}.
\$TTL 14400
@    86400    IN    SOA    ns1.mydns.kg.    admin.${domain}. (
            ${serial}        ; serial
            86400        ; refresh
            7200        ; retry
            3600000      ; expire
            86400       ; minimum
            )
            86400    IN    NS    ns1.mydns.kg.
            86400    IN    NS    ns2.mydns.kg.
            14400    IN    MX    0    mail.${domain}.
            14400    IN    A    ${ip}
www         14400    IN    A    ${ip}
ftp         14400    IN    A    ${ip}
mail        14400    IN    A    ${ip}
whm         14400    IN    A    ${ip}
cpanel      14400    IN    A    ${ip}
webmail     14400    IN    A    ${ip}
webdisk     14400    IN    A    ${ip}
${domain}.    14400    IN    TXT    \"v=spf1 ip4:${ip} a mx ~all\"
"
> /root/devel/bind/${domain}.zone
          if [ ! -e /root/devel/zones.conf ]; then
              touch /root/devel/zones.conf
          fi
          echo -e "zone \"${domain}\" {
          type master;
          file \"/var/named/${domain}.conf\";
};
"
>> /root/devel/zones.conf
done
echo "[DONE]"
Обработано за 0.010 секунд, используется GeSHi 1.0.8.4


В принципе пригодится не только с cPanel но и в любом другом случае, когда нужно нагенерить файлы зон - перепилить его как сами понимаете не составит труда.

После запуска скрипта переносим содержимое /root/devel/bind в /var/named (или где там у вас зоны хранятся), содержимое /root/devel/zones.conf вписываем в named.conf или просто инклюдим его оттуда, меняем права и перезапускаем bind. Все, можно *BEER*


Я не злопамятный, я просто часто ковыряю логи
Изображение


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ 1 сообщение ] 
   Похожие темы   Автор   Ответов   Просмотров   Последнее сообщение 
Перенесенная ^_^

в форуме Linux

root

3

38

02 мар 2010, 16:15

Gen1us2k Перейти к последнему сообщению

Перенесенная Документация по Gentoo

в форуме Linux

Gen1us2k

0

4

05 мар 2010, 18:54

Gen1us2k Перейти к последнему сообщению



Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Собрано Raven. Русская поддержка phpBB
phpBB SEO