Pull to refresh

Comments 9

Хочу написать цикл статей по сбору и анализу трафика на Linux, прошу кармокредита.
Во благо не жалко — держите.
Большое спасибо! Постараюсь не подвести(:
неплохой проксик
единственное, что не понравилось, так это справка, кое чего в ней нет, а кое что излишне
Кстати, автор в свое время очень быстро реагировал на багрепорты. При слишком длинных запросах вылетал, отписал ему и в тот же день поправили.
В принципе я делал для себя. А что именно не укажите?
POST он не логирует, либо мое 2004/07/16 сильно устарело. жажду опровержения.
Поищите опровержений на официальной сайте этого продукта. Но если мне не изменяет память в логах были и пост-запросы. Но могу ошибаться.
на оффсайте не искал, нашел в другом месте.

3proxy не предусматривает возможности логирования трафика, поэтому нам придется самим немного поправить исходники. Изменения нужно делать в файле sockmap.c, поскольку именно там происходит обмен данными. Начнем с исходящего от сервера трафика. Найди строку «j = recvfrom(param-> remsock, buf, BUFSIZE, 0,…». Эта функция посылает содержимое переменной buf на удаленный сервер. Чтобы контент этой переменной постоянно писался в файл, нужно вставить после этой строки такой код:

*(buf+j)=0;
// открываем файл /tmp/mylog_out для добавления инфы:
my_fp=fopen("/tmp/mylog_out","a");
// пишем в него содержимое переменной buf
fprintf(my_fp,"%s",buf);
// закрываем файл
fclose(my_fp);

Исходящий от клиента трафик, который может содержать важные пассы, записывается аналогичным способом. После строки «res=sendto(param-> remsock, buf + trans, i — trans, 0…» нужно всего-навсего добавить такой код:

*(buf + i)=0;
my_fp=fopen("/tmp/mylog_in","a");
fprintf(my_fp,"%s",buf+trans);
fclose(my_fp);


Теперь весь проходящий через сокс трафик будет писаться в файлы mylog_in и mylog_out.
Sign up to leave a comment.

Articles