Agenda: dns-unbound-config-vRU.txt

File dns-unbound-config-vRU.txt, 9.0 KB (added by trac, 5 years ago)
Line 
1Конфигурирование Unbound
2------------------------
3
41. Залогиньтесь на вашу машину с кэширующим сервером при помощи SSH/Putty/...:
5
6    (для группы 1, вам следует использовать resolv.grp1.dns.nsrc.org, и т.д.)
7
8    $ ssh sysadm@resolv.grpXX.dns.nsrc.org
9
10    *** ПОЖАЛУЙСТА УБЕДИТЕСЬ, ЧТО ВЫ ЗАЛОГИНИЛИСЬ НА МАШИНУ 'RESOLV', А ***
11    *** НЕ НА 'AUTH1' ИЛИ 'AUTH2' ***
12
132. На resolv:
14
15    $ cd /usr/local/etc/unbound/
16
17    Сейчас у вас выбор из двух вариантов.  Вы можете создать unbound.conf
18    с нуля, используя пример внизу (вариант I), или вы можете вручную
19    отредактировать существующий `unbound.conf`, если хотите.
20
21    Вариант I проще, но выбор за вами!
22
23    Вариант I:
24
25    Если вы хотите сохранить немного времени:
26
27    Создайте файл unbound.conf, и скопируйте туда следующее:
28
29--------------------------- линия отреза -----------------------------
30
31server:
32        verbosity: 1
33        # интерфейсы (по IP), на которых unbound будет отвечать на запросы
34        interface: 0.0.0.0
35
36        # какие клиенты могут осуществлять на (рекурсивные) запросы
37        access-control: 10.10.0.0/16 allow
38
39        # Если вы укажете "", unbound не будет делать chroot.  Путь не должен заканчиваться на "/".
40        chroot: ""
41
42        # file to read root hints from.
43        root-hints: "/usr/local/etc/unbound/named.root"
44
45        # a number of locally served zones can be configured.
46                local-zone: "10.10.in-addr.arpa." nodefault
47
48remote-control:
49
50        # Enable remote control with unbound-control(8) here.
51        control-enable: yes
52
53        # what interfaces are listened to for remote control.
54        control-interface: 0.0.0.0
55
56        # port number for remote control operations.
57        control-port: 953
58
59        # unbound control files
60        server-key-file: "/usr/local/etc/unbound/unbound_server.key"
61        server-cert-file: "/usr/local/etc/unbound/unbound_server.pem"
62        control-key-file: "/usr/local/etc/unbound/unbound_control.key"
63        control-cert-file: "/usr/local/etc/unbound/unbound_control.pem"
64
65--------------------------- линия отреза -----------------------------
66
67    Вариант II:
68
69    Если вам хочется сделать изменение вручную...  В противном случае
70    перейдите к следующему шагу!
71
72    $ sudo cp unbound.conf.sample unbound.conf
73    Замечание: Используйте ваш любимый редактор: ee, jed, joe, vi, ...
74
75    $ sudo ee unbound.conf
76или
77    $ sudo vi unbound.conf
78
79    ... и сделайте следующие изменения:
80
81    a) сконфигурируйте "слушающие" интерфейсы - найдите строчки типа:
82
83        # interface: ...
84        # interface: ...
85
86    и прямо под ними, добавьте строку:
87
88        interface: 0.0.0.0
89
90    b) контроль доступа - найдите строчки типа:
91
92        # access-control: ...
93        # access-control: ...
94
95    и прямо под ними, добавьте строку:
96
97        access-control: 10.20.0.0/16 allow
98
99    c) защита с помощью chroot - найдите строку:
100   
101        # chroot: "/usr/local/etc/unbound"
102
103    и прямо под ней, добавьте строку:
104
105        chroot: ""
106
107    Замечание: Обычно мы бы не стали отключать chroot, являющийся защитным
108          механизмом, но нам нужно это сделать на время лабораторной работы,
109          из-за ограничений используемой виртуальной среды.  В настоящей
110          конфигурации, мы бы не стали этого делать.
111
112    d) задайте файл root-hints - найдите строчку:
113
114        # root-hints: ""
115
116    и прямо под ней, добавьте строку:
117
118        root-hints: "/usr/local/etc/unbound/named.root"
119
120    e) разрешите зону 20.10.in-addr.arpa - найдите строчку:
121
122        # local-data-ptr: "192.0.2.3 www.example.com"
123
124    и прямо под ней, добавьте строку:
125
126        local-zone: "20.10.in-addr.arpa." nodefault
127
128    f) включите удаленное управление - найдите строчку:
129
130        # control-enable: no
131
132    и ИЗМЕНИТЕ ее (удалив # в начале строки) на:
133
134        control-enable: yes
135
136    - найдите строчку:
137
138        # control-interface: 127.0.0.1
139
140    и ИЗМЕНИТЕ ее на:
141
142        control-interface: 0.0.0.0
143
144    - найдите строчку:
145
146        # control-port: 8953
147
148    и ИЗМЕНИТЕ ее на:
149
150        control-port: 953
151       
152    - наконец, уберите комментарии из следующих четырех строк:
153
154        # server-key-file: "/usr/local/etc/unbound/unbound_server.key"
155    станет
156        server-key-file: "/usr/local/etc/unbound/unbound_server.key"
157 
158        # server-cert-file: "/usr/local/etc/unbound/unbound_server.pem"
159    станет
160        server-cert-file: "/usr/local/etc/unbound/unbound_server.pem"
161 
162        # control-key-file: "/usr/local/etc/unbound/unbound_control.key"
163    станет
164        control-key-file: "/usr/local/etc/unbound/unbound_control.key"
165 
166        # control-cert-file: "/usr/local/etc/unbound/unbound_control.pem"
167    станет
168        control-cert-file: "/usr/local/etc/unbound/unbound_control.pem"
169
170
171    Сохраните файл, выйдите из редактора.
172
173    Вам все еще нужно скопировать файл named.root туда, где unbound
174    сможет его найти.
175
176        $ cd /usr/local/etc/unbound
177        $ sudo cp /etc/namedb/named.root .
178
1793. Создайте управляющие ключи:
180
181    $ sudo unbound-control-setup
182
1834.  Проверьте правильность конфигурации:
184
185    $ sudo unbound-checkconf
186
1875. Отредактируйте /etc/rc.conf и добавьте:
188
189    unbound_enable="YES"
190
1916. Запустите unbound!
192
193    $ sudo service unbound start
194
1957. Поменяйте ваш /etc/resolv.conf так, что он использует свеженастроенный Unbound,
196   на этой машине (RESOLV), а такжи и на AUTH1 и на AUTH2:
197
198    # vi /etc/resolv.conf
199
200    Поменяйте строку DNS-сервера на:
201
202        nameserver 10.20.XX.3
203
204    ... где XX - номер вашей группы
205
2068. Тестирование
207
208    $ dig
209    $ dig noc.dns.nsrc.org
210
211        Убедитесь, что вы видите SERVER: ...(10.20.XX.3) в конце вывода команды dig.
212
213    $ dig version.bind txt chaos
214
215    Что показывает dig?
216
2179. Убедитесь, что BIND на AUTH1 НЕ ЯВЛЯЕТСЯ рекурсивным.
218
219   Замечание: Вам НЕ нужно этого делать, если только вы не включили рекурсию в
220   вашей конфигурации BIND.
221
222   Итак, нам нужно зайти на машину AUTH1, и поменять resolv.conf.
223
224   Залогиньтесь на ваш мастер (auth1.grpX.dns.nsrc.org), и измените
225   /etc/resolv.conf так, что он теперь использует свеженастроенный unbound:
226
227    $ sudo ee /etc/resolv.conf
228
229И сделайте его похожим на вот это:
230
231    search dns.nsrc.org
232    nameserver 10.20.X.3
233
234
235    ... где X - номер вашей группы
236
237    Затем убедитесь, что вы можете находить информацию об именах *.dns.nsrc.org:
238   
239    $ dig noc.dns.nsrc.org
240
241    Проверьте раздел SERVER: в конце вывода команды dig, чтобы убедиться,
242    что правильный сервер был запрошен
243
244    Наконец, выключите рекурсию на машине AUTH1.
245
246    Редактируйте /etc/namedb/named.conf (sudo ee ...) и сделайте следующие изменения:
247
248    Было:
249
250allow-recursion { 127.0.0.1; 10.20.0.0/16; };
251
252    Должно быть:
253
254// allow-recursion { 127.0.0.1; 10.20.0.0/16; };
255recursion no;
256
257    Если этих строк нет в файле, не волнуйтесь, а просто пропустите этот шаг!
258
259    Сохраните файл, и перезапустите named:
260
261    $ sudo service named restart