Возникла тут задачка - расшифровать трафик, который лезет у нас через шифрованый канал. ОС - FreeBSD, софт - ipsec+racoon.
Оказалось, это не так уж и трудно. На хабре, который изредка все же бывает полезным, была найдена статья, которая поясняла, как это все сделать.
Для автоматизации был создан простенький скриптик такого вида:
#!/bin/sh DATE=`date +%F-%H` DUMPF=/var/log/ipsec$DATE.pcap KEYF=/var/log/ipsec$DATE.key /usr/local/etc/rc.d/racoon stop tcpdump -i em0 -w $DUMPF esp & /usr/local/etc/rc.d/racoon start sleep 20 setkey -D >> $KEYFSleep в 20 секунд нужен, чтобы ключи успели установиться. Возможно, в некоторых случаях нужно ждать подольше, но осооб вреда нет - ключи изменятся по таймауту, установленному в конфиге и он обычно около часа.
Но следует понимать, что из этого вытекает проблема, что после смены ключей трафик уже будет не расшифровать, придется повторять операцию.
От себя еще замечу следующее - во-первых, SPI надо брать именно в HEX-значении. я долго возился, пока до меня это не дошло.



