Jaily a jedna IP

Miroslav Lachman 000.fbsd at quip.cz
Thu Jan 28 17:27:35 CET 2010


Miroslav Prýmek wrote:

[...]

> Vytvoril jsem si tap rozhrani, na ktere ty jaily vesim (veseni na lo se mi nejak nezda).

Nekdo to resi povesenim tech IP na lo0, ja jsem si na tohle vzdycky 
delal lo1. S tap jsem to nezkousel.

> rc.conf:
> cloned_interfaces="tap0"
> ifconfig_tap0="10.0.1.1 netmask 255.255.255.0"
> ifconfig_tap0_alias0="10.0.1.2 netmask 255.255.255.0"
> ifconfig_tap0_alias1="10.0.1.3 netmask 255.255.255.0"
> ifconfig_tap0_alias2="10.0.1.4 netmask 255.255.255.0"

Myslim, ze aliasy by mely mit masku 255.255.255.255, aspon to tak vzdy 
byvalo popsane v dokumentaci a myslim, ze driv ifconfig i vyhazoval 
chybu, kdyz se clovek pokusi pridat dalsi alias ze stejne site se 
stejnou maskou.

> Firewall (PF) jsem zatim pro testovani nastavil takhle (PF pouzivam poprve,
> takze kazdou pripominku rad privitam):
>
> ext_if="fxp0"
> jail_if="tap0"
>
> smtp_master="10.0.1.2"
> www_master="10.0.1.3"
>
> rdr on $ext_if proto tcp to port http ->  $www_master
> rdr on $ext_if proto tcp to port https ->  $www_master
> rdr on $ext_if proto tcp to port smtp ->  $smtp_master
>
> tcp_services_main = "{ssh}"
> tcp_services_jails = "{ssh, smtp, www}"
>
> block log all
> pass in on $ext_if proto tcp to ($ext_if) port $tcp_services_main
> pass in on $ext_if proto tcp to ($jail_if) port $tcp_services_jails
> pass out log on $ext_if all
>
> Cekal bych, ze spojeni z jailu do Internetu bude blokovany, protoze jde pres tap0, ale neni tomu tak.
>
> Kdyz v jailu spustim
> [www-master:~]# telnet 74.125.87.99 80
> tak se normalne pripoji a v logu je:
> 001069 rule 12/0(match): pass out on fxp0:<IPcko fxp0>.61663>  74.125.87.99.80:  tcp 36 [bad hdr length 4 - too short,<  20]
>
> Rozhrani videno z jailu:
> [www-master:~]# ifconfig
> fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>  metric 0 mtu 1500
> 	options=2009<RXCSUM,VLAN_MTU,WOL_MAGIC>                                 <-------- IP tady neni, jak pres nej muze jit paket?
> 	ether XXXXXXXXXXX
> 	media: Ethernet autoselect (100baseTX<full-duplex>)
> 	status: active
> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST>  metric 0 mtu 16384
> tap0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>  metric 0 mtu 1500
> 	ether 00:bd:f2:39:00:00
> 	inet 10.0.1.2 netmask 0xffffff00 broadcast 10.0.1.255
> pflog0: flags=141<UP,RUNNING,PROMISC>  metric 0 mtu 33204
>
> Jak si to mam vylozit? PF ignoruje tap rozhrani a nefiltruje tam? Cekal bych, ze paket pujde pres tap0 do fxp0 a pak teprve ven.
>
> Jde teda nejak udelat filtrovani mezi jaily a popr. filtrovani toho, co muze jit ven z jailu?

Musel bych se nad tim trochu vic zamyslet a na to ted bohuzel nemam cas 
a moralku, ale u me to takhle urcite nikdy nefungovalo. Abych se z 
takoveho jailu mohl dostat ven, musel jsem jeste pridavat NAT, ale mozna 
to bylo zase ve spojitosti s dalsimi pravidly, kde defaultne na ext_if 
blokuji tyhle lokalni site. Takhle z hlavy to vazne nevyplyvnu. A jeste 
jsem tam kvuli tomu vlastne musel mit povoleny forwarding (bud pres 
sysctl.conf, nebo z rc.conf volbou gateway_enable - snad se moc nepletu, 
sekam to z hlavy)

Mirek


More information about the Users-l mailing list