Если процесс закончится по команде «kill» или «shutdown», то перезапуска не произойдет и скрипт закончит работу.
Если процесс закончится, и будет обнаружено, что за последние несколько секунда он заканчивался часто, то скрипт остановит свою работу, т.к. подобные симптомы обычно вызваны ошибкой в конфигурационном файле.
Утилита netamsctl
При инсталляции утилита netamsctl переписывается в (обычно) /usr/local/sbin
Что это такое?
netamsctl — примитивный telnet–клиент, позволяющий передать одну или несколько команд для работающего netams. Он работает через обычный TCP–сокет. Открывается соединение, отправляется команда, получается и выводится на экран ответ сервера.
Зачем это нужно, когда все можно сделать и через telnet?
Вам не надо все время вводить логин–пароль для авторизации, указывать имя хоста и порт. Эта информация берется из файла .netamsctl.rc
Вызов netamsctl с нужной командой можно поместить, например, в cron, в вашу любимую самописную программу, в sudo–скрипт для исполнения секретаршей–блондинкой.
Как настроить?
После сборки, исполняемая программа netamsctl находится в netams/src, пример настроек .netamsctl.rc в netams/addon
make install копирует программу в /usr/local/sbin, однако .netamsctl.rc не трогается
Ваше дело — положить этот файл в один из каталогов:
• ~/.netamsctl.rc (домашний каталог пользователя, который будет запускать)
• .netamsctl.rc (там, где находится исполняемый файл)
• /usr/local/etc/.netamsctl.rc
• /etc/.netamsctl.rc
Отредактируйте этот файл, прописав там верные значения логина, пароля, хоста (по умолчанию — localhost) и TCP–порта (по умолчанию — 20001), словом то же самое, что вы используете для повседневного управления через Telnet
Не забудьте отнять права у этого файла на чтения «кому не надо»:
chmod 600 .netamsctl.rc
Проверяем:
src/netams–l
netamsctl «show version»
Не забывайте, что возможно задать на исполнение сразу несколько команд, если разделить их комбинацией "&&". Это крайне полезно, если необходимо передать команду какому–нибудь сервису:
netamsctl «service processor && unit host name pupkin sys–deny && exit»
Часто задаваемые вопросы
• Какие пакеты мне нужно поставить, чтобы NeTAMS заработал?
• Все зависит от комбинации желаемых data–source и storage. В общем виде список пакетов для Linux приведен тут. Для FreeBSD ничего дополнительного помимо SQL и веб–сервера ставить не надо.
• Как мне создать базу и таблицы SQL?
• Специально создавать базу данных не нужно (MySQL). NeTAMS сам создаст ее при первом старте; таблицы с данными (raw и summary) будут создаваться, когда пойдет реальный трафик и начнется учет. Для Postgres вы можете создать таблицы вручную (они лежат в каталоге addon/), для Oracle вы ДОЛЖНЫ создать схему вручную (addon/oracle/).
• При компиляции не нашелся SQL. Как быть?
• Обычно, при сборке, скрипт configure.sh сканирует набор системных каталогов в поиске клиентских библиотек и заголовочных файлов. При этом на консоль выводится что–то вроде:
freebsd–vm:~/netams#make
/bin/sh configure.sh
##########################################################
## Configuring NeTAMS for build targets… ##
FreeBSD operating system…
With FreeBSD 5.XX, will have netgraph module…
Will have MYSQL support
[ /usr/local/lib/mysql /usr/local/include/mysql ]
Will have POSTGRESQL support
[ /usr/local/lib /usr/local/include ]
Will have BILLING service
Will have DEBUG flag set
Will have RADIUS support
Will have private portion of Makefile
## Configuration file was built. ##
##########################################################
К сожалению, стандартного места для таких библиотек нет, ваш конкретный дистрибутив может ставить программы куда угодно (особенно славится этим Linux), в связи с чем configure.sh может не найти библиотеки и при старте программа само–выключится с сообщением:
parse: registering storage: 1
parse: using storage:2 as source for READ and STAT requests
parse: creating service storage:1
parse: storage type is unknown
В таком случае вам необходимо вручную добавить соответствующие пути в верхние строки (начало) файла configure.sh, и пересобрать программу через:
make distclean && make
• Как мне блокировать трафик, если я использую libpcap?
• В общем случае — никак. Библиотека libpcap позволяет только слушать проходящий мимо интерфейса трафик. Все возможность блокировки через fw–policy или sys–policy работают ТОЛЬКО при наличии «перехватывающего» сервиса data–source, например IPFW или iptables/IPQ. Вы также можете написать свой скрипт (де)блокировки, который будет вызываться сервисом processor каждый раз, когда изменяется состояние системной политики юнита (см. документацию и пример).
• Почему бы не хранить конфигурацию в SQL?
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии