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

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« -: Nov 07, 2004, 12:29 »
Niakoi ste moze li da mi kaze kakvi sa modulite na 2.6.9 (moze i na 2.4.22), koito triabva da se vkliu4at za masquarding, kakto i kakvo to4no triabva da napisha na iptables za masquarding-a. Probval sum s:

# iptables -P FORWARD DENY
iptables: Bad policy name
# iptables -A FORWARD -i eth1 -j MASQ
iptables v1.2.8: Couldn't load target `MASQ':/usr/lib/iptables/libipt_MASQ.so: cannot open shared object file: No such file or directory

Try `iptables -h' or 'iptables --help' for more information.

Oba4e kakto vizdate dava greshki i v kraina smetka sum leko oburkan kude mi e greshkata, zastoto drugia komp ima dostup do moia ama niama net. Drugite raboti sum gi nastroil. Triabva samo da se opraviat iptables-a i eventualno iadroto ako ne sum vkliu4il ipmasquarding.

PS: sorry 4e pisha na latinica, no oste ne sum si opravil kirilicata na linux-a.
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

  • Гост
Masquarding
« Отговор #1 -: Nov 07, 2004, 12:32 »
ПИШИ НА КИРИЛИЦА
Активен

  • Гост
Masquarding
« Отговор #2 -: Nov 07, 2004, 13:00 »
http://d.linux-bg.org/index.php?folder=docs%2FHowTo/NetFilter2.4
Активен

Филип Бонев

  • Напреднали
  • *****
  • Публикации: 517
  • Distribution: Debian
  • Window Manager: KDE
    • Профил
Masquarding
« Отговор #3 -: Nov 07, 2004, 13:07 »
Мисля, че малко си объркал ipchains с iptables. Иначе горния линк е добре да го видиш.

ето един пример:
Цитат

iptables -A FORWARD -i $INT_IF -o $EXT_IF -j ACCEPT
iptables -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE
Активен

Поздрави,
Филип Бонев

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #4 -: Nov 09, 2004, 16:41 »
Takaa... Zna4i napravil sum go tova s iptables ama problema e, 4e tozi put kato se opitam da ping-na vunshnata mreza mi dava Destination host unreachable i ne znam kvo da pravia i kude e problema ve4e!!!! Uz vsi4ko e napraveno kato horata ama ne stava!!?! Da ne bi da triabva da imam realno IP v internet, a ne da sum prez ruter?!? Vupreki, 4e ne mi sa viarva tova da e problema!

iptables -A FORWARD -i $INT_IF -o $EXT_IF -j ACCEPT
iptables -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #5 -: Nov 09, 2004, 18:10 »
Dobre vizte sega... Tova mi e skripta za firewall i puskane na IP Masquerding-a. Vsi4ko ba4ka bez problemi: ne dava nikakvi greshki!!! Na eth1 mi e vutreshnata mreza (192.168.1.1) a na eth0 mi e internet-a... Na linux-a vsi4ko si ba4ka bez problemi, a susto i drugia komp se vurzva kum linux-a, NO ne moze da ping-ne vunsnata mreza, kamoli puk internet da ima... Kum neta se zaka4am prez gateway. Napravil sum nastroikite za mrezata na eth0 -> gateway, DNS, IP. Vsi4ko triabva da e nared ama ne e!!! Ve4e vtori den go mu4a i mi pisna!! PLsss kazete kude gresha i kvo triabva da napravia oste. Mezdu drugoto v script-a po dolu sum probval i da smenia EXTIF="eth0" i INTIF="eth1" oba4e efekta e sustia!! Kato ping-na vunsnata mreza i mi dava Destination Host Unreachable!!! Prosto niamam niakakvi idei kakvo stava i kude gresha!!

#!/bin/sh
# rc.firewall-2.4
FWVER=0.63
echo -e "\n\nLoading simple rc.firewall version $FWVER..\n"
IPTABLES=/usr/sbin/iptables
EXTIF="eth1"
INTIF="eth0"
echo "   External Interface:  $EXTIF"
echo "   Internal Interface:  $INTIF"
echo -en "   loading modules: "
echo "  - Verifying that all kernel modules are ok"
/sbin/depmod -a
echo -en "ip_tables, "
/sbin/insmod ip_tables
echo -en "ip_conntrack, "
/sbin/insmod ip_conntrack
echo -en "ip_conntrack_ftp, "
/sbin/insmod ip_conntrack_ftp
echo -en "ip_conntrack_irc, "
/sbin/insmod ip_conntrack_irc
echo -en "iptable_nat, "
/sbin/insmod iptable_nat
echo -en "ip_nat_ftp, "
/sbin/insmod ip_nat_ftp
echo ".  Done loading modules."
echo "   enabling forwarding.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "   enabling DynamicAddr.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
echo "   clearing any existing rules and setting default policy.."
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
echo "   FWD: Allow all connections OUT and only existing and related ones IN"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
$IPTABLES -A FORWARD -j LOG
echo "   Enabling SNAT (MASQUERADE) functionality on $EXTIF"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
echo -e "\nrc.firewall-2.4 v$FWVER done.\n"
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

Bogo

  • Напреднали
  • *****
  • Публикации: 636
  • Distribution: Debian
  • Window Manager: cmd
    • Профил
Masquarding
« Отговор #6 -: Nov 09, 2004, 18:24 »
предпоследния ред
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Активен

live free or die хард :)

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #7 -: Nov 09, 2004, 18:31 »
Niama!! NE stava!! Sega dava Request Timed out. Skoro ste sa grumna.....
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #8 -: Nov 10, 2004, 01:28 »
Horaa plsss. Mnogo sum na zor. Plss pomognete.... Niamam niakakva  ideia kude e problema!!
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

philip

  • Напреднали
  • *****
  • Публикации: 207
    • Профил
Masquarding
« Отговор #9 -: Nov 10, 2004, 01:39 »
Имам страхотна идея - що не си компилираш всички netfilter модули в ядрото и след това просто да използаш firestarter - то си взима каквото му трябва. ако ти трябва за desktop система ще е перфектно.

Примерен код
root@darkstar:/home/philip# firestarter

(firestarter:2778): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
NETFILTER detected
Firewall started
Hit filtered: Someone else's problem
Hit filtered: Someone else's problem
Активен

avatar3000

  • Напреднали
  • *****
  • Публикации: 72
    • Профил
Masquarding
« Отговор #10 -: Nov 10, 2004, 10:00 »
iptables скрипта ми изглежда ок. А сложил ли си маршрут по подразбиране в рутинг таблицата? Дай командата route и виж кво ти дава. Освен двата ти интерфейса трябва да имаш и този ред
default (ip-то на външния интерфейс) 0.0.0.0 (разни флагове - UG 0 0 0) eth0
Може да се наложи да направиш това и на задната машина.

Ооопс, пич сега видях какво си оплескал. Обърнал си интерфейсите. Уф, още спя май '<img'> Трябва да е.
EXTIF="eth0"
INTIF="eth1"
При Forward трябва да е така:
$IPTABLES -A FORWARD -i (външен) -o (вътрешен) -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i (вътрешен)  -o (външен) -j ACCEPT
При NAT трябва да е:
$IPTABLES -t nat -A POSTROUTING -o (външен) -j MASQUERADE
Успех!
Активен

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #11 -: Nov 10, 2004, 14:06 »
По принцип скрипта беше така:
EXTIF="eth0"
INTIF="eth1"
Обаче тъй като не вървеше пробвах да го сменя, но ефекта е същия. Това го бях написал между другото. Незнам иначе къде е проблема. Да не би да ми триябва реално IP? Съмнявам се де. Routing таблицата ми е наред. Оправил съм и ifconfig-a. Нямам никаква представа!?! Или ми дава като ping-на: Destination host unreachable или Request timed out.  Първото го даваше като iptables скрипта беше както трябва т.е.
EXTIF="eth0"
INTIF="eth1"
Вярно, че засичат мак адресите на лан картите, но това не трябва да шречи, защото masquerade-инга си препраща пакетите през eth0 и вътрешната мрежа на се показва!!! Между другото пробвах да го правя това с рутер: toshiba wrc-1000 и ефекта беше същия (многоо ще ме яд ако не мога да го направя под линукс, защото бях много против рутера...)
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

avatar3000

  • Напреднали
  • *****
  • Публикации: 72
    • Профил
Masquarding
« Отговор #12 -: Nov 10, 2004, 14:41 »
Пич, изпуснах нишката...
Сега малко критика от мен, която трябваше по-рано да я направя.
Когато имаш проблем дефинирай го точно и ясно, като опишеш конфигурацията си - какво искаш да направиш, какви са ти интерфейсите, какви настройки си направил...
Хората във форума не са медиуми, а и колкото по-ясно е описан един проблем толково по-лесно е да се разреши.
Сега отностно проблема...
Да кажем, че за всичко е виновен iptables скрипта ти. Ми вземи тогава и го опрости, така че да пуснеш всичко да минава. Нека всички политики да са ACCEPT и да няма други правила за разни интерфейси...
Ако и сега не стане значи проблема не е в iptables.
(Между другото може и логовете да погледнеш)
Тогава трябва да започнем от начало стъпка по стъпка и да изолираме причината. Друг начин няма.
Активен

Hel1Fire

  • Напреднали
  • *****
  • Публикации: 153
    • Профил
Masquarding
« Отговор #13 -: Nov 10, 2004, 15:08 »
Такаа... Ще започна отначало. Компа ми е Duron 1.6; 256 DDR; GeForce 440 MX 64 Mb DDR (tova nadali e vazno); 2 LAN karti - едната вградена. Искам да си направя една мрежа и сървър, който да ми цепи нета с masquerding. Педалите, който ми дават нета засичат mac адресите на лан картите, за да не може да се вързват други компове. На мен ми е засечен адреса на вградената карта. Задал съм 192.168.1.1 на eth1. Gateway; DNS; IP (да кажем x.x.x.x) са зададени на eth0 (това е външната мрежа). Вече дадох iptables script-a. Линукса си има интернет, а другия комп, който е вързан към eth1 има достъп до линукса (може да пингва 192.168.1.1, дори сваля от самба сървъра, който бях направил, а също така може да пингне и x.x.x.x (IP -то на линукса във външната мрежа)), но нищо друго. Като се пробвам да пингна gateway-а на доставчика не може. Дава destination host unreachable или нещо от сорта.
Активен

Животът не се мери с броя вдишвания, които правим, а с моментите, които спират дъха ни!!!!

Slackware 10.1, kernel 2.6.11.4, AMD Duron 1.6 Ghz, 256 DDR Ram; GeForce 440 MX 64 Mb 128 bit; 80 Gb Western Digital 7200; Sound: Via вграден.

Филип Бонев

  • Напреднали
  • *****
  • Публикации: 517
  • Distribution: Debian
  • Window Manager: KDE
    • Профил
Masquarding
« Отговор #14 -: Nov 10, 2004, 19:22 »
Здравей, има един много елементарен скрипт в IP-Masquarding-HOWTO, защо не го пробваш и да кажеш, дали работи.

Иначе, принципно:
1. Пускаш Нета на първия комп
2. echo 1 > /proc/sys/net/ipv4/ip_forward
2. Пускаш си masq
3. Слагаш на втория комп dns и gateway(gateway да ти е първия комп)
4. Нета тръгва, ако съм изпуснал някоя стъпка братя казвайте.

ПП: Иначе скрипта ти изглежда добре.
Активен

Поздрави,
Филип Бонев