Mivel pár hónapja én is elkezdtem bohóckodni opnsense-el (nem szégyellem bevallani h. nem értek hozzá annyira, mint amennyire szeretnék), leírom én mit tapasztaltam:
Az opnsense vette a freebsd-t alaprendszernek. Ezt lecserélték egy 2-emberes hardenedbsd nevű forkolt hobbiprojectre. Ezzel azt nyerték, h. elvileg(!) sokkal secure-abb lett az OS, mint a kiindulási freebsd. Cserébe nincs mögötte szinte semekkora developer tömeg, és semekkora user bázis összehasonlítva a freebsd mögötti tömegekkel (ami még mindig sehol nincs a linux-hoz képest). Azaz ha pl. teljesítményproblémáid vannak, ami kernel v. driver kód miatt van, freebsd fórumok helyből kilőve: nem fognak tudni neked segíteni mert nem generic freebsd kernelt használsz, hanem valójában széjjelpeccselt hardenedbsd kernelt. Azaz kb. évekig is eltarthat mire javítják / backportolják az eredeti freebsd-ből hardenedbsd-be a fixet. Ha egyáltalán..
Az opnsense gyakorlatilag húzott egy konfig backendet+GUI frontendet a bsd fölé. Innentől 2 választása van az embernek:
1) vagy használja csak a GUI-t csak azokra a funkciókra, amikről a fejlesztők úgy gondoltak a usereiknek csak ennyire lesz szükségük.
2) Vagy, ha ezen kívül még más is kellene, akkor meg mehet CLI-be, és konfigolja kézzel.
Itt viszont átlag userként meg vagy lőve, mert developer/backend manualokat kellene átnyálazni: mi hogyan van megvalósítva a háttérben, hogy a te kézzel matatásod ne fektesse meg a rendszer konfig többi részét. Azaz freebsd doksikat olvasni megint zsákútca, mert a konfig fájlok helyett itt konfigd van, nem pont azokat és pont azokon a helyeken levő konfigfájlokat használja, amik a freebsd példákban szerepelnek. Na ez a része kínkeservesen lelassítja az embert, és a végén muszájból te is developerré kell előlépj ha piszkálni akarod. Fájdalmasan hosszú tanulási folyamat, és nem biztos h. megéri a belefeccolt munka.
Az opnsense-el dolgozni tipikus FOSS feeling: kaotikus, észnélkül lapátolják bele a fícsöröket. Dokumentálva semmi nincs! Tényleg semmi! Az installt letudják egy 2-3 oldalas szűkszavú next-next finish-el. Vadászhatod fórumból, github kommentekből h. mi újság. A howto-k nagy részét inkább pfsense-ből érdemes hozzánézni, ott értelmes(ebb)en le van írva minden, szépen hierarchikusan csoportosítva. Opnsense howto-k meg a "csak legyen vmi h. befogja a száját a user" szinten vannak sebtiben összehányva, kategórizálatlanul. Mivel náluk nincs leírva szinte semmi, túrhatod a freebsd alap manualjait. Remélve h. nem valami hardenedsd hülyeségbe futottál bele. Hardenedbsd manualja meg dettó ugyanaz, mint az opnsense doksijai. Vették a freebsd manual-t, és hozzáírtak 1-2 új fejezetet. De érzésre azok is félkész, elavultak. Valószínű emberhiány miatt az sem lesz használhatóbb állapotban sosem. Ha megakadtál, megpróbálhatod a pfsense doksijait, remélve a keresett rész nem különbözik a 2 rendszer között (túlságosan).
Ha nagyon megakadsz, és nem segít a fórum meg a community, még mindig vehetsz fizetős supportot az opnsense anyacégétől a Deciso-tól. Akik természetesen saját opnsense appliance-et is árulnak. Pfsense-nél pontosan ugyanez a helyzet, csak ott a Netgate nevű céggel.
Vagy ott van pl. a tűzfal rész, ami tisztán bsd-s "pf", az opnsense "csak" egy GUI-t tesz elé. A pf-ről magáról kb. semmit nem ír az opnsense, ergo a kedvenc tűzfal disztribed leglényegesebb részéhez hozzá tudj szagolni, kutathatsz külsős pf könyvek után.
Vagy be akarod állítani a pppoe-t: CLI-ből installkor nem kapsz rá lehetőséget, muszáj vagy GUI-ból csinálni. Eleve az opnsense CLI-s interfész beállítása magasan a legérthetetlenebb nyelvezetű az összes eddig látott *nix tűzfalhoz képest.
Vagy akarsz állítani bridge interfészt 2 NIC-re CLI-ből. Na ezt se tudod, csak GUI-ból. Ami akkor ciki, ha nincs konzol access-ed v. olyan NIC elérhető, amit nem érint a bridge konfigurálás. Hát nem triviális, az biztos.
Vagy névfeloldást akarsz beállítani. Van a rendszerben by default unbound, de van emellett még dnsmasq, és pluginként ott van a jó régi bind is. Na akkor most ki kivel van mikor és miért? Ki oldja fel a neveket a klienseknek, és ki a tűzfal doboznak magának? Szerintem nem átlátható.
És igen, valóban 2-hetente lehet updatelni egy tűzfalat! Általában muszáj is, mert mindig van benne olyan bug ami érint, és addigra kijavítják. Cserébe kerül bele új teszteletlen kód is, amiben megint lesznek bugok, szóval 2 héttel később megint lehet updatelni. És ez így pörög szerintem 3 éve, mióta opnsense van :-)
A digi gigabites internetet szintén érdekes kérdés egy opnsense mennyire bírja kihajtani. Nekem nagyon gyatra végeredmény jött ki, köszönhető a következőknek:
- mint utólag kiderült egy 4-core 1 ghz embedded AMD nem elég hozzá
- a digi pppoe protokollt használ, ebbe csomagolja az IP forgalmat. A pppoe pedig valamiért botrányosan gyengén muzsikál bsd-n. Mindenki csak tippelgeti h. most tényleg 1-szálú az interrupt handling ,hiába tud multi-queue-t az intel NIC, a receive oldal a szar RSS algoritmus miatt PPPOE esetén csak 1 queue-ba teszi a teljes pppoe forgalmat?
- a pf lassítja be a gigabitet 3-400 mbitre?
A többit olvasd el itt: