<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Аникин: заметки с тегом DNS</title>
<link>https://anikin.pw/tags/dns/</link>
<description>Блог об администрировании Linux, BSD и не только</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.3 (v4134)</generator>

<itunes:subtitle>Блог об администрировании Linux, BSD и не только</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Установка certbot на astra linux</title>
<guid isPermaLink="false">113</guid>
<link>https://anikin.pw/all/ustanovka-certbot-na-astra-linux/</link>
<pubDate>Tue, 10 Mar 2026 10:45:51 +0300</pubDate>
<author></author>
<comments>https://anikin.pw/all/ustanovka-certbot-na-astra-linux/</comments>
<description>
&lt;p&gt;Убедитесь, что установлен python3-pip&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# apt install python3-pip python3-venv&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Создайте виртуальное окружение в удобном месте (например, в /opt/certbot)&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# python3 -m venv /opt/certbot-env&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Активируйте окружение и установите пакеты&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# source /opt/certbot-env/bin/activate
# pip install --upgrade pip
# pip install certbot certbot-dns-timeweb&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Теперь для использования certbot вам нужно либо активировать окружение,&lt;br /&gt;
либо вызывать его напрямую:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# /opt/certbot-env/bin/certbot certonly --authenticator dns-timeweb \
    --dns-timeweb-credentials /opt/certbot-env/timeweb-creds.ini \
    --dns-timeweb-propagation-seconds 120 \
    -d domain.ru -d *.domain.ru --dry-run&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>Ошибка добавления ptr записи в VestaCP</title>
<guid isPermaLink="false">102</guid>
<link>https://anikin.pw/all/oshibka-dobavleniya-ptr-zapisi-v-vestacp/</link>
<pubDate>Mon, 12 Oct 2020 15:42:42 +0300</pubDate>
<author></author>
<comments>https://anikin.pw/all/oshibka-dobavleniya-ptr-zapisi-v-vestacp/</comments>
<description>
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Error: PTR record domain.net should be a fully qualified domain name (FQDN)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В файле /usr/local/vesta/func/domain.sh находим&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;if [ $t = 'CNAME' ]; then&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;И перед этим вписываем&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;if [ $t = 'PTR' ]; then
        tree_length=2
fi&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>Автоматическое добавление новых доменов на slaveDNS(bind9)</title>
<guid isPermaLink="false">81</guid>
<link>https://anikin.pw/all/avtomaticheskoe-dobavlenie-novyh-domenov-na-slavedns-bind9/</link>
<pubDate>Wed, 17 May 2017 17:42:00 +0300</pubDate>
<author></author>
<comments>https://anikin.pw/all/avtomaticheskoe-dobavlenie-novyh-domenov-na-slavedns-bind9/</comments>
<description>
&lt;p&gt;Скрипт смотрит в конфиг named.conf на мастере на наличие новых доменов. И при появлении новых доменов добавляет их в named.conf на slave сервере. Написан на питоне.&lt;br /&gt;
На мастер сервере нужно создать пользователя и добавить его в группу bind, чтобы у него были права на чтение named.conf. Также на master нужно разрешить трансфер зон.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;allow-transfer { ip-slave_сервера; };&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;На slave сервере нужно настроить ssh авторизацию по ключам с master сервером для этого юзера.&lt;br /&gt;
Затем получаем сам скрипт и перенесем его в /usr/bin&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;git clone https://github.com/shmulya/zonefetch
mv zonefetch/fetch.py /usr/bin/fetch.py&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Правим там переменные:&lt;br /&gt;
MASTERIP — ip master сервера(можно указать несколько серверов в формате [’ip1’,’ip2’])&lt;br /&gt;
REMOTE_USERNAME — юзер master сервера у которого есть права на чтение named.conf&lt;br /&gt;
PATH_TO_MASTER_ZONEFILE — файл с зонами на master&lt;br /&gt;
PATH_TO_SLAVE_ZONEFILE — каталог для файлов с зонами на slave&lt;/p&gt;
&lt;p&gt;Скрипт пишет зоны в файлы вида /etc/bind/ip.conf, например для master с ip — 192.168.0.1 это будет /etc/bind/192.168.0.1.conf.&lt;br /&gt;
Эти файлы нужно создать предварительно и добавить соответствующие инклуды в /etc/named.conf, например:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;include &amp;quot;/etc/bind/192.168.0.1.conf&amp;quot;;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В конце добавим скрипт в крон примерно так&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;*/5 * * * * /usr/bin/python /usr/bin/fetch.py &amp;gt;&amp;gt; /var/log/zonefetch.log 2&amp;gt;&amp;amp;1&lt;/code&gt;&lt;/pre&gt;</description>
</item>


</channel>
</rss>