[Comm] Re: [Comm] Настройка интерента в локальной сети
Aleksandr Blokhin
=?iso-8859-1?q?sass_=CE=C1_uustoll=2Eee?=
Пт Фев 14 23:35:13 MSK 2003
On Fri, 14 Feb 2003 22:53:16 +0300
Oparin Alexey <alex на oparin.ru> wrote:
OA> Вчера поставил первый раз в жизни Линукс - это был ALT Linux
OA> 2.2. У меня в компьютере 2 сетевые карточки. Одна смотрит в
OA> интернет, другая - Локальная сеть. Мне нужно настроить выход
OA> в интернет для локальной сети. Подскажите пожалуйта
OA> ПОДРОБНО, как можно это сделать??? Огромное спасибо за
OA> ответы!
$ chkconfig --level 345 ipchains on
$ service ipchains start
Затем выполняете следующий сценарий:
<-------------------------- CUT HERE ----------------------------->
#!/bin/sh
#
# firewall-masq This script sets up firewall rules for a machine
# acting as a masquerading gateway
#
# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
# be distributed under the terms of the GNU General Public License, version
# 2 or any later version.
#
# installing MASQUERADE modules
#
insmod ip_masq_user
insmod ip_masq_ftp
insmod ip_masq_irc
insmod ip_masq_icq
insmod ip_masq_raudio
insmod ip_masq_vdolive
insmod ip_masq_quake
insmod ip_masq_portfw
#
# Interface to Internet
EXTIF=ppp+
ANY=0.0.0.0/0
ipchains -P input ACCEPT
ipchains -P output ACCEPT
ipchains -P forward DENY
ipchains -F forward
ipchains -F input
ipchains -F output
# Deny TCP and UDP packets to privileged ports
ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p udp -j DENY
ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p tcp -j DENY
# Do masquerading
ipchains -A forward -j MASQ
echo 1 > /proc/sys/net/ipv4/ip_forward
<-------------------------- CUT HERE ----------------------------->
После того, как сценарий отработает, выполните команду
$ service ipchains save
Это был один вариант.
Вот второй.
$ chkconfig --level 345 iptables on
$ service iptables start
Затем выполняете следующий сценарий:
<-------------------------- CUT HERE ----------------------------->
#!/bin/sh
#
# firewall-masq-iptables This script sets up firewall rules for a machine
# acting as a masquerading gateway
#
# Этот скрипт устанавливает правила фильтации пакетов
# для машины выступающей в роли маршрутизатора
#
# Copyright (C) 2002 ALT Linux Team. This software may be distributed under the terms
# of the GNU General Public License, version 2 or any later version.
#
# installing MASQUERADE modules
#
insmod ip_tables
insmod ip_conntrack
insmod ip_conntrack_ftp
insmod iptable_nat
insmod ip_nat_ftp
insmod ipt_multiport
insmod ip_masq_ftp
#
# Interface to Internet
EXTIF=ppp+
ANY=0.0.0.0/0
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
# Syn-flood protection.
# Защита от Syn-flood.
iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
# Furtive port scanner.
# Защита от скрытого сканирования портов.
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Ping of death.
# Защита от Ping of death.
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# Deny NEW end INVALID incoming or required routings packets from ppp0.
# Запрещаем NEW и INVALID входящие или требующие маршрутизации пакеты с ppp0.
iptables -A INPUT -i $EXTIF -m state --state NEW,INVALID -j DROP
iptables -A FORWARD -i $EXTIF -m state --state NEW,INVALID -j DROP
# Allow a packets which is related to, and part of an existing connection.
# Разрешаем пакеты принадлежащие и относящиеся к уже установленному соединению.
iptables -N block
iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A block -m state --state NEW -i ! $EXTIF -j ACCEPT
iptables -A block -j DROP
iptables -A INPUT -j block
iptables -A FORWARD -j block
# Do masquerading.
# Маскарадим ppp0.
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
# Включаем маршрутизацию пакетов.
echo 1 > /proc/sys/net/ipv4/ip_forward
<-------------------------- CUT HERE ----------------------------->
После того, как сценарий отработает, выполните команду
$ service iptables save
После перезагрузки правила будут применены автоматически.
--
Best regards
AB
--
... In nomine Altli, et Ctrli, et Spititus Deli, Reset!
Подробная информация о списке рассылки community