Легко получить список сессий от Juniper Netscreen
У меня есть Juniper Netscreen SSG-5, который иногда получает большое количество сессий. У меня 4096 лицензированных сессий, и иногда я вижу 3000+ для небольшого офиса (дюжина или около того человек). Это выше, чем я хотел бы, и это заставляет меня немного больше, чем любопытно, по поводу открытых сессий.
В идеале я бы выбросил вывод команды "get session" в текстовый файл, но это не то, что ScreenOS поддерживает. По крайней мере, это я знаю. Пожалуйста, дайте мне знать, если это так.
Если бы не была возможность сохранить выходные данные в файл, если бы я мог каким-то образом получить список сеансов через SNMP, я был бы доволен таким образом wr/m-angle, но все, что мне удалось найти, это число активных сессий (предприятия 3224.16.3.2.0).
Я мог бы написать скрипт, используя 'nc' для подключения к сетевому экрану, и несколько раз нажать Enter, чтобы пролистать несколько тысяч строк, но это кажется менее забавным, чем делать это "правильным способом", если такой способ существует.
3 ответа
Я понял!
Без моего ведома, ScreenOS имеет возможность передавать вывод любой команды на сервер tftp!
Использование:
<command> > tftp <tftp ip address> <filename>
Теперь, когда это текстовый файл, я могу grep, sed и awkly мои маленькие потроха.
Если вы хотите получить некоторую статистику по выводу сеанса, для этого есть небольшой инструмент под названием "Анализатор сеансов межсетевого экрана". Если у вас есть учетная запись Juniper, вы можете получить к ней доступ по адресу www.juniper.net/fsa. Если нет, вы можете использовать хороший инструмент, разработанный Тимом Эберхардом, вы можете скачать его по адресу: http://performanceclassifieds.net/NSSA.zip
Надеюсь, это поможет вам!
Это лучше в качестве комментария к вашему ответу, но публиковать его как новый ответ, чтобы я мог отформатировать свой код для вас - вы можете использовать SSH для написания сценария для себя (или любой другой команды, я использую его для очистки кэша DNS каждые 5 минут). для пользователей DynDNS).
- создать пару ключей SSH без пароля типа DSA
- создайте пользователя Netscreen с соответствующим уровнем доступа для запуска ваших команд и поместите часть открытого ключа в его учетную запись
на вашем местном linux box настройте ниже
#!/ Bin / ш
DATFILE=/ опт / и т.д. / fwcommands.dat
KeyFile = / корень /.ssh / id_dsa_fw
/ usr / bin / ssh -T -i $ {KEYFILE} USER @ FIREWALL <$ {DATFILE}
... а затем в вашем файле fwcommands.dat есть то, что вы хотите запустить; так что-то вроде:
exec get sessions > tftp ip file
exit
Затем вы могли бы запустить его каждый час или еще что-то в этом роде и настроить его так, чтобы он отправлял вам по электронной почте все, что вам лично нужно. (форматирование вроде испорчено, серверный сбой ненавидит встроенные скрипты bash).