# Пример Если вы хотите использовать Open-iSNS в режиме аутентификации, сначала необходимо инициализировать DSA-ключ и параметры DSA сервера. Это можно удобно сделать с помощью команды: ``` isnsd --init ``` Эта команда создаст закрытый и открытый ключи сервера и поместит их в файлы `/etc/isns/auth_key` и `auth_key.pub` соответственно. Следующая команда создаст объект политики для узла с именем `isns.control` и предоставит ему права управления: ``` isnsadm --local --keyfile=control.key --enroll isns.control node-type=ALL functions=ALL object-type=ALL ``` В процессе регистрации клиента будет создана пара DSA-ключей, а закрытая часть ключа будет помещена в файл `control.key`. Этот файл необходимо установить как `/etc/isns/control.key` на хосте, который вы хотите использовать в качестве станции управления iSNS. Далее, необходимо создать объект узла хранения для станции управления: ``` isnsadm --local --register control ``` На станции управления вы можете затем зарегистрировать дополнительные хосты: ``` isnsadm --control --keyfile=somehost.key --enroll iqn.2005-01.org.open-iscsi.somehost node-type=target+initiator ``` Эта команда также создаст пару DSA-ключей и сохранит закрытую часть ключа в файл `auth_key`. Обратите внимание на использование опции `--control`, которая указывает `isnsadm` использовать идентификатор управляющего узла вместо ключа и имени источника по умолчанию. Затем необходимо скопировать файл `somehost.key` на клиентский хост и установить его как `/etc/isns/auth_key`. Аналогично, открытый ключ сервера (находящийся в `/etc/isns/auth_key.pub` на сервере) нужно скопировать на клиентскую машину и поместить в `/etc/isns/server_key.pub`. По умолчанию, когда клиент регистрирует узел хранения (инициатор или цель) в iSNS, он не сможет видеть другие узлы хранения. Чтобы цели были видны определённому инициатору, необходимо создать так называемые домены обнаружения (Discovery Domains, или DD). На данный момент операции с членством в доменах требуют прав администратора. В будущем расширения могут позволить клиентам iSNS добавлять себя в один или несколько DD при регистрации. Чтобы создать домен обнаружения и добавить в него узлы, используйте: ``` isnsadm --control --dd-register dd-name=mydomain member-name=iqn.org.bozo.client iqn.org.bozo.jbod ... ``` Для добавления членов в существующий DD необходимо указать числовой идентификатор домена — использование имени DD, к сожалению, недостаточно (это требование RFC, а не проблема реализации): ``` isnsadm --control --dd-register dd-id=42 member-name=iqn.com.foo member-name=iqn.com.bar ``` Идентификатор DD можно получить, выполнив запрос по имени DD: ``` isnsadm --control --query dd-name=mydomain ``` В режиме управления вы также можете вручную регистрировать и удалять узлы и порталы, например, чтобы исправить несоответствия в базе данных. Например, следующая команда зарегистрирует узел и портал на хосте с именем `client.bozo.org`: ``` isnsadm --control --register entity=client.bozo.org initiator=iqn.org.bozo.client portal=191.168.7.1:860 ``` Обратите внимание, что эта регистрация явно указывает сетевую сущность, в которую помещаются новые объекты. Если опустить этот параметр, новые объекты будут помещены в сущность с именем `CONTROL`, что определённо не является желаемым результатом.