OpenSSL 1.1.0 - kann ich apache24 und OpenVPN damit bauen?

Status
Für weitere Antworten geschlossen.

Freigeist

Well-Known Member
FreeBSD enthält doch im Basissystem OpenSSL 1.0.2. Ich möchte aber z. B. chacha20 nutzen.

Wie mache ich das ohne Klimmzüge? Geht es nur über Ports oder auch mit pkg?

LG
Freigeist
 
Dafür wirst du ports verwenden müssen. Aber die Frage ist wieso chacha20, aes-gcm ist doch auch schön :)
 
Ich hole mal etwas weiter aus. Auf einer ALIX-Kiste habe ich FreeBSD 11 installiert. War für mich als Neuling in Bezug auf FreeBSD eine Herausforderung.

OpenVPN ist drauf. Installiert mit pkg.

Aber OpenSSL ist nicht 1.1.0. Das möchte ich ändern. Auf der ALIX-Kiste ports zu nutzen scheint mir nicht sinnvoll.

Hier sind doch viele Profis am Werk. Was kann ich tun?
 
Naja zuerst kannst du pkg und ports auch mischen. Also Apache/OpenVPN mit openssl-devel über die ports und den Rest mit pkg. Für pkg musst du dann die entsprechenden ports-Packages locken (pkg lock), damit bei pkg upgdates diese nicht überschrieben werden.
Alternativ kannst du auch Apache/OpenVPN/OpenSSL komplett am Packetmanagement vorbei händisch kompilieren.
 
Oder Du installierst Dir ein FreeBSD 11 auf einem anderen Rechner oder in einer VM und baust die ports dort, erstellst dann daraus ein package und installierst dieses auf der ALIX-Kiste. Allerdings ist das eher nichts für FreeBSD-Neulinge, denke ich.
 
Auf einer ALIX-Kiste werde ich auf gar keinen Fall mit ports arbeiten. Die Kiste ist einfach zu schwachbrüstig.

Bleibt also nur der Weg über eine VM.

Die Frage ist:

Investiere ich meine Freizeit für diese Aufgabe? Ich bin mir nicht sicher.
 
Ich denke eigentlich, dass du diese 3 Ports in 5-10min gebaut hast. Und updates gibt es ja nicht sooo oft.
 
wenn ich das richtig verstehe, geht es hier darum, dass neuere Versionen gebraucht werden, als sie mit den pkg eingespielt wurden?
Es gibt die (schwache) Möglichkeit, dass du aus den Latest-Repositries schon die neueren Versionen bekommen könntest. Du kannst die selbst durchgehen und nachsehen, die entsprechenden Seiten lassen sich browsen. Du findest die URL einfach in der Datei, in der du auch von quarterly auf latest umstellen könntest: /etc/pkg/FreeBSD.conf

Der Bau der Pakete in einer VM ist nicht sehr viel Arbeit, weil du ja nur ein minimales FreeBSD installieren musst, die Ports fetchen und dann nur das bauen, was du benötigst. Auch ein Alix würde damit klarkommen, ich habe das früher schon gemacht und vermutlich mit schwächerer HW. Die Frage ist, ob du den Platz dafür auf dem Alix bereitstellen möchtest, besonders, wenn dort von USB-Stick oder CF-Karte gebootet wird. Der Bau der Ports ist lahm auf dem Alix, aber sollte laufen und die Auswahl, die du hier nennst, ist nicht so gewaltig.
Du könntest speziell für diese Aufgabe ein externes Laufwerk oder einen Stick anbauen oder eine Netzwerkshare einbinden und Ports dorthin auslagern. Dann mountest du nur jeweils dann, wenn du etwas bauen/aktualisieren möchtest.
 
Danke für die Hinweise.

Ich bleibe bei meiner Entscheidung. Auf der ALIX-Kiste wird es keine ports (weder auf CF noch woanders) geben.

Ich bin mal gespannt, wie lange FreeBSD und pfSense noch an OpenSSL 1.0.2 festhalten werden. Bei pfSense gibt es meiner Meinung nach gar keinen Grund den alten Zopf nicht abzuscheiden. Die wenigen Pakete, die OpenSSL brauchen, umzustellen sollte kein Problem sein. OPNsense ist aber darin auch nicht weiter als pfSense.

Code:
openvpn --version
OpenVPN 2.4.2 x86_64-unknown-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on May 11 2017
library versions: OpenSSL 1.1.0f  25 May 2017, LZO 2.10
Originally developed by James Yonan

Ich kann also auf meinem PC OpenVPN 2.4.2 mit OpenSSL 1.1.0f bereits nutzen. Auf der Serverseite ist mit pfSense 2.4 BETA und ebenfalls OpenVPN 2.4.2 tote Hose.

Ich übe mich in Geduld.
 
ich möchte nochmal kurz darauf zurückkommen. Wir müssen über unterschiedliche Dinge reden und ich bin mir da nicht sicher, wie was zusammenhängt.

1. openssl aus /usr/src, das also mit dem Basis-System kommt, 1.0.2k...
2. openssl aus Ports oder Paketen, 102k...
3. openssl-devel aus Ports oder Paketen, 1.10...

Also, ich benutzte hier quarterly vom amd64 und bekomme da folgende Angaben mit pkg seacrh:
Code:
openssl-1.0.2k_1,1             SSL and crypto library
openssl-devel-1.1.0e           SSL and crypto library (1.1.x)
Wenn ich das richtig sehe, hat openssl-devel die von dir gewünschte Version da auch als Paket. Wie ich aber letztlich erst lernte, sind i386er Pakete oft anders, haben oft ungleiche Versionen. (Mit Alix bin ich nicht auf dem Laufenden, meiner war damals i386). Du solltest das vielleicht wenigstens mal nachsehen, es könnte dich vielleicht einer Lösung näher bringen.
Wie dann aber openssl aus dem System korrekt gegen das openssl-devel als Paket getauscht wird, weiß ich nicht. Womöglich wird einfach alles überschrieben und gut ist. In einem schlimmeren Falle müsste erst openssl sauber entfernt werden, bevor eine devel-Version aus den Paketen installiert wird oder es könnte sogar sein, dass zwei Versionen nebeneinander wohnen können. Keine Ahnung, wie man das erfährt. Ich würde es wahrscheinlich einfach probieren und lernen.
 
Ich bin mal gespannt, wie lange FreeBSD und pfSense noch an OpenSSL 1.0.2 festhalten werden.
FreeBSD den ganzen 11.x Zyklus hindurch. Zu 12.x muss man mal schauen. Der Vorschlag OpenSSL im Basissystem "private" zu machen und damit Drittanwendungen zwingen eine Version aus den Ports zu nehmen steht noch im Raum, aber entschieden ist da nichts.
 
FreeBSD den ganzen 11.x Zyklus hindurch. Zu 12.x muss man mal schauen.

Danke für diese Information. Damit wird wohl auch pfSense diesen Weg gehen. Finde ich nicht so toll.

OT:
pfSense hat neulich das Statement abgegeben, ab Version 2.5 nur noch Hardware mit AES-NI unterstützen zu wollen. Da kommen Fragen auf. Der Einfluss von Netgate ihre Geräte an den Mann zubringen?

Ab Version 2.4 wird 32-Bit Hardware nicht mehr unterstützt. NanoBSD auch nicht. Okay, mit dieser Entscheidung kann ich leben.
 
https://www.netgate.com/blog/further-a-roadmap-for-pfsense.html

Since there are a very large number of existing systems that can’t run DPDK, and that aren’t able to run 64-bit code, pfSense 2.x will continue as a separate, parallel train. You will not be abandoned if you can’t run (or don’t want to run) the 3.0 release, and yes, we will bring the API and webGUI back to pfSense 2.x after it is implemented on 3.0, so even pfSense 2.x will eventually have all of the PHP removed.

Das klang vor einiger Zeit noch ein bisschen anders :-)
 
Wie dann aber openssl aus dem System korrekt gegen das openssl-devel als Paket getauscht wird, weiß ich nicht. Womöglich wird einfach alles überschrieben und gut ist. In einem schlimmeren Falle müsste erst openssl sauber entfernt werden, bevor eine devel-Version aus den Paketen installiert wird oder es könnte sogar sein, dass zwei Versionen nebeneinander wohnen können. Keine Ahnung, wie man das erfährt. Ich würde es wahrscheinlich einfach probieren und lernen.

Nun, auf meiner ALIX-Kiste ist das Paket openssl gar nicht vorhanden obwohl OpenVPN ja OpenSSL braucht. Wenn ich mehr Ahnung vom Compilieren/Linken hätte, würde ich das verstehen.

Damit bleibt wohl nur der Weg über FreeBSD in einer VM um ans Ziel zu kommen. Momentan fehlt es am nötigen Druck zu diesem Schritt.
 
Ich habe mir eine VM mit FreeBSD 11 eingerichtet, mit poudriere das Paket openvpn (x86) scheinbar erfolgreich erstellt.

Wie kann ich jetzt das Paket auf einem anderen Rechner nutzen? Bin für jeden Hinweis dankbar.

LG
Freigeist.
 
in man pkg-install lese ich dies:
Code:
DESCRIPTION
     pkg install is used for installation of packages from package
     repositories or local archives.
Weiter finde ich dazu aber keine spezielle Option, wie das gehen kann.
Es wird darüber geschrieben, dass auch lokale Dateien benutzt werden können und diese in einer Art lokalen Repositrie gehalten werden können, die entsprechende conf kann dafür angepasst werden, aber bei einem einzigen Paket, naja, ich würde es mal mit pkg install Pfad/zu/Paket probieren und wenn das nicht geht, eben über die conf, wie in der man beschrieben.
Die meisten Leute, die poudriere benutzen, bauen damit tatsächlich eine große Zahl von Paketen und hosten ihr privates Repositrie, das sie dann für einen oder mehrere Rechner bereit halten. Für ein einziges Paket zu viel Aufwand in meinen Augen. Es wird immer, bei jedem Bau, aus dem Port erst ein Paket erstellt und dieses dann installiert. Man kann das auch "wieder herstellen" lassen und als Paket erzeugen oder ausgeben. Den Befehl dazu habe ich vergessen, sollte in der pkg-gruppe sein.

Aber du hast ja dein Paket und willst vielleicht in Zukunft noch mehrere erstellen und auf die gleiche Weise nutzen, da wäre das Anlegen eines eigenen Repositries vielleicht keine schlechte Idee und dann die pkg.conf entsprechend darauf ansetzen.
 
Danke für die Hinweise.

Ich werde mich etwas genauer mit der Materie beschäftigen. Die Methode mit dem HTTP Server erscheint elegant.
 
Habe die VM für FreeBSD wegen zu kleiner Festplattengrösse noch mal installiert.

An Ende konnte ich openvpn nicht bauen. :confused:

Code:
/usr/local/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'struct evp_cipher_ctx_st'
typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
               ^
crypto.c:879:9: error: invalid application of 'sizeof' to an incomplete type 'hmac_ctx_t' (aka 'struct hmac_ctx_st')
        ALLOC_OBJ(ctx->hmac, hmac_ctx_t);

Zuvor wurde openssl-devel fehlerfrei gebaut. Auch die anderen ports liefen durch.

Jetzt steh ich da wie Atze.
 
Ich versuche jetzt mal stunnel und apache24 zu bauen. Immer noch für x86 Architektur.

Der HTTP Server (nginx) läuft. Es gab im Netz eine für Laien brauchbare Anleitung dazu.
 
Erfolg für stunnel.

Misserfolg für apache24, wegen devel/apr (apr-1.5.2.1.5.4_2).

Code:
configure: error: Crypto was requested but no crypto library could be enabled; specify the location of a crypto library using --with-openssl, --with-nss, etc.
*** Error code 1

Was für ein steiniger Weg.
 
Du gibst überhaupt keine Infos. Welche Befehle verwendest du? Welche Einstellungen hast du für poudriere oder make.conf gesetzt? Welche Branch der Ports verwendest du?
 
Wie ich schon sagte:

Ich nutze poudriere um für die ALIX-Kiste (FreeBSD 11, i386) openvpn mit openssl-devel zu erstellen um OpenSSL 1.1.0 nutzen zu können.

Die Konfiguration von poudriere ist OK.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben