LINUX.ORG.RU
Форум — Admin  

Роутер. Писать лог посещенных сайтов клиентами

 , ,


0

1

Здраствуйте
Стоит задача писать в лог посещенные клиентами сайты.
Сервер это роутер Asus rt-n66u. Достаточно знать какой ip на какой ip. ходит. Веб морда не нужна.
В принципе могу проинсталировать пакет, но вопрос какой?

Я пробовал
netstat -antup
но в обычном линуксе вывод человеческий,
В роутере фигня, ключ -р он не знает
Куда рыть?

Прошивка merlin последняя для моей модели

★

Когда начал читать, думал, что понял про что речь. Но дочитав до netstat споткнулся. Мне не понятно, какой вывод от netstat вы ожидали получить на маршрутизаторе? Да ещё с ключём ″u″ (udp), если речь идёт о сайтах, а не о DNS/торрентах.

Ну если достаточно только ip и вы готовы сами разгребать данные, то создайте в iptables ″-j LOG″ правило, которое будет записывать все исходящие tcp-пакеты с состоянием ″NEW″. Но не понятно, на чём в хотите это обрабатывать, данных будет много, их обычно складывают в БД, но не будете же вы ставить на Asus какую-нибудь СУБД?

mky ★★★★★
()

прокся тебе нужна прозрачная. но не уверен что на роутер ее можно поставить.

Komintern ★★★★★
()

Стоит задача писать в лог посещенные клиентами сайты.

Сервер это роутер

Asus rt-n66u

Он сдохнет от этого. Ну или, интерфейс будет забит под завязку логами.

Посмотрите в сторону transparent proxy.

robot12 ★★★★★
()
Ответ на: комментарий от mky

Вот с iptables прошу уточнить. Грэпать и искать я умею, удалять все что свыше 1000 строк или по крону тоже смогу. Да хоть в архив... Меня интересует только кто с кем соединялся, (Если будет легко, добавлю еще - когда соединялся). Вся остальная статистика не будет записываться
Будьте добры, бросьте линк на инструкцию iptables ″-j LOG″ правило/мануал на любом языке. С ходу не нарыл

dromer ★
() автор топика
Ответ на: комментарий от robot12

Он сдохнет от этого. Ну или, интерфейс будет забит под завязку логами

Нет, не сдохнет, нагрузка на него в принципе не большая, логи я могу хранить подсоединив к ЮСБ диск или флешку любого размера. Удаление, архивирование мне тоже помогут. Запись будет лишь факта установления соединения

dromer ★
() автор топика

tcpdump можно поставить и писать в лог первые 50-60 байт от IP пакетов, чтоб заголовки HTTP запросов сохранялись

Harald ★★★★★
()
Ответ на: комментарий от robot12

Он сдохнет от этого. Ну или, интерфейс будет забит под завязку логами.

Наверняка можно заставить iptables гнать лог на отдельную машину. Префикс, netcat, вывод в файл сокета вместо /var/log/messages.

shatsky ★★
()
Ответ на: комментарий от dromer

man iptables. Базовое правило будет что-то типа этого:

iptables -I FORWARD --ctstate NEW -j LOG

Это будет логирование попыток установления соединения (то есть кто и куда пытался подключиться, но не факт, что получилось).

Можно попробовать логировать первый ответный пакет соединения, если он есть, значит точно подключение было:

iptables -I FORWARD -m connbytes 1:1 --connbytes-dir reply --connbytes-mode packets -j LOG

но не знаю, есть ли у вас connbytes в iptables.

Ну далее можно давать этим правилам дополнительные условия, чтобы, допустим, только tcp-протокол... Но, это именно будут ip-адреса, а не URL.

Ну и там указываете log-level и настраиваете запись логов в отдельный файл или по сети http://unix.stackexchange.com/questions/96484/how-can-i-configure-syslog-conf...

mky ★★★★★
()

задача выглядит неадекватно, но мне нравится вариант с tcpdump, ибо можно гибко настроить фильтры и ротацию

zolden ★★★★★
()
Ответ на: комментарий от shatsky

Наверняка можно

Можно, но вот вопрос нужно ли ?

robot12 ★★★★★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.