Van egy Sun gép, nge0 LAN-al. OS: Solaris 10. Szeretném az ipfiltert engedélyezni de sehogy sem akar sikerülni.
#svcadm enable network/pfil
#svcs network/pfil
STATE STIME FMRI
online 22:17:02 svc:/network/pfil:default
#svcadm enable ipfilter
#svcs network/ipfilter
STATE STIME FMRI
maintenance 22:02:17 svc:/network/ipfilter:default
#cat /var/svc/log/network-ipfilter\:default.log
[ febr. 21 16:57:16 Disabled. ]
[ febr. 21 16:57:16 Rereading configuration. ]
[ febr. 21 20:36:41 Enabled. ]
[ febr. 21 20:36:41 Executing start method ("/lib/svc/method/ipfilter start") ]
flags with non-TCP rule error at "flags", line 62
/lib/svc/method/ipfilter: load of /etc/ipf/ipf.conf into alternate set failed
Not switching config due to load error.
Nincs is /etc/ipf/pfil.ap fáljom, ebből arra következtetek, hogy a pfil nem is működik. Ez ellent mond a logoknak, és az svcs outputjának is. Mégis hova lett a pfil.ap? A helyén nincs: /etc/ipf/pfil.ap!
#cat /var/svc/log/network-pfil\:default.log
[ febr. 21 16:57:28 Enabled. ]
[ febr. 21 16:57:28 Rereading configuration. ]
[ febr. 21 16:57:29 Executing start method ("/lib/svc/method/pfil start") ]
[ febr. 21 16:57:29 Method "start" exited with status 0 ]
[ febr. 21 22:11:13 Stopping because service restarting. ]
[ febr. 21 22:11:13 Executing stop method (null) ]
[ febr. 21 22:11:13 Executing start method ("/lib/svc/method/pfil start") ]
[ febr. 21 22:11:13 Method "start" exited with status 0 ]
[ febr. 21 22:17:02 Stopping because service restarting. ]
[ febr. 21 22:17:02 Executing stop method (null) ]
[ febr. 21 22:17:02 Executing start method ("/lib/svc/method/pfil start") ]
[ febr. 21 22:17:02 Method "start" exited with status 0 ]
Mit csináltam rosszul?
- 1879 megtekintés
Hozzászólások
Ha ez egy régebben működő gép, és eltűnt a pfil.ap fájl, az lehetett egy korábbi hibás kernel patch miatt (könnyen orvosolható).
Update 4 (8/07) óta viszont nem kell pfil, nem ilyened van?
flags with non-TCP rule error at "flags", line 62
/lib/svc/method/ipfilter: load of /etc/ipf/ipf.conf into alternate set failed
Not switching config due to load error.
ez pl. egyáltalán nem pfil hibára utal, hanem valami syntax error-ra a konfigban
- A hozzászóláshoz be kell jelentkezni
és a pfil amit futni látsz, nem csinál semmit, az indítóscriptben "exit 0" van
- A hozzászóláshoz be kell jelentkezni
Ez egy most telepített Solaris 10 8/07 ami még annyira friss, hogy ma szedtem le a sun.com-ról.
Közben megoldódott a probléma, nem értem pontosan mi is volt a baj, de kb. egy unplumb/plumb megoldotta. Valóban nincs pfil.ap már ebben a verzióban.
"és a pfil amit futni látsz, nem csinál semmit, az indítóscriptben "exit 0" van"
Viszont ha pfil -t leállítom
#svcadm disable network/pfil
akkor az ipfilter IOCTL hibákat dobál vissza amikor feltölteném a szabályokat. És nem is tölt fel semmit. Úgy tűnik 8/07 -nél kell hozzá a network/pfil is. Valójában mi is a pfil?
- A hozzászóláshoz be kell jelentkezni
egy streams modul, amivel csomagokat lehet szűrni. nem solaris specifikus, máshol is van/volt ilyesmi.
azóta megcsinálták az ipfilter supportot hivatkozásokkal a hálózati kódban (ahogy pl. freebsd-n is van). azóta az ipf minden interfészre vonatkozik, eddig egy block in all pl. csak arra vonatkozott amire ráengedted a pfil modult, ez okozhat meglepetéseket.
szerintem a network/ipfilter továbbra is hivatkozik a pfil-re mint erős függőség (max. a pfil nem csinál semmit), ezért ha leállítod akkor leáll az is, és ezért van ioctl hiba, nem?
- A hozzászóláshoz be kell jelentkezni
Valószínűleg igen. Szerencsére régen installáltam már Sol 10-et (6 hónapja), és ami rendszer megy ahoz nincs kedvem hozzápiszkálni.
Kicsit meglepő volt ez a változtatás, de túlélhető ha az ember nem keresi mérgezett egérként a megszokott pfil.ap -t az érdekes nevű csatolónevekkel. Lehet hogy a többi gépünket is upgradelni kéne :)
- A hozzászóláshoz be kell jelentkezni
upgrade az nem árt.
118855-18 kernel patch volt, ami elqrta a pfil.ap-t.
120014-XX (talán 02?) volt, ahol eltűnt a pfil.
- A hozzászóláshoz be kell jelentkezni
Ismét fel kell hozzam a témát, mert megint van valami hiba a ipfilterben:
# Active FTP :
# command : client >1024 -> server 21
# data : client >1024 <- server 20
# Passive FTP :
# command : client >1024 -> server 21
# data : client >1024 -> server >1024
#
pass in quick proto tcp from {client} port > 1023 to {server} port = 21 flags S keep state
# Passive FTP
pass in quick proto tcp from {client} port > 1023 to {server} port 15000><15501 flags S keep state
# Active FTP
pass in quick proto tcp from {client} port 20 to {server} port 15000><15501 flags S keep state
Passzív FTP esetén minden ok, de aktív FTP esetén adatletöltésnél elkezdi blokkolni a 21-es portot a ipfilter.
Egy fórumon ezt az üzenetet kaptam már:
We handle this with ipnat -- it knows how to watch for active ftp connections. In your ipnat.conf file, you'll need to put something like:
map eri0 0/0 -> 0/32 proxy port 21 ftp/tcp
Substitute your own interface if different from eri0 -- hme0, etc. This works even if you're not really doing nat, and has the advantage of not opening up your port 21 to everybody. Make sure that your ipfilter patches are current -- this was broken for a while in Solaris 10.
--
Jeff Wieland
Van valakinek ötlete, hogy miért kéne natolni?
- A hozzászóláshoz be kell jelentkezni
pass in quick proto tcp from {client} to {server}/32 port = 21 flags S keep state
pass out proto tcp all keep state
Az ipnat proxy-t elméletileg aktív ftp kliensen kell beállítani. Ugye aktív esetben a szerver kapcsolódik vissza a kliens egy portjára, ami tűzfal esetén alapból probléma. (Ipfilternek is van ugye ftp-re külön modulja). Valami ilyesmire ad megoldást a nat proxy, ami valami belső proxija az ipf-nek.
A dokumentációban van róla pár szó.
- A hozzászóláshoz be kell jelentkezni