Резервирование MARS на NFS том Linux
26 Aug 2009 | Автор: dd |Коллега сидит по уши в мануалах и разбирается с системой Cisco Security MARS. Кратко выражаясь- это устройство мониторинга, анализа и ответных реакций для устройств сетевой защиты и host-based приложений, как от компании Cisco, так и от сторонних разработчиков. Задача стоящая перед ним, проста- выгрузить конфигурацию на сторонний сервер, примапленный по протоколу NFS, с целью резервирования, но следуя мануалу, от цискаридзе, мы упираемся в какие то непонятки.
Сервер крутится под Cent OS 5.2, хотя судя по всему все это же действительно и для RHEL . Для начала мы приходим к тому, что не смотря на то, что сервер NFS отсутствует в возможных вариантах установок, он как класс присутствует в системе.
Скрипт запуска сервера находится /etc/init.d/nfs, конфиг сервера /system/config/nfs
Создаем папки для выгрузки логов:
# mkdir -p /archive/phemars # второй каталог аналогичен имени MARS Box
# chown -R nobody:nobody /archive
# chmod -R 777 /archive
В конфигурационный файл /etc/exports задаем каталог, опции монтирования и IP-клиента для каталога выгрузки
/archive/phemars MARS_IP_Address (rw)
после изменения этого файла необходимо рестартнуть (reload) демона nfs.
Рестартуем сам сервис
# /etc/init.d/nfs restart
После чего на циске говорим:
# export config IP-Server:/archive/phemars
и получаем ошибку что невозможно подмонтировать. Включив мозг мы приходим к тому, что надо смотреть tcpdump и логи, откуда выясняем что на нашей системе по умолчанию крутится фаервол iptables, т.ч. открываем на редактирование свод его правил (/etc/sysconfig/iptables), либо задаем правила из командной строки, и открываем следующие порты:
### Для RPC
-A INPUT -i eth0 -p tcp -m tcp –dport 111 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 111 -j ACCEPT
### Для NFS
-A INPUT -i eth0 -p tcp -m tcp –dport 2049 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 2049 -j ACCEPT
### Для rpc.statd
-A INPUT -i eth0 -p tcp -m tcp –dport 4000 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 4000 -j ACCEPT
### Для lockd
-A INPUT -i eth0 -p tcp -m tcp –dport 4001 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 4001 -j ACCEPT
### Для mountd
-A INPUT -i eth0 -p tcp -m tcp –dport 4002 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 4002 -j ACCEPT
### Для rpc.rquota
-A INPUT -i eth0 -p tcp -m tcp –dport 4003 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 4003 -j ACCEPT
######## или же одним веским словом для 4 последних
-A INPUT -i eth0 -p tcp -m tcp –dport 4000:4003 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp –dport 4000:4003 -j ACCEPT
Также следует указать следующие параметры для демонов в файле /etc/sysconfig/nfs
# для сервера rpc.nfsd
RPCNFSDARGS=”–port 2049″
# для сервера mountd
MOUNTD_PORT=4002
# для настройки rpc.rquota новых версий
RQUOTAD_PORT=4003
# для настройки rpc.rquota старых версий необходимо (пакет quota 3.08+) добавить в /etc/services
rquotad 4003/tcp
rquotad 4003/udp
# для сервера lockd
LOCKD_TCPPORT=4001
LOCKD_UDPPORT=4001
# для сервера блокировки на старых системах следует добавить в /etc/modprobe:
options lockd nlm_udpport=4001 nlm_tcpport=4001
# для сервера rpc.statd
STATD_PORT=4000
#Стартуем все сервисы
service nfs start
service nfslock start
Все, повторяем все действия по выгрузке конфига и видим, что mars выгрузил данный под каким то неопознанным пользователем (у нас его uid был 500), собственно для чего мы и клали маску 777
* Если что то не получается, то можем попытаться подмонтировать том к локальной машине, для чего вносим изменения в файлик /etc/exports , где указываем внешний айпишник лоальной машины и говорим (сосбтвенно так и поймали проблему с пользователями, т.к. локальный mount создает файлы с uid nfsnobody)
mount -t nfs -users eth0_IP:/archive/phemars /mnt
*** В наиболее гиморных местах помогло
очень грамотное описание сервиса
на сайте BOG