LinuxForum.Fans
Тема

Решено: Iptables доступ из внешней сети во внутреннюю.

Автор: Sergulet 12 сообщений 2307 просмотров
#196142

Здравствуйте!
Помогите получить доступ из внешней сети (192.168.1.0/24) во внутреннюю (192.168.2.0/24). На шлюзе Altlinux ковчег 5.0 внешний eth0 (192.168.1.10) и внутр. eth1 (192.168.2.10). Во внутр. сети пока только один win-комп (192.168.2.1). С него доступ во внешнюю сеть настроил а к нему доступ не получается прописать. :(
Заранее спасибо!

#196147

А за 192.168.1.0/24 ещё маршрутизатор стоит)

#196151

К нему, это к винде? Выруби брандмауер ))) NAT вам в помощь.

На линуксе врубаем нат.
[console]echo "1" > /proc/sys/net/ipv4/ip_forward[/console]

Добавляем правила
[console]iptables -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE
iptables -A FORWARD -s 192.168.2.0/24 -o eth0 -j ACCEPT
iptables -A FORWARD -d 192.168.2.0/24 -i eth0 -j ACCEPT[/console]


А за 192.168.1.0/24 ещё маршрутизатор стоит)

Походу дела.

#196167

Машина 192.168.2.1 все равно не пингуется.
Nat был включен.
Свитч стоит после eth1.
Вот мой /etc/sysconfig/iptables с учетом изменений (дописал 2 и 3 строку снизу).

text

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT

*nat :PREROUTING ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE COMMIT

*mangle :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :MANGLE_OUTPUT - [0:0] :MANGLE_PREROUTING - [0:0] -A FORWARD -i eth1 -o eth0 -j LOG -A FORWARD -i eth1 -o eth0 -j ACCEPT -A FORWARD -s 192.168.2.0/24 -o eth0 -j ACCEPT -A FORWARD -d 192.168.2.0/24 -i eth0 -j ACCEPT COMMIT

#196188

Вы уверены, что строки в mangle необходимы? быть может их все-таки в filter перенести?

#196223
Hrafn написал:
Вы уверены, что строки в mangle необходимы? быть может их все-таки в filter перенести?

Дык их по любому надо в filter

Sergulet написал:
Вот мой /etc/sysconfig/iptables с учетом изменений (дописал 2 и 3 строку снизу).

Правила точно примерились?
С учетом вашего конфига надо сделать в консоле:

text
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -A INPUT-p udp -j REJECT -reject-with icmp-port-unreachable iptables -A INPUT -j REJECT -reject-with icmp-proto-unreachable

iptables -A FORWARD -i eth1 -o eth0 -j LOG

iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

iptables -A FORWARD -s 192.168.2.0/24 -o eth0 -j ACCEPT iptables -A FORWARD -d 192.168.2.0/24 -i eth0 -j ACCEPT

iptables -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE

Маскарадинг точно включен? Покажи
[console]cat /proc/sys/net/ipv4/ip_forward[/console]

#196232

Мля.. Вот тут ошибся
[console]iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j MASQUERADE[/console]
Нужно eth1, в не eth0

#196246

Маскарад точно включен, правила применяются, остальное завтра на работе посмотрю. Спасибо!

#196404
--=XliN=-- написал:
С учетом вашего конфига надо сделать в консоле:
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -A INPUT-p udp -j REJECT -reject-with icmp-port-unreachable
iptables -A INPUT -j REJECT -reject-with icmp-proto-unreachable

iptables -A FORWARD -i eth1 -o eth0 -j LOG

iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

iptables -A FORWARD -s 192.168.2.0/24 -o eth0 -j ACCEPT
iptables -A FORWARD -d 192.168.2.0/24 -i eth0 -j ACCEPT

iptables -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j MASQUERADE

Сделал так заругалось на 3,4 команды я честно не понял зачем они вообще.
[console][root@firewall log]# iptables -A INPUT-p udp -j REJECT -reject-with icmp-port-unreachable
Bad argument `udp'
Try `iptables -h' or 'iptables --help' for more information.
[root@firewall log]# iptables -A INPUT -j REJECT -reject-with icmp-port-unreachable
iptables v1.4.10: option `REJECT' requires an argument
Try `iptables -h' or 'iptables --help' for more information.
[/console]
Остальные правила применились но комп все равно не виден извне.

#196414

А кто пробел забыл между "INPUT" и "-p udp"?
И да выкинь или исправь (цели не указаны).

text
iptables -A INPUT-p udp -j REJECT -reject-with icmp-port-unreachable
iptables -A INPUT -j REJECT -reject-with icmp-proto-unreachable 
#196484
Sergulet написал:
Здравствуйте!
Помогите получить доступ из внешней сети (192.168.1.0/24) во внутреннюю (192.168.2.0/24). На шлюзе Altlinux ковчег 5.0 внешний eth0 (192.168.1.10) и внутр. eth1 (192.168.2.10). Во внутр. сети пока только один win-комп (192.168.2.1). С него доступ во внешнюю сеть настроил а к нему доступ не получается прописать. :(
Заранее спасибо!

FORWARD в обе стороны разрешить, включить forward, шлюз по умолчанию на рабочих станциях прописать соотвественно 192.168.1.10 и 192.168.2.10.
На altlinux tcpdump на предмет куда ходят пакеты.

#196652
CyberDaemon написал:
шлюз по умолчанию на рабочих станциях прописать соотвественно 192.168.1.10

Не прописал шлюз во внешней сети.
Теперь у меня iptables выглядит так и все работает.

text

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT

*nat :PREROUTING ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE COMMIT

*mangle :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :MANGLE_OUTPUT - [0:0] :MANGLE_PREROUTING - [0:0] -A FORWARD -i eth1 -o eth0 -j LOG -A FORWARD -i eth1 -o eth0 -j ACCEPT -A FORWARD -i eth0 -o eth1 -j LOG -A FORWARD -i eth0 -o eth1 -j ACCEPT COMMIT

Всем спасибо!

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