Есть сервер. Нужно посниффать почту. ОСь: FreeBSD. Есть возможность получения рута. Какие то команды\софт есть для этого?
... из какого-то мана - установка под фрю фтп-сервера + сбор трафика в файлы дампа. Потом качаю их по фтп и передаю в траффер. Развлекайся ============================ ============================ 1. Настройка ftp 1.1 Проверяем в rc.conf: proftpd_enable="YES" Ставим proftpd 1.1.1 Конфиг proftpd Конфигурационный файл /usr/local/etc/proftpd.conf ######################### ServerName "FTP server" ServerType standalone DefaultServer on ServerIdent off Port 21 Umask 002 TimesGMT off DefaultTransferMode binary MaxInstances 30 UseReverseDNS off IdentLookups off PassivePorts 35500 35600 # порты для passive mode AuthPamConfig proftpd User nobody Group nobody <limit LOGIN> AllowUser sec DenyALL </limit> <global> RequireValidShell off DefaultRoot ~ DefaultChdir ~ <directory ~/*> <limit all> AllowAll </limit> </directory> </global> <directory /> AllowOverwrite on </directory> #в конце файла оставим пустую строку ##################### 1.2 Проверка параметра в /etc/shells должно быть "/usr/sbin/nologin" 1.3 Добовляем юзера: User - user1 (укажите свой) В качестве shell > /usr/sbin/nologin домашний каталог > /var/log/tcpdump Pass - password1 (укажите свой) проверить создался ли /var/log/tcpdump, если нет mkdir /var/log/tcpdump 2. cодаем скрипты 2.1 для первоначального запуска /usr/local/etc/rc.d/traff-int_if.sh *************start******************** #!/bin/sh if test -e /var/log/tcpdump/traff-int_if.pcap; then mv /var/log/tcpdump/traff-int_if.pcap /var/log/tcpdump/`date "+%Y-%m-%d-%H"`-traff-int_if.pcap ; fi && tcpdump -i int_if -s 0 -w /var/log/tcpdump/traff-int_if.pcap 'not ( host 192.168.ХХ.254 and port ftp-data or portrange 35500-35600 )' & echo $! > /var/run/tcpdump.pid *************end********************* host 192.168.ХХ.254 исправить на нужный gate (ну т.е. свой гейт) делаем его запускаемыми chmod +x /usr/local/etc/rc.d/traff-int_if.sh 2.2 для ротации логов /usr/local/sbin/rotate_traff-int_if.sh *************start******************** #!/bin/sh kill `cat /var/run/tcpdump.pid` && sleep 10 mv /var/log/tcpdump/traff-int_if.pcap /var/log/tcpdump/`date "+%Y-%m-%d-%H-%M-%S"`-traff-int_if.pcap find /var/log -type f -name "*traff-int_if.pcap" -mtime +7d -delete && sleep 10 /usr/local/etc/rc.d/traff-int_if.sh *************end********************* делаем его запускаемыми chmod +x /usr/local/sbin/rotate_traff-int_if.sh 2.3 проверка раз в 10 минут запущен ли ftp и если что запуск /usr/local/bin/pid_test.sh ************start******************** #!/bin/sh pid_ftp=`ps ax|grep proftpd|grep -v grep|awk '{print $1}'` if test -z $pid_ftp; then /usr/local/etc/rc.d/proftpd start; else echo "PID Proftpd $pid_ftp"; fi && *************end********************* 3. Запуск по расписанию /etc/crontab Вносим две строчки ************start******************** 0 0 * * * root /usr/local/sbin/rotate_traff-int_if.sh 1>/dev/null 2>/dev/null */10 * * * * root /usr/local/bin/pid_test.sh 1>/dev/null 2>/dev/null *************end********************* 4. Разрешение файервола Добавить в секцию Allow в файле /etc/pf.conf pass in on $int_if inet proto tcp from $internal_net to $internal_addr port { 20, 21, 35500:35600 } keep state user - password1 adduser -f содержимое файла user1::::::user1:/var/log/tcpdump:/usr/sbin/nologinassword1