Есть роутер на ubuntu(10.0.0.105) с двумя lan интерфейсами
uname -aroot@ubserv:~# uname -a
Linux ubserv 2.6.38-15-generic-pae #60-Ubuntu SMP Tue May 22 11:48:17 UTC 2012 i686 i686 i386 GNU/Linux
cat /etc/network/interfacesroot@ubserv:~# cat /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# Internet
auto eth0
iface eth0 inet static
address 192.168.1.22
network 192.168.1.0
netmask 255.255.255.0
broadcast 255.255.255.255
gateway 192.168.1.20
post-up iptables-restore < /etc/iptables.up.rules
# Local network
auto eth1
iface eth1 inet static
address 10.0.0.105
network 10.0.0.0
netmask 255.0.0.0
в локальной сети компьютеры получают ip автоматом (10.0.0.xxx) от 10.0.0.105
В сети есть прокси сервер squid с ip 10.0.0.6:3128
10.0.0.5 10.0.0.7 - мои компьютеры
Подскажите какие правила добавить в iptables чтобы пользователи сети ходили в интернет через прокси (10.0.0.6), а почту получали напрямую (роутер 10.0.0.105)(клиенты Bat и Outlook). Мои компьютеры ходили напрямую. Я запутался и не могу сообразить!
На данный момент все ходят через прокси (10.0.0.6), но почту не получают. Если добавляю правило
-A INPUT -s 10.0.0.x/32 -j ACCEPT, то пользователь с 10.0.0.x/32 благополучно посещает внешний мир без прокси, что не допустимо...
настройки на 10.0.0.105: cat /etc/iptables.up.rulesroot@ubserv:~# cat /etc/iptables.up.rules
# Generated by iptables-save v1.4.10 on Mon Jun 18 11:33:35 2012
*nat
:PREROUTING ACCEPT [13448:1083045]
:INPUT ACCEPT [378:28178]
:OUTPUT ACCEPT [691:48734]
:POSTROUTING ACCEPT [663:42736]
-A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE
COMMIT
# Completed on Mon Jun 18 11:33:35 2012
# Generated by iptables-save v1.4.10 on Mon Jun 18 11:33:35 2012
*mangle
:PREROUTING ACCEPT [162598:118728205]
:INPUT ACCEPT [13334:1247698]
:FORWARD ACCEPT [149261:117479805]
:OUTPUT ACCEPT [2801:801397]
:POSTROUTING ACCEPT [151697:118264397]
COMMIT
# Completed on Mon Jun 18 11:33:35 2012
# Generated by iptables-save v1.4.10 on Mon Jun 18 11:33:35 2012
*filter
:FORWARD DROP [0:0]
:localnet - [0:0]
:INPUT DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp -m multiport -j ACCEPT --sports 25,110
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p udp -m udp --dport 67:68 --sport 67:68 -j ACCEPT
-A INPUT -s 10.0.0.0/8 -j localnet
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 123 -j ACCEPT
-A INPUT -p udp -m udp --dport 123 -j ACCEPT
-A INPUT -m conntrack -j ACCEPT --ctstate ESTABLISHED,RELATED
-A FORWARD -s 10.0.0.5/32 -j ACCEPT
-A FORWARD -s 10.0.0.6/32 -j ACCEPT
-A FORWARD -s 10.0.0.7/32 -j ACCEPT
-A FORWARD -p udp -m udp -s 10.0.0.0/8 --dport 53 -j ACCEPT
-A FORWARD -p udp -m udp -d 10.0.0.0/8 --sport 53 -j ACCEPT
-A FORWARD -p tcp -s 10.0.0.0/8 --dport 53 -j ACCEPT
-A FORWARD -p tcp -m tcp -d 10.0.0.0/8 --sport 53 -j ACCEPT
-A FORWARD -p udp -m udp -m state -s 10.0.0.0/8 --dport 67:68 --state NEW -j ACCEPT
-A FORWARD -p tcp -m tcp -m state -s 10.0.0.0/8 --dport 67:68 --state NEW -j ACCEPT
-A FORWARD -p tcp -m state -m tcp -s 10.0.0.0/8 --dport 25 --state NEW -j ACCEPT
-A FORWARD -p tcp -m state -m tcp -s 10.0.0.0/8 --dport 110 --state NEW -j ACCEPT
-A FORWARD -p icmp -s 10.0.0.0/8 -j ACCEPT
-A FORWARD -p udp -m udp -m state -s 10.0.0.0/8 --dport 123 --state NEW -j ACCEPT
-A FORWARD -p tcp -m tcp -m state -s 10.0.0.0/8 --dport 123 --state NEW -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A localnet -p tcp -m tcp -m multiport -j ACCEPT --dports 25,110
-A localnet -p tcp -m tcp --dport 21 -j ACCEPT
-A localnet -p tcp -m tcp --dport 22 -j ACCEPT
-A localnet -p tcp -m tcp --dport 3128 -j ACCEPT
-A localnet -p tcp -m tcp --dport 10000 -j ACCEPT
-A localnet -p tcp -m tcp --dport 80 -j ACCEPT
-A localnet -p tcp -m tcp --dport 53 -j ACCEPT
COMMIT
# Completed on Mon Jun 18 11:33:35 2012
cat /etc/resolv.confroot@ubserv:~# cat /etc/resolv.conf
nameserver 127.0.0.1
nameserver 192.168.1.20
стоит DNSMasq
cat /etc/dnsmasq.confroot@ubserv:~# cat /etc/dnsmasq.conf
# Configuration file for dnsmasq.
address=/ubserv/127.0.0.1
listen-address=127.0.0.1, 10.0.0.105
cache-size=300
no-dhcp-interface=eth0
dhcp-range=10.0.0.155,10.0.0.180,255.0.0.0,24h
#----------
#здесь длинный список, убрал его..
dhcp-host=00:xx:xx:xx:xx:xx,10.0.0.xxx
#----------
dhcp-option=3,10.0.0.105
dhcp-option=42,10.0.0.6
dhcp-leasefile=/var/log/dnsmasq/dnsmasq.lease
log-dhcp
#