Внимание! Перед развертыванием и тем более использованием системы, которая описана в этой статье, обязательно ознакомьтесь со статьями 137 «Нарушение неприкосновенности частной жизни» и 138 «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений» Уголовного Кодекса Российской Федерации, а также посоветуйтесь с юристами. Я не несу никакой ответственности за последствия, которые могут быть вызваны Вашими действиями.
Постановка задачи
Необходимо создать систему, позволяющую перехватывать, хранить и отображать в удобной форме ICQ-переписку сотрудников компании. Судя по диалогам на соответствующих форумах, рассматриваемая задача периодически возникает, поэтому я описал один из способов ее решения, примененный в нашей Компании. Система построена на базе свободно распространяемого бесплатного программного обеспечения и не требует использования каких-либо специализированных аппаратных и / или программных средств.
Исходные данные
Имеется сервер с FreeBSD, через который сотрудники компании тем или иным способом (NAT, прокси-сервер и т.п.) выходят в Интернет. Для установки системы не требуется какая-либо перенастройка этого сервера. Самое главное — Вы должны тем или иным способом ограничить список портов, которые могут использовать клиенты ICQ, чтобы продвинутые пользователи не смогли «обмануть» сниффер.
В качестве сниффера мы будем использовать AimSniff, для хранения перехваченныйх сообщений — сервер MySQL (процесс настройки сервера MySQL не расматривается в данной статье за исключением создания базы данных и пользователя aimsniff), для просмотра отчетов — Web Aim Sniff (WAS) и Web-сервер Apache (процесс настройки сервера Apache не рассматривается в данной статье за исключением добавления возможности отображения необходимых отчетов). Почти все перечисленное программное обеспечение будет устанавливаться из портов, поэтому я рекомендую Вам обновить их перед выполнением действий, описанных ниже (я использовал FreeBSD 7.0 и последние на конец 2008 года версии портов для нее). Ссылки на источники информации будут приводиться применительно к конкретным разделам статьи.
Установка и настройка AimSniff
Установку AimSniff необходимо выполнить из портов:
cd /usr/ports/security/aimsniff make install clean
Сразу после завершения выполнения установки необходимо выполнить команду:
aimsniff -d=bge1 --nodb
Естественно, bge1
необходимо заменить на имя внутреннего интерфейса. Данная команда запускает мониторинг пакетов ICQ, проходящих через заданный интерфейс, и отображение содержимого декодированных пакетов на экране без записи в базу данных. Если после выполнения команды вместо сообщений "INCOMINMG MESSAGE..."
и "OUTGOING MESSAGE..."
выдается сообщение: "Can't locate GDBM_File.pm in @INC (…) at /usr/local/bin/aimsniff line 47. BEGIN failed--compilation aborted at /usr/local/bin/aimsniff line 47."
, следует пересобрать Perl с поддержкой GDBM:
cd /usr/ports/lang/perl5.8 make deinstall make WITH_GDBM=yes reinstall
По умолчанию AimSniff «не понимает» интересующие нас сообщения в кодировке UTF-8. Для исправления такого поведения необходимо загрузить пропатченную версию скрипта AimSniff и установить порт p5-Unicode-Map8 (если он не был установлен ранее):
fetch http://www.aimsniff.com/releases/aimSniff.Cyr-005.tar.gz tar -xf aimSniff.Cyr-005.tar.gz chmod 555 aimSniff.Cyr-005.pl mv aimSniff.Cyr-005.pl /usr/local/bin cd /usr/ports/converters/p5-Unicode-Map8 make install clean
Для проверки работоспособности руссифицированного AimSniff необходимо выполнить команду:
aimSniff.Cyr-005.pl -d=bge1 --nodb
После того, как первичная настройка будет завершена, необходимо создать базу данных aimsniff и пользователя aimsniff для работы с этой базой данных. Для этого нужно запустить клиент MySQL командой:
mysql -u <имя пользователя-администратора> -p
ввести пароль и выполнить три SQL-запроса:
CREATE DATABASE aimsniff; GRANT ALL ON aimsniff.* TO aimsniff@localhost IDENTIFIED BY 'aimsniff'; FLUSH PRIVILEGES;
После завершения работы клиента MySQL необходимо создать таблицы базы данных aimsniff:
mysql -u <имя пользователя-администратора> -p aimsniff < /usr/local/share/doc/aimsniff/table.struct
После завершения подготовки базы данных необходимо создать файл конфигурации AimSniff. В моем случае он называется aimSniff.cfg
, находится в папке /usr/local/etc
и имеет следующее содержимое:
dev=bge1 filter='tcp and port 3128' daemon=1 host=localhost database=aimsniff user=aimsniff password=aimsniff useSyslog=1
В данном файле заданы следующие значения параметров: dev
— имя интерфейса; filter
— фильтр, определяющий какие пакеты следует «вылавливать» (зависит от способа выхода клиентов ICQ в Интернет, в моем случае для выхода клиентов ICQ в Интернет используется прокси-сервер, «слушающий» порт 3128); daemon
— признак работы в режиме демона; host
/ database
/ user
/ password
— параметры доступа к базе данных; useSyslog
— признак использования syslog’а для записи служебных сообщений.
Самым последним этапом настройки AimSniff является доработка скрипта автозапуска, выполняемого при запуске операционной системы. Образец такого скрипта поставляется в составе AimSniff (файл rc.aimsniff
в папке /usr/local/share/doc/aimsniff
), однако его нужно немного адаптировать. Во-первых, нужно указать корректный интерпретатор shell в первой строке (в моем случае это /bin/sh
), а во вторых заменить имя скрипта и файла конфигурации в шестой строке на:
/usr/local/bin/aimSniff.Cyr-005.pl -C=/usr/local/etc/aimSniff.cfg
После этого необходимо сделать скрипт исполняемым и скопировать его в папку usr/local/etc/rc.d
:
cd /usr/local/share/doc/aimsniff chmod 555 rc.aimsniff cp rc.aimsniff /usr/local/etc/rc.d/aimsniff.sh
На этом настройка AimSniff заканчивается. Перезагрузите сервер, и после запуска операционной системы демон AimSniff начнет «вылавливать», декодировать и записывать перехваченные сообщения ICQ в базу данных.
Установка и настройка WAS
WAS (Web Aim Sniff) — Web-интерфейс для доступа к базе данных AimSniff, написанный на языке PHP. К сожалению, пока он не добавлен в коллекцию портов FreeBSD, в связи с чем придется ставить его из исходных тестов. Перед началом установки WAS необходимо добавить в файл конфигурации необходимого виртуального хоста Apache следующие строки:
Alias /was /usr/local/www/was/ AuthName "This server require authorization!" AuthUserFile /usr/local/etc/apache/htpasswd AuthType Basic Require user "Список пользователей, которым разрешен доступ" Order deny,allow Deny from all Allow from ... Allow from ...
Как видно из фрагмента файла конфигурации для установки WAS была выбрана папка /usr/local/www/was
, доступ к которой разрешен только с определенных IP-адресов и только после прохождения процедуры Basic-аутентификации. Вам нужно подставить реальные IP-адреса в директивы Allow from
и добавить необходимых пользователей в файл htpasswd
и директиву Require user
. О том, как это сделать, подробно написано в разделе Authentication, Authorization, and Access Control официальной документации Apache. Не забудьте перезапустить Web-сервер после внесения изменений в его конфигурацию.
Когда Web-сервер будет подготовлен, необходимо загрузить, распаковать и переместить WAS в нужную папку, удалить все лишнее и сделать владельцем файлов WAS пользователя, от имени которого работает Web-сервер:
mkdir /usr/local/www/was cd /usr/local/www/was fetch http://aimsniff.com/releases/was-0.1.2b.tar.gz tar -xf was-0.1.2b.tar.gz mv was-0.1.2b/* was-0.1.2b/.[a-zA-Z]* . rm -Rf was-0.1.2b was-0.1.2b.tar.gz chown -R www:www * .[a-zA-Z]*
После этого необходимо слегка подкорректировать файлы WAS. Во-первых, в файлах .header.php
и index.html
неоходимо исправить charset=iso-8859-1
на charset=koi8-r
(это приведет к корректному выбору кодировки браузером и, соответственно, корректному отображению русских символов). Во-вторых, в файле index.php
необходимо исправить img src=./typesGraph.php
на img src=./images/typesGraph.php
(это исправит ошибку, допущенную разработчиком WAS). В третьих, мне показалось более удобным видеть в списке сообщений не IP-адреса, а имена компьютеров локальной сети. Если Вы согласны со мной, исправьте в файле .global.php
<strong>IP</strong>
на <strong>Computer</strong>
, а также исправьте в теле функции printMessages $rs["ip"]
на ucwords(gethostbyaddr($rs["ip"]))
. Вообще, следует заметить, что WAS — очень «сырой» пакет. К сожалению, у меня нет времени на его адаптацию, да и PHP я знаю лишь поверхностно, поэтому в настоящий момент приходится довольствоваться тем, что есть. Все работает, хотя за эргономику я бы не поставил больше тройки.
После доработки файлов WAS необходимо открыть в браузере URL http://host.company.com/was/admin.php
, естественно, изменив host.company.com
на имя используемого Вами виртуального хоста. В браузер будет загружена страница, на которой можно задать параметры WAS. В первую очередь необходимо изменить параметры Database User
/ Database Password
и нажать кнопку Submit
. Остальные параметры могут быть изменены или не изменены, исходя из личных предпочтений. На этом настройка WAS заканчивается.
Заключение
С учетом простоты рассмотренной системы с одной стороны и огромной популярностью ICQ с другой Вам скорее всего удастся выявить не один и не два эпизода неправильного использования рабочего времени, а возможно и «слива» конфиденциальной информации. Бесспорно, система не является панацеей, однако даже несколько выявленных случаев с лихвой окупят время, потраченное на ее настройку. Если в процессе настройки у Вас возникнут проблемы, внимательно анализируйте лог-файлы и читайте обсуждение cтатьи на сайте www.lissyara.su. Если ничего не помогает, задавайте мне вопросы, попробуем решить проблему вместе.
Привет! Настроил aimsniff, при попытке открыть was (
admin.php
) скрипт просто предлагает сохраниться как файл и все. Что делать, не подскажешь на вскидку, пожалуйста? Спасибо.Привет! Настраивать Web-сервер на корректную обработку PHP-скриптов
Добрый день.
Очень помогла статья icqsniff. Большое Спасибо. Все работает, за исключением следующего… Если юзеры сидят в квипе, то все сообщения отлавливаются и скадываются в базу. Если люди используют icq клиента встроенного в мейл агента, то sniff ловит только кракозябрики и не важно на каком языке написанно сообщение на инглише или на русском.
Подскажите как можно решить данную проблему?
Добрый вечер!
У меня на работе все пользуются Qip’ом, поэтому с проблемой не сталкивался, и подсказать, соответственно, нечего. А вообще нужно копать в сторону кодировок, используемых мейл@агентом, или заставлять юзеров использовать строго определенный софт (у нас именно так) 🙄
Совсем недавно решил исправить данную проблему, есть вариант работающего скрипта, исправлены многие глюки при ловле сообщений ICQ. С qip действительно проблем не наблюдалось. Готов предложить свой вариант скрипта
aimSniff.Cyr-005.pl
Позже после окончательного тестирования выложить его в сети официальноДумаю, многим это поможет Ждем с нетерпением
Было бы очень интересно посмотреть исправления, уже который день бьюсь над проблемой русской кодировки в ICQ 6.5 или был бы рад пообщаться на эту тему…
Кажется, GODshadow забыл о своем обещании или просто пошутил 🙄
Вобщем сам разобрался, смотреть тут
http://www.opennet.ru/openforum/vsluhforumID10/2767.html
Спасибо, думаю, многим пригодится!
Выложите пожалуйста (для тестирования)
Будьте внимательнее:
Привет, у меня проблема записи логов в базу не происходит, в консоли AIM Sniff он просто у меня слушает на внутреннем интерфейсе ну ничего не ловит, как обойти эту проблему
##########################################################
AIM Sniff v. 0.9dr005
Developed by: Shawn Grimes
Realtex-sux and demiurgie based Cyrillic patches are made by amdk7.
##########################################################
Beginning Sniff...
FILTER: port 5190
и все больше ничего не происходит!!!simple123
Вопрос задан слишком расплывчато. Вы правильно задали имя интерфейса? Вы используете прокси?
FreeBSD gate 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Tue Jun 16 16:58:19 SAMST 2009 simple@gate.skill-plus.local:/usr/obj/usr/src/sys/ISORT i386
да используется прокси порт 3128 связка sams squid rejik ntlm, демон в памяти висит слушает вот cfg файл aimsniff
/usr/home/simple/>cat /usr/local/etc/aimSniff.cfg
dev=age0
filter='tcp and port 3128'
daemon=1
host=localhost
database=aimsniff
password=1sort
useSyslog=1
Выполните команду
ifconfig
и напишите, что она выдает.ifconfig
age0: flags=8943 metric 0 mtu 15 00
options=319b
ether 00:1e:8c:ba:97:57
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
media: Ethernet autoselect (100baseTX )
status: active
rl0: flags=8843 metric 0 mtu 1500
options=8
ether 00:14:d1:10:bc:4d
inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255
media: Ethernet autoselect (100baseTX )
status: active
rl1: flags=8802 metric 0 mtu 1500
options=8
ether 00:14:d1:10:b8:22
media: Ethernet autoselect
status: no carrier
plip0: flags=108810 metric 0 mtu 1500
lo0: flags=8049 metric 0 mtu 16384
inet 127.0.0.1 netmask 0xff000000
pflog0: flags=0 metric 0 mtu 33204
pfsync0: flags=0 metric 0 mtu 1460
syncpeer: 224.0.0.240 maxupd: 128
aimSniff.Cyr-005.pl -d=age0 -f='tcp and port 3128' --nodb
работает?Выдает перехваченные сообщения в консоль?
да вот сейчас выдает перехватывает сообщения, спасибо, 😛 а почему он тогда не берет эти настройки с конфигунационого файла, пути прописаны правильные к файлу
Ответа конечно я наверное не дождусь
Ну почему же? 😆 Вариантов всего два: не правильные пути и / или не правильные права доступа к файлу конфигурации (это если запускаете не под root’ом).
Спасибо за помощь разобрался, не хватало модуля p5-DBD-mysql, все таки в статье надо у помянуть про это модуль чтобы не наступали на грабли в будущем другие 😛 !!! Спасибо за помощь!!!
Здесь уже затрагивался этот вопрос 😉
Всегда пожалуйста. Я рад, что все получилось
Здравствуйте!
У меня aimsniff не пишет в базу
Мой конфиг
aimSniff.cfg
:dev=em0
filter='tcp and port 3128'
daemon=1
host=localhost
database=aimsniff
user=aimsniff
password=aimsniff
useSyslog=1
С фильтром игрался. ничего не помогло. (менял порт)
Если запустить так:
/usr/local/bin/aimSniff.Cyr-005.pl -d=em0 --nodb >> /tmp/icq_messages_log.txt
tail -f /tmp/icq_messages_log.txt
Все работает.
В чем может быть дело?
Когда отправляю сообщения…
tail -f /var/log/messages
пишетJul 2 09:46:24 root kernel: em0: promiscuous mode disabled
Jul 2 09:46:24 root kernel: em0: promiscuous mode enabled
Jul 2 09:46:35 root kernel: em0: promiscuous mode disabled
Jul 2 09:46:35 root kernel: em0: promiscuous mode enabled
т.е. получается 1 сообщение — 1 раз
disable
иenable
Так и должно быть?
Проблема решена.
root# pkg_info | grep mysql-server
mysql-server-5.0.81 Multithreaded SQL database (server)
root# cd /usr/ports/
root# make search name="p5-DBD-mysql50"
Port: p5-DBD-mysql50-4.010
Path: /usr/ports/databases/p5-DBD-mysql50
Info: MySQL 5.0 driver for the Perl5 Database Interface (DBI)
Maint: skv@FreeBSD.org
B-deps: mysql-client-5.0.81 p5-DBI-1.60.7 p5-Storable-2.18 perl-5.8.9_2
R-deps: mysql-client-5.0.81 p5-DBI-1.60.7 p5-Storable-2.18 perl-5.8.9_2
WWW: http://search.cpan.org/dist/DBD-mysql/
root# cd /usr/ports/databases/p5-DBD-mysql50
root# make && make install && make clean
А как сделать что бы функция срабатывала
ucwords(gethostbyaddr($rs["ip"]))
, если DNS на другом сервере?Здравствуйте!
Настроить резолвинг имен на этом сервере 😉
cat resolv.conf
nameserver 192.168.0.1
это и есть DNS
Еще есть
host.conf
иnsswitch.conf
(в них задаются наборы и порядок опроса служб разрешения имен). Ну и файрволы должны иметь соответствующие правила.Здравствуйте. Установил всё по вашей статье, но есть одна проблемка. В базу не пишутся русские сообщения. При использовании команды
aimSniff.Cyr-005.pl -d=rl0 --nodb
всё прекрасно ловится и в консоли я наблюдаю, кто что пишет на русском языке, а вот в базу никак не идут они, полеmessage
пустое. MySql 5.0, кодировка utf8. FreeBSD 7.1.Здравствуйте!
А все остальные поля заполнены? Или вообще в базу ничего не пишется?
все остальные заполнены, если переписка на английском то всё нормально пишется.
Однозначно, проблема в MySQL. Точнее сказать не могу. Начните с добавления
log=...
в секцию[mysqld]
файла/etc/.my.cnf
, если анализ лога ничего не даст, обращайтесь к документации MySQL.P.S.: пожалуйста напишите решение проблемы, когда разберетесь 🙄
включил логи. В логах поле message=»……» колл-во точек равно колл-ву букв в слове. 😕
На вскидку, или MySQL собран без поддержки Unicode (сам когда ставил, кажется, ничего не менял на этот счет) или конфигурация сервера/базы чем-то не нравится скрипту. Еще раз отправляю Вас к документации MySQL. Сам ни с чем похожим не сталкивался. Кракозяблы бывали, а вот пустых мест не припоминаю
Проблема не в MySQL. В текстовый файл тоже пишутся точечки. 🙄
На экран русские буквы а в текстовый файл точки? Чудеса какие-то.
p5-Unicode-Map8
установлен? Хотя без него и на экран русские буквы не выводятся нормально 🙄Мда, чудеса))) Собрал все на другой машине freeBSD 7.1 То же самое((( В какую сторону копать не знаю 🙄
Получается, что в сторону настроек ОС. Если на экране все по русски, да еще и в базу что-то пишется, то значит все нужные модули есть. Может с настройками локали что-то не так или с настройками Perl’a 🙄
Ура. Всё разобрался)) Забыл сказать что я делал всё удалённо через putty. А там русские буквы не отображаются. Изменил локаль на cp1251 и mysql собрал с поддержкой cp1251. Всё пишется, всё работет 😀
Поздравляю! Как я и говорил, чудес не бывает 😆
SergeySL Вопрос к Вам как в автору статьи.
У меня такая проблема или не проблема это…
У некоторых клиентов нету хендла.
т.е. человек пишет моему юзеру хендл «to» пустой и если пользователь пишет человеку хендр «from» пустой.
Возможно исправить?
Так бывает, если оба абонента находятся в одной физической сети, т.е., например, в Вашей локалке. На официальном форуме AimSniff написано, что это нормальное явление 😕
У меня наоборот! 😐
У себя такого не наблюдал. Смотрите официальный форум AimSniff, думаю, что там должен быть ответ 🙄
У меня такая же фигня наблюдается. Нет ни одной строчки, где были бы заполнены и From и To.
Форум пока не работает ((
Такое возможно из-за некорректной настройки фильтра. Это не единственная причина, но сам сталкивался 🙄
Друзья! Подскажите, пожалуйста, такую вещь — хочу перевести кодировку БД в cp1251 — подправил скрипт
aimSniff.Cyr-005.pl
, чтобы он не переводил ср1251 в кои8, в консоли всё чудесно, в файлик всё скидывается чудесно. А вот в mysql всю кириллицу лупит вопросиками, причём mysql настроен полностью на ср1251. Куда копать?А разве AimSniff пишет сообщения в базу не в UTF8?
Хм..в скрипте и комментариях в нём указано о переводе cp1251 в koi8.
Да и аська сообщения кидает в cp1251.
Впрочем, перенастроил сервак на UTF8 — заработало=) Хотя в браузере кодировку ставит ср1251. Пойду читать про кодировки=)
Я не знаю, какую кодировку он использует, однако:
1. В дампе базы есть
SET NAMES utf8
;2. Без
p5-Unicode-Map8
русские буквы не понимает.Поэтому предположил, что UTF8 🙄
Cделал следующее:
1.
aimSniff.Cyr-005.pl -d=em0 --nodb > aimsniff.txt
(перевел вывод с консоли в файл)Открыл файл в — русские буквы видны в кодировке ср1251.
2. Все кодировки сервера — utf8, браузер делает запрос, выдаются результаты, которые можно прочесть только в ср1251, в утф8 кириллица предстаёт вопросиками в чёрных ромбиках (браузер — Opera)
3. Делаю в консоли
select * from logs
— кириллица примерно такая ©я?п?п?п?я?я?я?п?я?п?я4. Опытным путем установил, что сделав
character_set_results=koi8r
, нормальные результаты вижу и в консоли FreeBSD.___________
Вывод: Скрипт aimsniff работает отлично. Проблемы из-за кодировок MySQL и консоли FreeBSD.
P.S. Не совсем отлично. Тоже не вижу своего UIN в логах, независимо от расположения собеседника. Пусто в полях From и To (соответственно в исходящих и входящих сообщениях)
Возникла проблема, скрипт настроен отлично. Сообщения ловит и записывает базу как на русском так и на инглише. Но вот для примера работы был взят клиент SIM с форматом сообщений UTF — их сниффер попросту пропускает и не парсит, при дебугге обрабатывает как просто пакет. Если же в SIM переключить формат сообщений в RTF — все начинает работать.
Вот значит где все вредители собрались 🙂
У меня на работе тоже аську сперва запретили, а затем разрешили, но всю переписку просматривают…
Неужели заняться больше нечем?
Уважаемый, я ничего не просматриваю. Меня попросили сделать, я сделал (и денежку, естественно, за это получил). Других иногда тоже просят сделать, поэтому и писанина подобная может пригодиться 😉
Верно, может 😉 Вот только не могу задать вопрос по теме на сайте: выдается ошибка «запрос неправильно сформирован» 🙁
О каком сайте идет речь?
Все очень просто для qip — «Плагин для конфиденциальной переписки».
У таких «специалистов», как Вы, действительно просто, а у нормальных системных администраторов права доступа NTFS настроены, и, соответственно, юзеры самостоятельно плагины не ставят, даже если им очень хочется. Если интересно, то для корректной работы старого Qip под юзерскими правами достаточно разрешить запись в
C:Program FilesQipUsers
, а новый Qip вообще хранит параметры аккаунта в профиле пользователя 😉Да утерли вы мне нос с правами на NTFS не подумавши ляпнул. Ну что же будем работать в этом направлении обхода прав и привелегий.
Если сеть нормально настроена, это бесполезно. Просто дружите с админами 🙂
Ну это всегда пивасика вместе попить и не только его! Ну иногда бывают такие пи….! Да и просто интересно стало 🙂
Среди менеджеров по продажам, маркетологов и прочего офисного планктона, считающего себя элитой современного общества, не пи… — исключение из правил. А вообще, для меня важен человек, а не его профессия. Я с удовольствием помогаю людям, которых уважаю, и очень не люблю иметь дело с этими самыми пи…, которых с каждым днем становится все больше 🙂
Полностью с вами согласен.
Здравствуйте!
aimSniff.Cyr-005.pl -d=bge1 --nodb выдает ошибку: Can't locate Unicode/Map8.pm in @INC (@INC contains: /usr/local/lib/perl5/5.8.8/BSDPAN /usr/local/lib/perl5/site_perl/5.8.8/mach /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.8/mach usr/local/lib/perl5/5.8.8 .) at /usr/local/bin/aimSniff.Cyr-005.pl line 42.
BEGIN failed--compilation aborted at /usr/local/bin/aimSniff.Cyr-005.pl line 42.
Заработало. Далее — новая ошибка:
Error opening pcap: BIOCSETIF: bgel: Device not configured
Указывайте не
bge1
, а тот интерфейс, который смотрит в локальную сеть. Список интерфейсов можно получить командойifconfig
, а дальше по IP-адресу смотрите 😉Спасибо! Не догадалась сама :(. Но это получилось на так сказать тренировочном компе. А вот на рабочем не могу пересобрать перл (с GDBM чтоб был):(, пишет:
1 out of 1 hunks failed--saving rejects to /lib/ExtUtils/MM_Unix.pm.rej
>>Patch patch-MM_Unix.pm failed to apply cleanly.
>>Patch(es) patch-INST_PREFIX.t patc-MM_Any.pm applied cleanly.
Error code 1
Думаю, что для начала можно попробовать порты обновить.
Скажите пожалуйста, а можно как-то определить какие порты необходимо обновить?
pkg_version -v
говорит, что одниup-to-date with port
, а другиеcomparison failed
.Какие порты нужно обновить, показывает команда
portversion -l "<"
.Моя система не понимает команды
portversion
.pkg_version -v
это не то же самое? Если pkg_version говорит"up-to-date with port"
значит не нужно обновлять или нужно?Поставьте
/usr/ports/ports-mgmt/portupgrade
, начнет понимать.Я удалила перл и попробовала поставить заново как раньше без GDBM. Пишет ту же ошибку, что и предыдущий раз. Значит дело не в том, что порты необновленные. Раньше то перл устанавливался. Где же тогда искать…
Версия FreeBSD? Что выдает команда
perl -v
?FreeBSD 5.3.
perl -v
говоритcommand not found
. Перл же сейчас не стал…1. Установите порты
/usr/ports/ports-mgmt/portupgrade
и/usr/ports/sysutils/fastest_cvsup
;2. Выполните команду
fastest_cvsup -c ru
, она покажет самый быстрый сервер обновлений;3. Выполните команду
csup -L 2 -h <ВышеуказанныйСервер> /usr/share/examples/cvsup/ports-supfile
;4. Выполните команду
portsdb -Uu
, она перестроит индексную базу данных коллекции портов;5. Установите порт
/usr/ports/lang/perl5.8
, только не забудь отметитьUSE_PERL
.P.S.: Вы блондинка?
Спасибо. Нет. Просто не успела «сильно» подружиться с фрёй. 🙂
А нафига девушке xBSD? Я думал, что самые тяжелые случаи ограничиваются Убунтой
Скажу по секрету: работа у меня такая. Многопрофильная, но не очень «глубоко». От сетевого оборудования до эникея 🙂
Звучит загадочно 🙂
Все работает, огромное спасибо.
Но столкнулся с небольшой проблемкой — в базу попадают записи вида
:│╪lG╔▒oЬЗoAway Status Messagetext/x-aolrtf
их как то можно фильтровать?
Ищите и исправляйте SQL-запрос, который добавляет сообщения в базу данных, в файле
aimSniff.Cyr-005.pl
.AimSniff завести не удалось. Поставил imspector — гораздо меньше телодвижений для установки + удобная вебморда в комплекте.
Я уже давно не интересуюсь судьбой AimSniff (необходимость отпала). Придется вернуться к вопросу, попробую imspector.
aimSniff.Cyr-005.pl -d=lo0 --nodb
:Can't load '/usr/local/lib/perl5/site_perl/5.12.4/mach/auto/Net/Pcap/Pcap.so' for module Net::Pcap: /usr/local/lib/perl5/site_perl/5.12.4/mach/auto/Net/Pcap/Pcap.so: Undefined symbol "PL_sv_undef" at /usr/local/lib/perl5/5.12.4/mach/DynaLoader.pm line 200.
at /usr/local/bin/aimSniff.Cyr-005.pl line 36
Compilation failed in require at /usr/local/bin/aimSniff.Cyr-005.pl line 36.
BEGIN failed--compilation aborted at /usr/local/bin/aimSniff.Cyr-005.pl line 36.
пëрл как видно 5.12
можено это как то поечить не ставя 5.8?
Если я ничего не путаю, оно и на 5.14 работало.
Упомянутый модуль установлен?
ll /usr/local/lib/perl5/site_perl/5.12.4/mach/auto/Net/Pcap/Pcap.so
-r-xr-xr-x 1 root wheel 71K 25 ноя 00:15 /usr/local/lib/perl5/site_perl/5.12.4/mach/auto/Net/Pcap/Pcap.so*
ll /usr/local/lib/perl5/5.12.4/mach/DynaLoader.pm
-r--r--r-- 1 root wheel 24K 25 ноя 00:20 /usr/local/lib/perl5/5.12.4/mach/DynaLoader.pm
Всё как в статье. Смотрел эти line 36 и 200 т.к. в пёрле не силён хз чё там не так 🙁
Я не сильнее. Сам давно AimSniff’а не касался (примерно с конца февраля), поэтому помочь не могу 🙁
Остается гуглить на предмет причин подобных ошибок и способов их устранения…
Ставил только в ознакомительных целях, пока что не до этого. Если понадобиться, то вернусь к этому вопросу и отпишусь — чё получилось 🙂
Хорошо…
У Вас не осталось файла
aimSniff.Cyr-005.pl
? По ссылке скачать уже нельзя.К сожалению, не осталось.