LinuxForum.Fans
Тема

О простом, UBUNTU 3 сетевых платы и 2 две подсети

Автор: foxyfive 30 сообщений 9823 просмотров
#148331

Есть компьютер с 3 сетевыми. Одна сетевая на роутер (192.168.10.251) с выходом в интернет ее ip 192.168.10.100, другая в подсеть с адресом 192.168.5.2, и третья с адресом 192.168.2.2. Как сделать при помощи iptables запрет доступа сети 192.168.2._ в 192.168.5._, но что бы интернет был у обоих.

#148370

eth1 - 192.168.5.0/24
eth2 - 192.168.2.0/24

iptables -A FORWARD -i eth1 -o eth2 -j DROP
iptables -A FORWARD -i eth2 -o eth1 -j DROP

как то так) А если точнее ifconfig сюды

#148392

root@stas:~# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:54:55:d2
inet addr:192.168.1.30 Bcast:192.168.1.255 Mask:255.255.255.0


eth1 Link encap:Ethernet HWaddr 08:00:27:76:e1:f4
inet addr:192.168.2.2 Bcast:192.168.2.255 Mask:255.255.255.0


eth2 Link encap:Ethernet HWaddr 08:00:27:a3:1a:19
inet addr:192.168.5.2 Bcast:192.168.5.255 Mask:255.255.255.0


lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0

root@stas:~# iptables-save# Generated by iptables-save v1.4.4 on Tue Apr 5 22:53:26 2011
*filter
:INPUT ACCEPT [1364:716919]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1421:238413]
COMMIT
# Completed on Tue Apr 5 22:53:26 2011

Можно поточнее, а то я новичок :(

#148414

sudo nano /home/firewall.sh
туды

text

#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -F -t nat
iptables -F -t mangle
 
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
 
#Маскардинг в инет и локалку
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
iptables -A FORWARD -i eth1 -o eth2 -j DROP
iptables -A FORWARD -i eth2 -o eth1 -j DROP

сохраняем!
даём права
sudo chmod +x /home/firewall.sh

в автозагрузку
sudo nano /etc/rc.local
перед exit0 вставляем
sh /home/firewall.sh

сохраняем и выполняем

sudo ./home/firewall.sh

#148418

Спасибо, в интернет подсети заходят, но я могу пинговать ip адрес сетевой карты с другой подсети, так должно быть? И еще что бы завернуть всё на SQUID надо в самом конце добавить

$IPTABLES -t nat -A PREROUTING -s 192.168.2.2/24 \
-i eth1 -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-ports 3128

$IPTABLES -t nat -A PREROUTING -s 192.168.5.2/24 \
-i eth1 -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-ports 3128
Или что то еще надо дописать?

И еще SQUID в данном случае статистику собирать будет по двум интерфейсам?
К чему я клоню, к тому что мне надо будет потом регулировать интернет у пользователей подсетей через SAMS, а он читает логи у SQUID, вот и интересно я через SAMS смогу таким образом контролировать userov разных подсетей от разный сетевых?

И еще))) по какому порту идет интернет от точки доступа wifi?

Буду благодарен если ответишь

#148474

На счёт сквида другая история.
На счёт wi-fi не понял. А как я понял то работает как обычная сетевая)
Такс попробуй зайти на ресурсы машины из другой под сети

#148478

а можно по подробнее по поводу squid, он мне нужен.
на ресурсы вроде не могу зайти значит все работает smile

#148480

этого хватит ток подправил
iptables -t nat -A PREROUTING -s 192.168.2.2/24 -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-ports 3128
iptables -t nat -A PREROUTING -s 192.168.5.2/24 -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-ports 3128

Если тебе ток статистика и не обязательно прокси тогда traffpro
По поводу сквид будет собирать а вот тут выкладывали конфиги
http://linuxforum.ru/viewtopic.php?pid=156512#p156512

#148486

Спасибо. Ну настроить squid я вроде могу. А есть прокси слушающий не только http и ftp, что бы еще и smtp и pop? а то где я только не искал

#148494

Думаю такс?
iptables -t nat -A PREROUTING -s 192.168.2.2/24 -p tcp -m multiport --dport 80,8080,21,110 -j REDIRECT --to-ports 3128

Ну настроить сквид

#148498

да не завернете вы трафик smtp/pop3/imap на squid, не работает это чудо должным образом. Или пользоваться web интерфейсом, или заворачивать всю почту мимо squid.

#148746

то есть этот вариант не подойдет ?
iptables -t nat -A PREROUTING -s 192.168.2.2/24 -p tcp -m multiport --dport 80,8080,21,110 -j REDIRECT --to-ports 3128
я просто не могу сейчас его проверить.
а каким образом можно завернуть всю почту мимо squid?

#148792

При моём скрипте должна и так бегать smile

#148929

foxyfive, с помощью iptables можно завернуть почту, примерно так:

text

....
# tcp_inbound chain
#
# This chain is used to allow inbound connections to the
# system/gateway.  Use with care.  It defaults to none.
# It's applied on INPUT from the external or Internet interface.

# Email Server (SMTP) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 25 -j ACCEPT

# Email Server (POP3) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 110 -j ACCEPT

# Email Server (IMAP4) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 143 -j ACCEPT

# SSL Email Server (POP3) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 995 -j ACCEPT

# SSL Email Server (IMAP4) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 993 -j ACCEPT ...

где IPT="/usr/sbin/iptables" =)

#148954
i2ks написал:
foxyfive, с помощью iptables можно завернуть почту, примерно так:
text

....
# tcp_inbound chain
#
# This chain is used to allow inbound connections to the
# system/gateway.  Use with care.  It defaults to none.
# It's applied on INPUT from the external or Internet interface.

# Email Server (SMTP) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 25 -j ACCEPT

# Email Server (POP3) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 110 -j ACCEPT

# Email Server (IMAP4) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 143 -j ACCEPT

# SSL Email Server (POP3) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 995 -j ACCEPT

# SSL Email Server (IMAP4) $IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 993 -j ACCEPT ...

где IPT="/usr/sbin/iptables" =)

tcp_inbound?

#148966
Kettler написал:
tcp_inbound?
text

# Create separate chains for icmp, tcp (incoming and outgoing),
# and incoming udp packets.

$IPT -N icmp_packets

# Used for UDP packets inbound from the Internet $IPT -N udp_inbound

# Used to block outbound UDP services from internal network # Default to allow all $IPT -N udp_outbound

# Used to allow inbound services if desired # Default fail except for established sessions $IPT -N tcp_inbound

# Used to block outbound services from internal network # Default to allow all $IPT -N tcp_outbound

Если хочешь, то могу тебе в ЛС весь конфиг кинуть

#148967

скинь глянем

#148969
Kettler написал:
скинь глянем

скинул, как разберешь, скажи что и как, может совместно подправим =)

#148971

Не чё интересного smile
Да и не сам ты его писал))))
на фиг создавать свои цепочки

Мне привычнее и читабельнее
iptables -A FORWARD -i $inet -o $local -p tcp --dport 25 -j ACCEPT
#
iptables -A FORWARD -i $local -o $inet -p tcp --sport 25 -j ACCEPT

#148972
Kettler написал:
Да и не сам ты его писал))))

Конечно не сам, а это что то меняет, подправил, посмотрел как работает и все. Самое главное понимать что делаешь.

Войдите или зарегистрируйтесь, чтобы ответить.