Доброго дня!
Проблема в FORWARD, а точнее в этой чепочке.
Если можете помогите пожалуйста её решить грамотно.
Проблема с цепочкой FORWARD заключается вследующем.
Есть следующие:
1) # Заворот трафика для подсчёта
iptables -A FORWARD -p ALL -j QUEUE
2) # Выход локалки в инет.
iptables -A FORWARD -p ALL -i eth1 -j ACCEPT
3) # ip на который всей сети выход запрещён кроме 2-х ip из этой сети.
# разрешаем ip которым разрешено
iptables -A FORWARD -s 10.3.3.3 -d 125.25.25.25 -j ACCEPT
iptables -A FORWARD -s 10.3.3.4 -d 125.25.25.25 -j ACCEPT
# Остальным (всей сети) запрещаем
iptables -A FORWARD -s 10.3.3.0/24 -d 125.25.25.25 -j DROP
Если первым ставить правило для подсчёта (QUEUE) то после него остальные правила не действуют. Я так понимаю что программа (которая работает с QUEUE) посчитав пакет просто отправляет его дальше. А мне надо сделать так
что бы
- Либо программа посчитала пакет идущий на запрещённый ip
(завернув его в QUEUE) а потом его отбросило так и недав ему дайти до запрещённого сайта.
- Или сразу отбросило и соответственно программа его не посчитала.
Я могу впринципе сделать так:
Запретить всем или опредилённому ip выход на ненужный ip , а потом поставить правило для подсчёта и разрешить выход в инет локалке :
# Запрещ. всем выход на опред. ip
iptables -A FORWARD -s 10.3.3.0/24 -d 222.33.44.55 -DROP
# Заворот трафика для подсчёта
iptables -A FORWARD -p ALL -j QUEUE
# Выход локалки в инет.
iptables -A FORWARD -p ALL -i eth1 -j ACCEPT
Тогда получится как я понимаю следующее, все пакеты совпавшие с первым правилом будут отброшены и соответственно не посчитаны. А все остальные пакеты идущие в за шлюз (в инет) будут учитываться.
Остаётся "мелочь" разрешить 2-ум ip из сети доступ к ip 222.33.44.55 так чтобы учитывался трафик.
Как сделать пока не знаю.