Автор Тема: LinuxRouter  (Прочетена 4833 пъти)

Archer

  • Напреднали
  • *****
  • Публикации: 56
    • Профил
LinuxRouter
« -: Mar 10, 2005, 15:15 »
Здравейте, имам въпрос относно iptables. В една статия прочетох принципа на работа с iptables, но никъде не срещнах името на файла, в който се задават правилата.
Извинявам се ако въпроса ми е глупав или ако причината е в мен(можеби не съм чел достатъчно), но бих искал ако може да ми кажете името на файла. Ако има някой хубав сайт по въпроса(Линукс рутиране) ще се радвам ако ми го кажете.
Ползвам Slackware v10 Kernel2.4.28
Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
LinuxRouter
« Отговор #1 -: Mar 10, 2005, 15:17 »
Файл?!?
Няма такова нещо - всичко е команди.

Пример:

/usr/sbin/iptables -P INPUT ACCEPT

http://lartc.org/
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

Archer

  • Напреднали
  • *****
  • Публикации: 56
    • Профил
LinuxRouter
« Отговор #2 -: Mar 10, 2005, 16:16 »
Цитат
Няма такова нещо - всичко е команди.
Пример:
/usr/sbin/iptables -P INPUT ACCEPT

Съгласен съм, но как мога да видя какви правила съм задал на различните интерфейси?
Активен

toxigen

  • Напреднали
  • *****
  • Публикации: 243
    • Профил
LinuxRouter
« Отговор #3 -: Mar 10, 2005, 16:37 »
Правилата можеш да видиш най-лесно (според мен) така:

iptables -L -nvx       (-nvx дава по-ясен израз за нещата '<img'>)

а за nat примерно:

iptables -L -t nat -nvx

iptables -F трие всичко (идва от flush)

Виж man iptables за по-точно обяснение на опциите.
Активен

astronom

  • Напреднали
  • *****
  • Публикации: 254
    • Профил
LinuxRouter
« Отговор #4 -: Mar 10, 2005, 17:15 »
Можеш да запазиш правилата във файл и след това да ги зареждаш от него . Провери man страницата на iptables за подробности.
Активен

Г. Д. Сотиров

buboleck

  • Напреднали
  • *****
  • Публикации: 388
  • Distribution: Gentoo
  • Window Manager: Kde 4.x
  • ?
    • Профил
LinuxRouter
« Отговор #5 -: Mar 10, 2005, 17:21 »
Slack-a си има фаил за тези неща в /etc/rc.d/rc.modules ако не се лъжа. Там се указват модулите които да се зареждат и съответно командите към iptables.  Има си и опътване кое за какво е  '<img'>
Активен

Powered by Gentoo, AMD Athlon64 X2 5050e (Intel Pentium D 840 sucks) and 400W Fortron PSU
http://www.russian-motorcycles.com

Archer

  • Напреднали
  • *****
  • Публикации: 56
    • Профил
LinuxRouter
« Отговор #6 -: Mar 10, 2005, 18:23 »
Благодаря на всички, който ми отговориха. Информацията е ценна.
Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
LinuxRouter
« Отговор #7 -: Mar 10, 2005, 23:17 »
Цитат (astronom @ Март 10 2005,17:15)
Можеш да запазиш правилата във файл и след това да ги зареждаш от него . Провери man страницата на iptables за подробности.

По точно виж "See also" секцията
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
LinuxRouter
« Отговор #8 -: Mar 10, 2005, 23:21 »
Цитат (toxigen @ Март 10 2005,16:37)
iptables -F трие всичко (идва от flush)

Това ми е било винаги чудно - даже и в "професионалните" скриптове за защитни стени давани в Интернет, се опитват така да изчистят ВСИЧКИ правила. Само, че за да почне скрипта от нулата, трябва:

Примерен код

iptables -X
iptables -t nat -X
iptables -t mangle -X

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


Всъщност "iptables -F" е равносилно на "iptables -t filter -F"
(таблицата filter е по подразбиране)

Надявам се да съм бил полезен - поне на мен ми беше '<img'>
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

toxigen

  • Напреднали
  • *****
  • Публикации: 243
    • Профил
LinuxRouter
« Отговор #9 -: Mar 11, 2005, 10:32 »
Реших да си го спестя понеже човека е начинаещ пък и в man-а пише всичко.

Все пак благодаря за корекцията VladSun.
Активен

  • Гост
LinuxRouter
« Отговор #10 -: Mar 11, 2005, 12:28 »
Цитат (VladSun @ Март 11 2005,00:21)
Това ми е било винаги чудно - даже и в "професионалните" скриптове за защитни стени давани в Интернет, се опитват така да изчистят ВСИЧКИ правила. Само, че за да почне скрипта от нулата, трябва:

Примерен код

iptables -X
iptables -t nat -X
iptables -t mangle -X

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


Надявам се да съм бил полезен - поне на мен ми беше '<img'>

Което всъщност НЕ Е вярно:
--- cut man iptables ---
-X, --delete-chain [chain]
Delete the optional user-defined chain specified.  There must  be  no  refer-
ences  to  the chain.  If there are, you must delete or replace the referring
rules before the chain can be deleted.  If no  argument  is  given,  it  will
attempt to delete every non-builtin chain in the table.
--- END cut ---
Превод на български: за да се изтрие user-defined chain трябва да се изтрият всички сочещи към нея правила [от buil-in chains] а това става с iptables -D [chain] [rulenum] или iptables -F [chain] т.е. пак стигаме до:
Примерен код

iptables [table] -F [chain]
iptables [table] -X [chain]

За невярващите ето пуснете си този прост скрипт и експериментирайте:
Примерен код

#!/bin/bash

iptables -N test1
iptables -A INPUT -i eth0 -j test1
iptables -A test1 -s 127.0.0.1 -j DROP
iptables-save

# Here comes the test
iptables -X
iptables -F

iptables-save



Айде със здраве
Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
LinuxRouter
« Отговор #11 -: Mar 11, 2005, 14:03 »
Така де, обърнал съм реда '<img'> Акцентът ми беше върху изпълнението на тези команди върху ВСИЧКИ таблици.

Благодаря за корекцията '<img'>
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

Archer

  • Напреднали
  • *****
  • Публикации: 56
    • Профил
LinuxRouter
« Отговор #12 -: Mar 13, 2005, 15:04 »
Искам да Ви задам още един въпрос  относно рутирането. При мен свързването е "КЛАСИЧЕСКО" тоест имам Интернет доставчик, който ми осигурява статично реално IP(83.228.x.x). Сложил съм си допълнителна LAN карта за към вътрешната мрежа(192.168.1.2 на моето PC)-->(192.168.1.3 на PC-то на което желая да пусна и-нет с DefaultGateway:192.168.1.2). Въпроса: На кой от двата IP адреса(83.228.x.x или на 192.168.1.2) трябва да задавам правилата за да пусна интернет? Ако може малко да ме насочите(можеби с пример), ще ви бъда благодарен.
Активен

  • Гост
LinuxRouter
« Отговор #13 -: Mar 13, 2005, 16:59 »
iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE
Това е горе принципа и се задава вътрешната лан карта '<img'>
Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
LinuxRouter
« Отговор #14 -: Mar 14, 2005, 01:27 »
Както и трябва да си сигурен,че FORWARD веригата ти приема пакети от/за твоята ЛАН мрежа (или определени ИП-та от нея).
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P