Титла: Masquarding Публикувано от: Hel1Fire в 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. Титла: Masquarding Публикувано от: в Nov 07, 2004, 12:32 ПИШИ НА КИРИЛИЦА
Титла: Masquarding Публикувано от: в Nov 07, 2004, 13:00 Титла: Masquarding Публикувано от: Филип Бонев в Nov 07, 2004, 13:07 Мисля, че малко си объркал ipchains с iptables. Иначе горния линк е добре да го видиш.
ето един пример:
Титла: Masquarding Публикувано от: Hel1Fire в 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 Титла: Masquarding Публикувано от: Hel1Fire в 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" Титла: Masquarding Публикувано от: Bogo в Nov 09, 2004, 18:24 предпоследния ред
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE Титла: Masquarding Публикувано от: Hel1Fire в Nov 09, 2004, 18:31 Niama!! NE stava!! Sega dava Request Timed out. Skoro ste sa grumna.....
Титла: Masquarding Публикувано от: Hel1Fire в Nov 10, 2004, 01:28 Horaa plsss. Mnogo sum na zor. Plss pomognete.... Niamam niakakva ideia kude e problema!!
Титла: Masquarding Публикувано от: philip в Nov 10, 2004, 01:39 Имам страхотна идея - що не си компилираш всички netfilter модули в ядрото и след това просто да използаш firestarter - то си взима каквото му трябва. ако ти трябва за desktop система ще е перфектно.
Титла: Masquarding Публикувано от: avatar3000 в Nov 10, 2004, 10:00 iptables скрипта ми изглежда ок. А сложил ли си маршрут по подразбиране в рутинг таблицата? Дай командата route и виж кво ти дава. Освен двата ти интерфейса трябва да имаш и този ред
default (ip-то на външния интерфейс) 0.0.0.0 (разни флагове - UG 0 0 0) eth0 Може да се наложи да направиш това и на задната машина. Ооопс, пич сега видях какво си оплескал. Обърнал си интерфейсите. Уф, още спя май ![]() 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 Успех! Титла: Masquarding Публикувано от: Hel1Fire в 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 и ефекта беше същия (многоо ще ме яд ако не мога да го направя под линукс, защото бях много против рутера...) Титла: Masquarding Публикувано от: avatar3000 в Nov 10, 2004, 14:41 Пич, изпуснах нишката...
Сега малко критика от мен, която трябваше по-рано да я направя. Когато имаш проблем дефинирай го точно и ясно, като опишеш конфигурацията си - какво искаш да направиш, какви са ти интерфейсите, какви настройки си направил... Хората във форума не са медиуми, а и колкото по-ясно е описан един проблем толково по-лесно е да се разреши. Сега отностно проблема... Да кажем, че за всичко е виновен iptables скрипта ти. Ми вземи тогава и го опрости, така че да пуснеш всичко да минава. Нека всички политики да са ACCEPT и да няма други правила за разни интерфейси... Ако и сега не стане значи проблема не е в iptables. (Между другото може и логовете да погледнеш) Тогава трябва да започнем от начало стъпка по стъпка и да изолираме причината. Друг начин няма. Титла: Masquarding Публикувано от: Hel1Fire в 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 или нещо от сорта.
Титла: Masquarding Публикувано от: Филип Бонев в 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. Нета тръгва, ако съм изпуснал някоя стъпка братя казвайте. ПП: Иначе скрипта ти изглежда добре. Титла: Masquarding Публикувано от: dope_hat в Nov 10, 2004, 19:27 echo -n "Masquerading... "
/usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE echo -n "OK"; echo; дефакто ти трябва реда само /usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE #Ако примерно локалната ти мрежа е 192.168.0.Х, а в твоя случай е : /usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE Успех, Титла: Masquarding Публикувано от: Hel1Fire в Nov 14, 2004, 19:42 Е разбрах къде е шибания проблем. Сега сте се пробвам да го оправям. Четох тука някаква тема във форума по проблема, че трябва да се слага пач за iptables и само да вляза под Линукс и ще се захващам.
Ето го и проблема: тъпия провайдър ми слага TTL=0. Ако пак има нещо ще се обадя. ![]() Титла: Masquarding Публикувано от: Hel1Fire в Nov 16, 2004, 12:43 Такаа. Оправих го и всичко върви като хората (или поне така изглежда
![]() ![]() Титла: Masquarding Публикувано от: Филип Бонев в Nov 16, 2004, 13:32 Само да вметна че в iptables-1.2.11 от патч няма нужда, само насочваш към -J TTL -ttl-set 64 примерно и си готов. За линукс е 64, за уиндоус 128
|