ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: Alexandr Bezuglov <bezu@paco.net>
To: community@altlinux.ru
Subject: Re: [Comm] Internet Connection Sharing
Date: Thu, 10 Jul 2003 20:05:16 +0300
Message-ID: <200307102003.44077.bezu@paco.net> (raw)
In-Reply-To: <3F0BD667.9000302@feht.dgtu.donetsk.ua>

В сообщении от 9 Июль 2003 11:46 Aleksander N. Gorohovski написал(a):
> Доброго времени суток сообщество!
>
> Установил на машину Master2.2 и хотел настроить ее в качестве
> шлюза.
	То ж самое, но хотелось вдобавок всё настраивать вручную, без гуёвой 
автоматизации и так, чтобы весь процесс не надо было держать в голове. В 
результате недели чтения книжек родился скрипт, после прогона которого под 
root машины в сетке видят Инет. Заодно настраивается firewall. Для чего 
дополнитеьно поставлен(ы) iptasbles. На сетевых 
компутерах указываю DNS провайдера. Лишние задержки, конечно... Работаем над 
собственным кэширующим DNS. 
  Гнилыми помидорами просьба не закидывать :)), за дельные замечания буду 
признателен.

#!/bin/bash
#-- Загружаем модули отслеживания соединений
insmod ip_conntrack
#insmod ip_conntrack_ftp

#-- Включаем проверку маршрутизации
#-- Например, пакеты пришедшие с ppp0 и имеющие адрес внутренней сети,
#   отбрасываются
for f in /proc/sys/net/ipv4/conf/*/rp_filter;
 do echo 1 > $f; done;
# ----------- Всё вышеперечисленное можно загнать в /etc/sysconfig/network

#-- Очистка старых таблиц (на случай повторного запуска скрипта)
iptables -F
iptables -X no_conns_ppp0

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
#-- Запрет входящих соединений с ppp0
iptables -N no_conns_ppp0

#разрешаем входящие для уже существующих соединений с любого интерфейса
iptables -A no_conns_ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT

#разрешаем установление извне новых соединений для всех интерфейсов, кроме
#ppp0
iptables -A no_conns_ppp0 -m state --state NEW -i ! ppp0 -j ACCEPT

#фиксируем все пакеты с ppp0, не прошедшие предыдущие проверки... 
iptables -A no_conns_ppp0 -i ppp0 -m limit -j LOG --log-prefix /
 "NO_CONNS_PPP0: from ppp0:"

#... а также все пакеты не с ppp0, не прошедшие предыдущие проверки... 
iptables -A no_conns_ppp0 -i ! ppp0 -m limit -j LOG --log-prefix /
"NO_CONNS_PPP0: not ppp0:"

#... и сбрасываем их.
iptables -A no_conns_ppp0 -j DROP

iptables -A INPUT -j no_conns_ppp0
iptables -A FORWARD -j no_conns_ppp0
# ------------ После однократного прогона этой части скрипта можно включить
#iptables как сервис. Настройки сохраняются командой service iptables save

#-- Включение форвардинга в ядре
echo "1" > /proc/sys/net/ipv4/ip_forward
# ----------- Навсегда это запускается командой FORWARD_IPV4=true (or yes) в 
#/etc/sysconfig/network

всё.

С уважением
Александр.


  parent reply	other threads:[~2003-07-10 17:05 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-09  8:46 Aleksander N. Gorohovski
2003-07-10  4:59 ` Shawkat
2003-07-10  9:37 ` Andriy Dobrovol's'kii
2003-07-10 11:16   ` Re[2]: " Alexey Starinsky
2003-07-10 12:15     ` Andriy Dobrovol's'kii
2003-07-10 14:36       ` Re[]: " Alexey Starinsky
2003-07-10 14:53         ` Maxim Tyurin
2003-07-10 15:02         ` [Comm] " Michael Shigorin
2003-07-10 15:51           ` Alexey Starinsky
2003-07-11  9:27             ` Michael Shigorin
2003-07-11  9:54               ` Alexander Bokovoy
2003-07-11 13:37               ` Alexey Starinsky
2003-07-11 20:42                 ` Michael Shigorin
2003-07-10 11:39 ` Michael Shigorin
2003-07-10 17:05 ` Alexandr Bezuglov [this message]
2003-07-10 15:36   ` [Comm] " Alexandr Bezuglov
2003-07-11  5:05     ` Ilia Menchikh
2003-07-11  6:21       ` Владимир
2003-07-10 17:12 ` Alexandr R. Ogurtzoff
2003-07-11  7:08 ` Shawkat
2003-07-11  9:19 ` [Comm] " Michael Shigorin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200307102003.44077.bezu@paco.net \
    --to=bezu@paco.net \
    --cc=community@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git