англійськафранцузькаіспанська

Ad


Значок OnWorks

deadwood - онлайн у хмарі

Запустіть deadwood у безкоштовному хостинг-провайдері OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда deadwood, яку можна запустити в безкоштовному хостинг-провайдері OnWorks за допомогою однієї з наших безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


deadwood - повністю рекурсивний кешуючий DNS-розпізнавач

ОПИС


Deadwood — це повністю рекурсивний DNS-кеш. Це DNS-сервер із такими функціями:

* Повна підтримка рекурсії DNS і кешування переадресації DNS

* Невеликий розмір і розмір пам'яті, що підходить для вбудованих систем

* Проста та чиста кодова база

* Безпечний дизайн

* Захист від підробки: надійна криптографія використовується для визначення ідентифікатора запиту та вихідного порту

* Можливість читати та записувати кеш у файл

* Динамічний кеш, який видаляє записи, які не використовувалися нещодавно

* Можливість використовувати прострочені записи в кеш-пам'яті, коли неможливо зв'язатися з вищезазначеним
DNS сервери.

* За бажанням можна скомпілювати підтримку IPv6

* DNS-over-UDP і DNS-over-TCP обробляються одним демоном

* Вбудована функція dnswall

КОМАНДА ЛІНІЯ АРГУМЕНТИ


Deadwood має один необов’язковий аргумент командного рядка: розташування конфігурації
файл, який використовує Deadwood, визначений прапором "-f". Якщо це не визначено, Deadwood
використовує файл "/etc/maradns/deadwood/dwood3rc" як файл конфігурації.

Іншими словами, виклик Дедвуда як мертвий ліс призведе до використання Deadwood
/etc/maradns/deadwood/dwood3rc як файл конфігурації; закликаючи Дедвуд як мертвий ліс -f
foobar змусить Deadwood використовувати файл "foobar" у поточному робочому каталозі (the
каталог один знаходиться під час запуску Deadwood) як файл конфігурації.

КОНФІГУРАЦІЯ Фото ФОРМАТ


Конфігураційний файл Deadwood створено за синтаксисом Python 2. Будь-який дійсний Дедвуд
конфігураційний файл також має правильно розбиратися як у Python 2.4.3, так і в Python 2.6.6. Якщо
будь-який файл конфігурації правильно аналізує в Deadwood, але викликає синтаксичну помилку в
Python, це помилка, яку слід виправити.

Зважаючи на це, пробіли важливі; Параметри дейдвуду повинні бути в крайньому лівому куті
стовпець без пробілів на початку. Це дійсний рядок (якщо немає пробілів до
ліворуч):

recursive_acl = "127.0.0.1/16"

Однак наступний рядок викличе помилку аналізу:

recursive_acl = "127.0.0.1/16"

Зверніть увагу на пробіл ліворуч від рядка "recusive_acl" у неправильно відформатованому
лінія.

ПАРАМЕТР ВИДИ


Deadwood має три різні типи параметрів:

* Числові параметри. Числові параметри не можна брати в лапки, як це
приклад:

filter_rfc1918 = 0

Якщо числовий параметр взято в лапки, повідомлення про помилку «Невідомий dwood3rc
рядковий параметр».

* Рядкові параметри. Рядкові параметри мають бути взяті в лапки, наприклад у цьому
приклад:

bind_address = "127.0.0.1"

* Параметри словника. Усі параметри словника повинні бути ініціалізовані перед використанням, і
параметри словника повинні мати як індекс словника, так і значення для цього індексу
в лапках, наприклад у цьому прикладі:

upstream_servers = {}
upstream_servers["."]="8.8.8.8, 8.8.4.4"

Всі параметри dwood3rc крім наступні числові параметри:

* bind_address (рядок)

* cache_file (рядок)

* chroot_dir (рядок)

* ip_blacklist (рядок)

* ipv4_bind_addresses (рядок)

* random_seed_file (рядок)

* recursive_acl (рядок)

* root_servers (словник)

* upstream_servers (словник)

ПІДТРИМАНО ПАРАМЕТРИ


Файл конфігурації Deadwood підтримує такі параметри:

адреса_прив'язки

Це IP (або, можливо, IPv6) адреса, до якої ми прив’язуємося.

кеш_файл

Це ім'я файлу, який використовується для читання та запису кешу на диск; це
рядок може містити малі літери, символ «-», символ «_» і символ «/» (для
розміщення кешу в підкаталозі). Усі інші символи стають символом «_».

Цей файл читається та записується під керуванням користувача Deadwood.

chroot_dir

Це каталог, з якого запускатиметься програма.

доставити_все

Це впливає на поведінку в Deadwood 2.3, але не впливає на Deadwood 3. Ця змінна є
тільки тут, щоб файли Deadwood 2 rc могли працювати в Deadwood 3.

dns_port

Це порт, до якого прив’язується Deadwood і прослуховує вхідні з’єднання. За замовчуванням
значенням для цього є стандартний порт DNS: порт 53

filter_rfc1918

Якщо це значення дорівнює 1, кількість різних діапазонів IP-адрес не може бути в DNS A
відповідей:

* 192.168.xx

* 172.[16-31].xx

* 10.xxx

* 127.xxx

* 169.254.xx

* 224.xxx

* 0.0.xx

Якщо один із зазначених вище IP-адрес виявлено у відповіді DNS і filter_rfc1918 має значення 1,
Deadwood поверне синтетичну відповідь «цей хост не відповідає» (запис SOA у файлі
розділ NS) замість запису A.

Причиною цього є створення "dnswall", який захищає користувачів від деяких видів
напади, як описано на http://crypto.stanford.edu/dns/

Зауважте, що Deadwood надає лише функцію IPv4 "dnswall" і не допомагає
захистити від відповідей IPv6. Якщо потрібен захист від певних записів IPv6 AAAA,
або вимкніть усі відповіді AAAA, встановивши для reject_aaaa значення 1, або скористайтеся
зовнішня програма для фільтрації небажаних відповідей IPv4 (наприклад, програма dnswall).

Значення за замовчуванням — 1

handle_noreply

Якщо для нього встановлено значення 0, Deadwood не надсилає відповідь клієнту (якщо клієнт є a
TCP-клієнт, Дедвуд закриває TCP-з’єднання), коли UDP-запит надсилається вгору та
висхідний DNS ніколи не надсилає відповідь.

Якщо для цього значення встановлено значення 1, Deadwood надсилає SERVER FAIL назад клієнту, коли UDP-запит виконується
надіслано вгору, і висхідний DNS ніколи не надсилає відповідь.

Значення за замовчуванням — 1

handle_overload

Якщо це значення дорівнює 0, Deadwood не надсилає відповіді, коли надсилається UDP-запит, а
сервер перевантажений (має забагато незавершених підключень); коли воно має значення 1,
Deadwood надсилає пакет SERVER FAIL назад до відправника UDP-запиту. Значення за умовчанням
для цього 1.

хеш-магічне_число

Раніше це використовувалося для внутрішнього хеш-генератора Deadwood, щоб підтримувати хеш-генератор
дещо випадковий і несприйнятливий до певних типів атак. У Deadwood 3.0 ентропія для
хеш-функція створюється шляхом перегляду вмісту /dev/urandom (secret.txt у Windows
машини) і поточну позначку часу. Цей параметр є лише тут для старішої конфігурації
файли не ламаються в Deadwood 3.0.

ip_blacklist

Це список IP-адрес, які ми не можемо використовувати у відповіді на запит DNS. The
Причина цього полягає в тому, щоб протидіяти практиці деяких Інтернет-провайдерів конвертувати «цей сайт
не існує" DNS-відповідь на сторінку, контрольовану провайдером; це призводить до можливого
питання безпеки.

Цей параметр приймає лише окремі IP-адреси та не використовує маски мережі.

maradns_uid

Ідентифікатор користувача Deadwood працює як. Це може бути будь-яке число від 10 до 65535; за замовчуванням
значення дорівнює 99 (ніхто в дистрибутивах Linux, отриманих від RedHat). Це значення не використовується на
Системи Windows.

maradns_gid

Ідентифікатор групи Deadwood працює як. Це може бути будь-яке число від 10 до 65535; за замовчуванням
значення дорівнює 99. Це значення не використовується в системах Windows.

max_ar_chain

Чи ввімкнено ротацію записів ресурсів. Якщо це значення дорівнює 1, запис ресурсу
ротація ввімкнена, інакше ротація запису ресурсу вимкнена.

Ротація записів ресурсів зазвичай бажана, оскільки це дозволяє DNS діяти як грубо
балансир навантаження. Однак у сильно завантажених системах його може бути бажано вимкнути
зменшити використання ЦП.

Причиною незвичної назви цієї змінної є збереження сумісності з MaraDNS
файли marrc.

Значення за замовчуванням — 1: ротацію запису ресурсу ввімкнено.

max_inflights

Максимальна кількість одночасних клієнтів, які ми обробляємо одночасно для одного запиту.

Якщо під час обробки запиту для, скажімо, "example.com.", інший клієнт DNS надсилає
Deadwood ще один запит для example.com замість створення нового запиту для обробки
example.com, Deadwood приєднає новий клієнт до того самого запиту, який уже є
політ", і надішліть відповідь обом клієнтам, коли ми отримаємо відповідь для example.com.

Це кількість одночасних клієнтів, які може мати даний запит. Якщо ця межа є
перевищено, наступні клієнти з тим самим запитом відхиляються, доки не буде знайдено відповідь. Якщо
це має значення 1, ми не об’єднуємо кілька запитів для одного запиту, а надаємо кожному
запросити власне підключення.

Значення за замовчуванням - 8.

max_ttl

Максимальний час, протягом якого ми зберігатимемо запис у кеші, у секундах (також називається
«Максимальний TTL»).

Це найдовше, ми будемо зберігати запис у кеші. Стандартне значення для цього параметра
86400 (один день); мінімальне значення становить 300 (5 хвилин), а максимальне значення це може мати
становить 7776000 (90 днів).

Причина, чому цей параметр тут, полягає в тому, щоб захистити Deadwood від атак, які використовують
наявність застарілих даних у кеш-пам’яті, наприклад атака «Привид доменних імен».

максимальні_елементи_кешу

Максимальна кількість елементів, які може мати наш кеш. Це число між 32
і 16,777,216; типовим значенням для цього є 1024. Зауважте, що якщо записувати кеш у
диск або читання кешу з диска, вищі значення сповільнять роботу кешу
читання/письмо.

Обсяг пам’яті, який використовує кожен запис кешу, залежить від операційної системи
використовуваний і розмір призначених сторінок розподілу пам'яті. У Windows XP, наприклад, кожен
запис використовує приблизно чотири кілобайти пам'яті, а Deadwood має накладні витрати
приблизно 512 кілобайт. Отже, якщо є 512 елементів кешу, Deadwood використовує
приблизно 2.5 мегабайта пам'яті, і якщо є 1024 елементи кешу, Deadwood використовує
приблизно 4.5 мегабайт пам'яті. Знову ж таки, ці цифри стосуються Windows XP та інших
операційні системи матимуть різні номери розподілу пам'яті.

Зверніть увагу, що кожен запис root_servers і upstream_servers займає місце в Deadwood
кеш і що maximum_cache_elements потрібно буде збільшити, щоб зберігати велику кількість
ці записи.

maxprocs

Це максимальна кількість незавершених віддалених UDP-підключень, які може мати Deadwood. The
значенням за умовчанням для цього є 1024.

max_tcp_procs

Це кількість дозволених відкритих TCP-з'єднань. Значення за замовчуванням: 8

кількість_повторів

Кількість разів, коли ми повторюємо спробу надіслати запит вгору, перш ніж відмовитися. Якщо це 0, ми
спробуйте лише один раз; якщо це 1, ми пробуємо двічі і так далі, до 32 повторів. Зверніть увагу, що кожен
повторна спроба займає timeout_seconds секунд, перш ніж ми повторимо спробу. Значення за замовчуванням: 5

ns_glueless_type

Тип RR, який ми надсилаємо для вирішення безсклеювальних записів. Це має бути 1 (A) при основному використанні
IPv4 для вирішення записів. Якщо безсклеювані записи NS мають AAAA, але не мають записи A, то IPv6 є
увімкнуто, може мати сенс надати йому значення 255 (БУДЬ-ЯКЕ). Якщо IPv4 колись перестане існувати
використовується у великому масштабі, з часом може стати можливим зробити це значення 28
(AAAA).

Значення за замовчуванням — 1: запис A (IPv4 IP). Цей параметр має НЕ пройшов випробування; використовувати при
на свій власний ризик.

random_seed_file

Це файл, який містить випадкові числа та використовується як початкове значення для
криптографічно надійний генератор випадкових чисел. Deadwood спробує прочитати 256 байт
із цього файлу (ГСЧ, який використовує Deadwood, може приймати потік будь-якої довжини).

Зауважте, що функція стиснення хешу отримує частину своєї ентропії перед аналізом
файл mararc і жорстко закодований для отримання ентропії з /dev/urandom (secret.txt у Windows
системи). Більшість іншої ентропії, яку використовує Deadwood, походить із файлу, на який вказує
random_seed_file.

recurse_min_bind_port

Порт із найменшим номером, до якого дозволено прив’язуватися Дедвуду; це використаний випадковий номер порту
для вихідного порту вихідних запитів, а не 53 (див. dns_port вище). Це
число між 1025 і 32767 і має значення за замовчуванням 15000. Це використовується для створення DNS
атаки спуфінгу складніше.

recurse_number_ports

Кількість портів, до яких Deadwood прив’язується для вихідного порту для вихідних з’єднань; це
це ступінь 2 між 256 і 32768. Це використовується для посилення атак підробки DNS
важко. Значення за замовчуванням — 4096.

recursive_acl

Це список тих, кому дозволено використовувати Deadwood для виконання DNS-рекурсії в "ip/mask"
формат. Маска має бути числом від 0 до 32 (для IPv6 від 0 до 128). Наприклад,
"127.0.0.1/8" дозволяє локальні підключення.

відхилити_аааа

Якщо це значення дорівнює 1, під час запиту AAAA надсилається фальшива відповідь SOA «немає».
відправлено в Дедвуд. Іншими словами, кожного разу, коли програма запитує Deadwood про IPv6 IP
адресу, замість того, щоб намагатися обробити запит, коли для нього встановлено значення 1, Deadwood
прикидається, що ім’я хоста, про яке йде мова, не має адреси IPv6.

Це корисно для людей, які не використовують IPv6, але використовують програми (зазвичай команда *NIX
як програми на зразок "telnet"), які уповільнюють пошук адреси IPv6.

За замовчуванням це значення дорівнює 0. Іншими словами, запити AAAA обробляються нормально, якщо тільки
це встановлено.

reject_mx

Якщо значення за замовчуванням дорівнює 1, запити MX мовчки скидаються з їх IP-адресою
зареєстровано. Запит MX — це запит, який виконується машиною, лише якщо вона хоче бути власною
поштовий сервер, який надсилає пошту на машини в Інтернеті. Це запит для середнього робочого столу
комп’ютер (включаючи той, який використовує Outlook або інший агент користувача електронної пошти для читання та надсилання
електронною поштою) ніколи не зробить.

Швидше за все, якщо машина намагається зробити запит MX, машиною керує
віддалене джерело для надсилання небажаної електронної пошти «спаму». Цього на увазі Дедвуд не допустить
Запити MX, якщо для reject_mx явно не встановлено значення 0.

Перш ніж вимкнути це, майте на увазі, що Deadwood оптимізовано для використання в Інтернеті
серфінгу, а не як DNS-сервер для поштового центру. Зокрема, IP-адреси для записів MX
видалено з відповідей Дедвуда, і Дедвуду потрібно виконати додаткові запити DNS
отримати IP-адреси, що відповідають записам MX, і тестування Deadwood більше орієнтоване на веб
серфінг (майже 100% пошук запису A), а не для доставки пошти (великий запис MX
пошук).

reject_ptr

Якщо це значення дорівнює 1, під час запиту PTR надсилається фальшива відповідь SOA "немає"
відправлено в Дедвуд. Іншими словами, кожного разу, коли програма запитує Deadwood про «зворотний DNS
lookup" -- ім'я хоста для даної IP-адреси -- замість того, щоб намагатися обробити
запит, коли встановлено значення 1, Дедвуд вдає, що відповідна IP-адреса не має
ім'я хоста.

Це корисно для людей, які отримують повільні тайм-аути DNS під час спроби виконати a
зворотний пошук DNS на IP-адресах.

Значення за замовчуванням дорівнює 0. Іншими словами, PTR-запити обробляються нормально, якщо тільки
це встановлено.

воскресіння

Якщо встановлено значення 1, Deadwood намагатиметься надіслати користувачеві прострочений запис перед тим, як надати
вгору. Якщо це 0, ми цього не робимо. Значення за замовчуванням: 1

root_servers

Це список кореневих серверів; його синтаксис ідентичний upstream_servers (див. нижче).
Це тип DNS-сервісу, який, наприклад, використовує ICANN. Це сервери, які використовуються для цього
не дасть нам вичерпних відповідей на запитання щодо DNS, а лише повідомить, до яких DNS-серверів
підключіться до, щоб отримати відповідь, ближчу до бажаної.

Зверніть увагу, що кожен запис root_servers займає місце в кеші Deadwood, і це
maximum_cache_elements потрібно буде збільшити, щоб зберігати велику кількість цих записів.

tcp_listen

Щоб увімкнути DNS-over-TCP, ця змінна має бути встановлена ​​та мати значення 1. За замовчуванням
значення: 0

timeout_seconds

Саме стільки часу Deadwood чекатиме, перш ніж відмовитися від UDP DNS, що очікує на розгляд
відповісти. Значення за замовчуванням для цього дорівнює 1, як для 1 секунди, якщо Deadwood не скомпільовано з
FALLBACK_TIME увімкнено.

timeout_seconds_tcp

Як довго чекати неактивне TCP-з’єднання, перш ніж його розірвати. Стандартне значення для цього
дорівнює 4, як через 4 секунди.

ttl_age

Чи ввімкнено старіння TTL; чи встановлено значення TTL для записів у кеші
кількість часу, який записи залишилися в кеші.

Якщо це значення дорівнює 1, записи TTL застаріли. В іншому випадку вони не є. За замовчуванням
значення для цього 1.

upstream_port

Це порт, який Дедвуд використовує для підключення або надсилання пакетів до вищестоящих серверів. The
значення за замовчуванням — 53; стандартний порт DNS.

upstream_servers

Це список DNS-серверів, до яких намагатиметься зв’язатися балансувальник навантаження. Це
словник змінна (масив, індексований рядком, а не числом) замість простого
змінна. Оскільки upstream_servers є словниковою змінною, її потрібно ініціалізувати
перед використанням.

Deadwood шукатиме назву хоста, який намагається знайти вихідний сервер
for і відповідатиме найдовшому суфіксу, який він може знайти.

Наприклад, якщо хтось надішле запит на «www.foo.example.com» до Deadwood, Deadwood
спочатку подивіться, чи є змінна upstream_servers для "www.foo.example.com.", потім подивіться
для «foo.example.com.», потім шукайте «example.com.», потім «com.» і, нарешті, «.».

Ось приклад upstream_servers:

upstream_servers = {} # Ініціалізація змінної словника
upstream_servers["foo.example.com."] = "192.168.42.1"
upstream_servers["example.com."] = "192.168.99.254"
upstream_servers["."] = "10.1.2.3, 10.1.2.4"

У цьому прикладі все, що закінчується на "foo.example.com", розпізнається DNS-сервером за адресою
192.168.42.1; все інше, що закінчується на "example.com", вирішується 192.168.99.254; і
усе, що не закінчується на "example.com", вирішується 10.1.2.3 або 10.1.2.4.

Важливо: доменне ім'я upstream_servers, на яке вказує upstream_servers, має закінчуватися на "." характер. Це
ОК:

upstream_servers["example.com."] = "192.168.42.1"

Але це так НЕ ОК:

upstream_servers["example.com"] = "192.168.42.1"

Причина цього в тому, що BIND бере участь у неочікуваній поведінці, коли ім’я хоста
не закінчується на крапку, і, ставлячи крапку в кінці імені хоста, Deadwood не має
щоб здогадатися, чи хоче користувач поведінку BIND чи «нормальну» поведінку.

Якщо ні root_servers, ні upstream_servers не встановлено, Deadwood встановлює root_servers для використання
кореневі сервери ICANN за замовчуванням, а саме:

198.41.0.4 a.root-servers.net (VeriSign)
192.228.79.201 b.root-servers.net (ISI)
192.33.4.12 c.root-servers.net (Cogent)
199.7.91.13 d.root-servers.net (UMaryland)
192.203.230.10 e.root-servers.net (NASA Ames)
192.5.5.241 f.root-servers.net (ISC)
192.112.36.4 g.root-servers.net (DOD NIC)
128.63.2.53 h.root-servers.net (ArmyRU)
192.36.148.17 i.root-servers.net (NORDUnet)
192.58.128.30 j.root-servers.net (VeriSign)
193.0.14.129 k.root-servers.net (Reseaux)
199.7.83.42 l.root-servers.net (IANA)
202.12.27.33 m.root-servers.net (ШИРОКИЙ)

Цей список дійсний станом на 9 лютого 2015 року, востаннє змінено 3 січня 2013 року.

Зверніть увагу, що кожен запис upstream_servers займає місце в кеші Deadwood, і це
maximum_cache_elements потрібно буде збільшити, щоб зберігати велику кількість цих записів.

verbose_level

Це визначає, скільки повідомлень буде зареєстровано на стандартному виводі; більші значення реєструють більше
повідомлення. Значення за замовчуванням — 3.

ip/маска формат of IP-адреси


Deadwood використовує стандартні формати ip/netmask для визначення IP-адрес. IP-адреса позначається десятковим числом із крапками
форматі, наприклад, "10.1.2.3" (або у форматі IPv6, якщо підтримка IPv6 скомпільована).

Маска мережі використовується для визначення діапазону IP-адрес. Маска мережі – це одне число від 1
і 32 (128, коли скомпільовано підтримку IPv6), що вказує на число початкових «1»
бітів у масці мережі.

10.1.1.1/24 вказує, що будь-який IP від ​​10.1.1.0 до 10.1.1.255 збігатиметься.

10.2.3.4/16 вказує, що будь-який IP від ​​10.2.0.0 до 10.2.255.255 збігатиметься.

127.0.0.0/8 вказує на те, що збігатиметься будь-який IP із першим октетом (числом) "127".

Маска мережі необов’язкова, і, якщо її немає, вказує, що відповідатиме лише одна IP-адреса.

DNS над TCP


DNS-over-TCP потрібно явно ввімкнути, встановивши для tcp_listen значення 1.

Deadwood витягує корисну інформацію з UDP DNS-пакетів, позначених усіченими, що майже
завжди усуває необхідність мати DNS через TCP. Однак Deadwood не кешує DNS-пакети
розміром понад 512 байт, який потрібно надіслати за допомогою TCP. Крім того, DNS-over-TCP
пакети, які є "неповними" відповідями DNS (відповіді, які не може використовувати заглушка,
які можуть бути або рефералом NS, або неповною відповіддю CNAME), не обробляються належним чином
від Deadwood.

Deadwood підтримує як DNS-over-UDP, так і DNS-over-TCP; той самий демон слухає
порт UDP і TCP DNS.

Кешуються лише запити UDP DNS. Deadwood не підтримує кешування через TCP; це обробляє
TCP для вирішення рідкісних урізаних відповідей без будь-якої корисної інформації чи роботи
дуже рідкісні несумісні з RFC тільки TCP-резольвери DNS. У реальному світі DNS-over-TCP є
майже не використовувався.

Parsing інший файли


Можливо, щоб Deadwood під час аналізу файлу dwood3rc читав інші файли та
аналізуйте їх так, ніби це файли dwood3rc.

Це робиться за допомогою виконавчий файл. Щоб використовувати execfile, розмістіть такий рядок у dwood3rc
Файл:

execfile("шлях/до/назва файлу")

Де path/to/filename — це шлях до файлу, який буде аналізуватися як файл dwood3rc.

Усі файли мають бути в каталозі /etc/maradns/deadwood/execfile або в каталозі. Імена файлів можуть
мають лише малі літери та символ підкреслення ("_"). Абсолютні шляхи не є
дозволено як аргумент для execfile; назва файлу не може починатися з скісної риски ("/")
характер.

Якщо є помилка аналізу у файлі, на який вказує execfile, Deadwood повідомить про це
помилка як у рядку з командою execfile у головному файлі dwood3rc. Знайти
якщо у підфайлі є помилка аналізу, використовуйте щось на кшталт «Deadwood -f
/etc/maradns/deadwood/execfile/filename", щоб знайти помилку аналізу у файлі-порушнику,
де "ім'я файлу" - це файл, який аналізується за допомогою execfile.

IPV6 підтримка


Цей сервер також можна скомпільувати для підтримки IPv6. Щоб увімкнути IPv6
підтримки, додайте '-DIPV6' до позначок часу компіляції. Наприклад, щоб скомпілювати це, щоб зробити a
малий двійковий файл і мати підтримку IPv6:

експорт FLAGS='-Os -DIPV6'
зробити

БЕЗПЕКА


Deadwood — це програма, написана з урахуванням безпеки.

На додаток до використання бібліотеки рядків, стійкої до переповнення буфера, стилю кодування та SQA
процес, який перевіряє переповнення буфера та витік пам'яті, Deadwood використовує сильний
генератор псевдовипадкових чисел (32-розрядна версія RadioGatun) для створення обох
ідентифікатор запиту та вихідний порт. Щоб генератор випадкових чисел був безпечним, Deadwood потребує a
хороше джерело ентропії; за замовчуванням Deadwood використовуватиме /dev/urandom для отримання цієї ентропії. Якщо
ви працюєте в системі без підтримки /dev/urandom, важливо переконатися, що
Deadwood має хороше джерело ентропії, тому ідентифікатор запиту та вихідний порт важко знайти
вгадайте (інакше можна підробити DNS-пакети).

Порт Deadwood для Windows містить програму під назвою "mkSecretTxt.exe", яка створює файл
64-байтний (512 біт) випадковий файл під назвою "secret.txt", який може використовувати Deadwood (через
параметр "random_seed_file"); Дедвуд також отримує ентропію з мітки часу, коли Дедвуд
запущено та ідентифікаційний номер процесу Deadwood, тому використовувати однакову статику
secret.txt як файл random_seed_file для кількох викликів Deadwood.

Зауважте, що Deadwood не захищений від того, щоб хтось із тієї самої мережі переглядав надіслані пакети
Deadwood і надсилання підроблених пакетів у відповідь.

Щоб захистити Deadwood від певних можливих атак типу «відмова в обслуговуванні», найкраще, якщо
Просте число Дедвуда, яке використовується для хешування елементів у кеші, є випадковим 31-розрядним простим числом
номер. Програма RandomPrime.c генерує випадкове просте число, яке розміщується у файлі
DwRandPrime.h, який генерується щоразу, коли компілюється програма або щось компілюється
очищено за допомогою make clean. Ця програма використовує /dev/urandom для своєї ентропії; файл
DwRandPrime.h не буде відновлено в системах без /dev/urandom.

У системах без прямої підтримки /dev/urandom пропонується перевірити, чи є
можливий спосіб надати системі робочий /dev/urandom. Таким чином, коли Дедвуд є
складено, магічне хеш-число буде відповідним чином випадковим.

Якщо використовується попередньо скомпільований двійковий файл Deadwood, переконайтеся, що в системі є /dev/urandom
підтримки (в системі Windows переконайтеся, що файл із назвою secret.txt є
створений включеною програмою mkSecretTxt.exe); Deadwood, під час виконання, використовує
/dev/urandom (secret.txt у Windows) як жорстко закодований шлях для отримання ентропії (разом із
timestamp) для алгоритму хешування.

ДЕМОНІЗАЦІЯ


Deadwood не має жодних вбудованих засобів демонізації; цим займається
зовнішня програма Duende або будь-який інший демонайзер.

Приклад конфігурація файл


Ось приклад файлу конфігурації dwood3rc:

# Це приклад файлу deadwood rc
# Зауважте, що коментарі починаються символом решітки

bind_address="127.0.0.1" # IP, до якого ми прив'язуємося

# Наступний рядок вимкнено через коментар
#bind_address="::1" # У нас є додаткова підтримка IPv6

# Каталог, з якого ми запускаємо програму (не використовується в Win32)
chroot_dir = "/etc/maradns/deadwood"

# Наступні вихідні DNS-сервери належать Google
# (станом на грудень 2009) загальнодоступних DNS-серверів. для
# більше інформації дивіться на сторінці за адресою
# http://code.google.com/speed/public-dns/
#
# Якщо ні root_servers, ні upstream_servers не встановлено,
# Deadwood використовуватиме стандартні кореневі сервери ICANN.
#upstream_servers = {}
#upstream_servers["."]="8.8.8.8, 8.8.4.4"

# Кому дозволено використовувати кеш. Ця лінія
# дозволяє будь-кому з першими двома "127.0".
# цифри їх IP для використання Deadwood
recursive_acl = "127.0.0.1/16"

# Максимальна кількість запитів, що очікують на розгляд
maxprocs = 2048

# Надіслати SERVER FAIL у разі перевантаження
handle_overload = 1

maradns_uid = 99 # UID Deadwood працює як
maradns_gid = 99 # GID Deadwood працює як

максимальний_кеш_елементів = 60000

# Якщо ви хочете прочитати та записати кеш із диска,
# переконайтеся, що chroot_dir вище доступний для читання та запису
# за допомогою maradns_uid/gid вище та розкоментуйте
# наступний рядок.
#cache_file = "dw_cache"

# Якщо ваш вихідний DNS-сервер перетворює відповіді DNS "не там".
# в IP-адреси, цей параметр дозволяє Deadwood перетворювати будь-яку відповідь
# із заданою IP-адресою назад до "немає" IP-адреси. Якщо будь-який з IP
# перелічені нижче є у відповіді DNS, Дедвуд перетворює відповідь
# в "не там"
#ip_blacklist = "10.222.33.44, 10.222.3.55"

# За замовчуванням, з міркувань безпеки, Deadwood не дозволяє входити IP-адреси
# 192.168.xx, 172.[16-31].xx, 10.xxx, 127.xxx,
# 169.254.xx, 224.xxx або діапазон 0.0.xx. Якщо використовується Deadwood
# щоб розпізнати імена у внутрішній мережі, розкоментуйте
# наступний рядок:
#filter_rfc1918 = 0

Використовуйте deadwood онлайн за допомогою сервісів onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

Команди Linux

Ad