[linux-guvenlik] Re: ip adresim gorunmesin !

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Serkan ATEŞ (serkanates@armafiltre.com.tr)
Date: Fri 24 Sep 2004 - 08:51:13 EEST


Aşağıdaki mail Network listesine atılmıştı...umarım
işinize yarar...Kolay
gelsin...

---------------------------------------------------------------------
Selamlar..

> Evet uzun bir google turunun ardından mail yazmaya karar verdim.
> Arkadaşlar iptables la geçinemiyoruz. Ya ben onu anlamadım yada
o beni
> anlamamakta ısrar ediyor..
>

Oyledir, bilirim..

> iki Ethernet kartı takılı redhattan adsl modeme ulaşmak
istiyorum
>
> modem ip 192.168.0.1
>
>
>
> modeme gidecek ethernet
>
> eth1 192.168.0.2
>
> mask 255.255.255.0
>
> gw 192.168.0.1
>

Demekki sizin internet cikisiniz eth1.

>
> eth0 10.0.0.1
>
> mask 255.255.255.0
> iptables -F
Gecelim..

> iptables -F INPUT
> iptables -F OUTPUT
> iptables -F FORWARD
> iptables -F -t mangle
> iptables -X
> iptables -F -t nat

Bunlari da gecelim..

> iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 192.168.0.2

Burada diyorsunuz ki, eth0'dan cikip giden paketlerin geldigi adresi
192.168.0.2 olarak degistir. IPTABLES bunu guzelce yapar.

Sonra ne olur ? Disardan gelen her paket (Yani internetten gelen her
paket) 192.168.0.2 adresinden geliyormus gibi gorunur. Hickimsede bu
adresten gelen bir paket beklemedigine gore, bu paketler hic bir ise
yaramaz.

> iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
>

Burada da, 10.0.0.0/24'ten gelen, eth0'dan cikan (yerel aga giden)
paketlerin kaynak adreslerini ciktigi interface'in adresi ile degistir
diyorsunuz. Bu da ayni yukaridaki gibi bir anlam tasiyor.

> şimdi şu nat ve yönlendirme olayı niye çalışmıyor?
> Linuxda yeni olmamın etkisi büyük tabi ama mantıkta (ki kafam
çorba
> gibi oldu) çalışması gerekiyor ama bir türlü 192.168.0.1'i

> pingleyemedim...Lütfen yardım....
>

Simdi, oncelikle, su nat mevzusu neden yapiliyor bunu bir anlayalim.
SNAT ve MASQUERADE olayinda, yerel agdan gelen paketlerin geldigi yeri
gosteren kaynak adresleri degistirilerek aliciya yollaniyor. Buradaki
gayemiz, alicinin bizi bulabilmesi, yani, onun yolladigi paketleri bize
geri
dondurebilmesi. Cunku, 10.*, 192.168.* gibi adresler private
adreslerdir,
internet uzerinde yer alamazlar. Sizin ozelinizde, siz 10.* adresinden
gelen
paketleri ADSL router'a yonlendirmek istiyorsunuz. O router 10.*
adreslerine
erismek icin paketleri size (Linux box) yollayacagini bilmiyor. Bu
yuzden,
ADSL'e yollamadan once, paketlerin kaynak adreslerini alip kendi
ethernetinizin adresi ile degistiriyorsunuz. Bu durumda, ADSL modem
gelen
cevaplari alip her halukarda size yollayacak, sizde "haaaa bu paketi
10.x.x.x istemisti"
diyerek paketlerin hedef adreslerini duzeltip makineye vereceksiniz.

Demekki bizim masquerading veya snat isin yaparken, geri donus yolunu
bilmeyen alete (burada ADSL) yolladigimiz paketlere uygulama yapmamiz
lazim.
Bu alette ADSL ve ona bagli olan interface eth1. Simdi soyle
diyebiliriz:

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Bu, eth1'den cikan paketler (ki bunlar ADSL modeme gidecek, baska yolu
yok,
yoksa varmi ? Az Sonra !) icin geri donus adresi ciktigi arabirimin
adresi
olsun demek.

Soyle bir senaryo dusunelim, ADSL modemin oldugu yerde, 3-5 tane makine
de
olsun. Bu durumda ne olur ? Bir sey olmaz kuralimiz gene calisir. Ama
gereksiz yuk olusturur. Biz sunu diyebiliriz:

iptables -t nat -A POSTROUTING -o eth1 -d ! 192.168.0.0/24 -j MASQUERADE

Bu, eth1'den cikip, eth1'in bagli oldugu networka degilde baska
taraflara
giden paketleri (istikamet: internet) MASQ. et demek olur.

size ustteki ilk kural yeterli olur. Fakat, ADSL modemin routing
tablosuna,
10.* icin paketleri 192.168.0.2'ye yolla demeniz de yeterli olur, cunku
ADSL
modem, 192.168.0.2'den gelenler icin kendi zaten bir NAT islevi
uyguluyor.

Diger yandan Linux IP Stack, varsayilan durumda kendine gelen ama hedefi
baska bir makine olan paketleri, asil hedeflerine yollamaz. Cope atar,
gozunun yasina bakmadan. Bu yuzden, Linux'a "ROUTER" olarak calismasini
soylemelisiniz. Bunun teknik karsiligi, "IP FORWARDING" seklindedir.
Gerceklemek icin

echo 1 >/proc/sys/net/ipv4/ip_forward

gibi bir komut kullanmalisiniz..

Saygi ve sevgiler..

-----Original Message-----
From: linux-guvenlik-bounce@liste.linux.org.tr
[mailto:linux-guvenlik-bounce@liste.linux.org.tr] On Behalf Of sinan
ozgursahin
Sent: Thursday, September 23, 2004 7:10 PM
To: linux-guvenlik@liste.linux.org.tr
Subject: [linux-guvenlik] ip adresim gorunmesin !

Arkadaslar merhaba,

makinamın real ip'sinin disaridan bakildiginde gizli olmasi
veya 10.0.0.5 tarzi c class gorunmesi için
iptables ile yazilmis firewall script'ime asagidaki satiri ekledim.

iptables -t nat -A POSTROUTING -s 10.0.0.1/24 -j SNAT --to-source
10.0.0.5

fakat bir faydasi olmadi. http://scan.sygate.com
adresinden test ettiğimde hala gercek ip adresim gorunuyor.

alternatif ve onerisi olacak arkadaslara simdiden tesekkurler.

Sinan

_________________________________________________________________
Protect your PC - get McAfee.com VirusScan Online
http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.