VPN interfaze bat, GPL motor bat eta instalatzaile bat: zer banatzen da?
Kartografiatu zer banatzen den, zer aldatu den eta nola hitz egiten duten zatiek, GPL eta OpenSSL baldintzak zure VPN interfazearen paketeari nola aplikatzen zaizkion erabaki aurretik.
Galdera lizentzia-kontu gisa iristen da, baina erantzuna inbentario batekin hasten da. VPN interfaze batek, hark gidatzen duen OpenVPN motorrak, TLS liburutegi batek eta instalatzaile batek lau baldintza-multzo desberdin izan ditzakete, eta produktuaren itxurak ez dizu ezer esaten zein fitxategi zein multzori dagokion. Landu artefaktuak banatzen diren ordenan, eta legezko galdera askoz estuagoa izango da erantzuteko gaitasuna duen norbaiti eman baino lehen. Urrats bakoitzak gehiago estutzen du: zer banatzen den, zer aldatu den eta nola komunikatzen diren zatiak.
Hasi instalatzaileak diskoan jartzen duenarekin
Hartu argitaratutako instalatzailea edo paketea, ez garapen kopia bat, eta zerrendatu makina garbi batean jartzen duen fitxategi bakoitza. Erregistratu interfazearen, motorraren eta TLS liburutegiaren bertsioak, eta adierazi motorra exekutagarri bereizia den edo prozesu berean kargatzen den liburutegi bat den.
Azken datu horrek erasaten du ondorengo guztia. Socket baten bidez abiatutako exekutagarri bereizi batek galdera-multzo desberdina planteatzen du binario bakarrera konpilatutako kodeak baino, eta biak alboan jartzen dituen instalatzaile batek ez du auzia inolako norabidetan erabakitzen. Bildumatzea paketatze-erabakia da, eta programen arteko harremana, berriz, arkitektura-erabakia.
Idatzi zerrenda bertsioak erantsita, baldintzak bertsio nagusien artean aldatzen baitira.
dpkg -L openvpn | head -n 40
openssl version -aBereizi interfazea motorretik
OpenVPNren kopia fitxategiak GPL 2 bertsioa adierazten du eta OpenSSLrako lotura-salbuespen bat dokumentatzen du, zehaztutako irismena duen baimen zehatza baita, ez baldintzak nahasteko lizentzia orokorra.
Jaso zure buildarekin banatzen den lizentzia-testua, ez gaur proiektuaren webgunean dagoena. Adar zaharrago bat finkatu zuen argitalpenak adar horren dokumentua darama. Biltegi baten orrialdearen pantaila-argazkiak ez dira ordezko, behar duzun fitxategia artefaktuaren barruan dagoena baita. Gorde instalatzailearen alboan, paketea osoa izan dadin.
Ondoren deskribatu integrazioa zintzotasunez: interfazeak motorra prozesu ume gisa abiarazten du eta testu-protokolo bat hitz egiten du, edo liburutegi bat lotzen du eta barne-egiturak trukatzen ditu? Bigarren antolamendua estua da lehenengoa ez den moduan, eta bereizketa hori izango da berrikusleak lehenik galdetuko duena.
Idatzi zein fitxategi aldatu dituzun
Aldatutako iturburu-kodeak analisia aldatzen du paketatze-xehetasun orok baino gehiago. Motorrari adabakia jarri badiozu, adabakia bera eratorritako lana da, eta betebeharra emaitza banatzen duenari dagokio.
Erregistratu adabaki bakoitza, haren helburua eta goragoko proiektura bidali zen ala ez, zure biltegitik inoiz atera ez den adabaki bat bidaltzen duzunaren parte izaten jarraitzen baitu binarioa bidaltzen baduzu.
Konfigurazio-fitxategiak, gaiak eta itzulpenak interfazearekin bizi ohi dira, baina motorraren iturburu-kateak txertatzen dituen itzulpen batek gogorarazten du muga fitxategika dela, ez direktorioka. Mantendu ezberdintasuna goragoko argitalpenaren eta zure buildaren artean, erantzuna eskaeran erabilgarri egon dadin geroago berreraiki ordez. Ezberdintasun hori da artxibatzaile bat zer aldatu zen galdetzen duenean erabilgarrien den artefaktua ere.
Egiaztatu OpenSSL bertsioa bereizita
OpenSSL 3.0 eta berriagoak Apache License 2.0 pean banatzen dira, eta bertsio zaharragoek OpenSSL/SSLeay baldintzak daramatzate. Dokumentu desberdinak dira, betebehar desberdinekin, eta bildumatutako motor batek zure build-sistemak aurkitu zuen edozein lotu dezake.
Egiaztatu benetan banatzen den bertsioa, build script batean aipatutakoa ez.
OpenVPNrekiko mendekotasunak ez du OpenSSLren aldaketa oro GPL kodera bihurtzen, eta lotura-salbuespenak ez ditu kentzen liburutegiaren birbanaketarekin datozen gainerako betebeharrak. Erabili salbuespena analisi handiago baten klausula gisa, eta erregistratu TLS liburutegiaren beraren oharrak beste guztiarekin batera.
Bildu froga-paketea
Paketeak lau zati ditu: fitxategien inbentarioa bertsioekin, integrazioaren deskribapena, aldaketen zerrenda ezberdintasunekin eta banatutako lizentzia-testuak. Gehitu banatzen duzun ohar-fitxategia eta iturburu-kodea eskaintzen den lekua, zure betebeharrek eskaintza eskatzen badute.
Eduki paketea jabebakar baten pean, argitalpen batek hura gabe atera ez dadin.
Honek ez du legezko galderarik erabakitzen, eta hori da kontua: berrikusle kualifikatu bati datuak ematen dizkio norbaiten memoriarekin osatutako laburpenaren ordez. Hornitzaile baten marketin deskribapena ez da haren arkitekturaren froga, eta zuk horri buruz duzun susmoa ere ez da froga.