Оператор BIND 8 cont rols определяет управляющие каналы, используемые ndc. ndc может работать через сокеты Unix или сетевые сокеты, используя их в качестве управляющих каналов. Определения таких сокетов и дает оператор controls. Синтаксис оператора:
controls { [ inet ip_addr port ip_port allow { address_match_list\ }; ] [ unix pathname perm file_permissions owner uid group gid; ] };
Первые три параметра, inet, port и allow, определяют IP-адрес и номер порта сетевого сокета, а также список управления доступом, перечисляющий системы, которым разрешено осуществлять управление через данный сокет. Поскольку механизмы аутентификации в BIND 8 слабые, создание управляющего канала, доступного по сети, - решение рискованное. Человек, получивший доступ к этому каналу, получает полную власть над процессом сервера имен.
Последние четыре параметра - unix, perm, owner и group - определяют управляющий сокет Unix. Сокет Unix выглядит как файл. Его идентификатором служит обычное полное имя файла, например /var/run/ndc. Как и всякому другому файлу, сокету Unix назначается идентификатор пользователя-владельца (uid) и допустимый идентификатор группы (gid). Защита сокета осуществляется на основе стандартных файловых прав доступа. Допустимы только численные значения uid, gid и file_permissions. Значение file_permissions должно начинаться с 0. Например, чтобы установить полномочия чтения и записи для владельца, чтения для группы и запретить любой доступ всем остальным пользователям, следует использовать значение 0640.