Klaus: Linux: Mod_ssl einbinden für Apache2

Hallo,
ich bin am verzweifeln...

Also ich habe frisch Ubuntu installiert, und dann die neuste Version von Apache2 installiert.
Dafür habe ich den Source-Code verwendet, und kein fertiges 'Packet' verwendet.

So jetzt möchte ich gerne den Zugang per SSL sichern, also dachte ich mit, ich installiere mod_ssl.
Da es ja bei Apache2 schon integriert ist, muss ich den Server nur noch dazu bekommen, dass das Module auch geladen wird.

Wenn ich: httpd -l aufrufe, erhalte ich die geladen Module.
Hierbei taucht leider _kein_ mod_ssl.c auf.

Wenn ich in der httpd.conf folgendes Angebe:
LoadModule ssl_module /ordner_mit_apache_source/ssl/mod_ssl.c

Und dann den Server starte, erhalte ich folgende Meldung:
ordner/ssl/mod_ssl.c: Invalid ELF-Header

Ich bin am verzweiflen, und im Internet habe ich dazu echt nichts gutes gefunden....

Darum such ich jetzt hier hilfe. Weiß jmd., wie ich jetzt Apache2 beibringen kann, dass er mod_ssl.c laden soll?
Eine module.conf o.ä. ist bei mir im conf-Ordner nicht vorhanden.

MFG
Klaus

  1. Lieber Klaus,

    ich bin kein Linuxer, aber vielleicht habe ich eine brauchbare Idee...

    Wenn ich in der httpd.conf folgendes Angebe:
    LoadModule ssl_module /ordner_mit_apache_source/ssl/mod_ssl.c

    Also Du willst das Modul als Quelltext laden? Muss man sowas nicht vorher kompilieren? In meinem Windoof-Apachen haben die Module ein ".so" am Ende.

    Und dann den Server starte, erhalte ich folgende Meldung:
    ordner/ssl/mod_ssl.c: Invalid ELF-Header

    Ich habe keine Ahnung, was ein ELF-Header ist, aber wenn der Apache einen ausführbaren Code erwartet und einen Quelltext bekommt, dann kann ich mir vorstellen, dass die Datei einen unerwarteten Header liefert.

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    1. hallo Felix,

      LoadModule ssl_module /ordner_mit_apache_source/ssl/mod_ssl.c
      Also Du willst das Modul als Quelltext laden?

      Nein, das will er nicht. Die Anweisung "LoadModule" ist schon korrekt, was aber nicht stimmt, ist der Pfad zur Moduldatei. "ordner_mit_apache_source" gilt nur dann, wenn es an anderer Stelle in der httpd.conf so festgelegt wurde.

      Das Problem, das Klaus hat, liegt an anderer Stelle:

      Also ich habe frisch Ubuntu installiert, und dann die neuste Version von Apache2 installiert.
      Dafür habe ich den Source-Code verwendet, und kein fertiges 'Packet' verwendet.

      Es wäre wesentlich sinnvoller gewesen, wenn er eben ein vorgefertigtes Paket genommen hätte. Natürlich kann (und soll) man sich seinen Apache selber kompilieren. Aber wenn man noch nicht so genau weiß, wie das geht, und worauf zu achten ist, _muß_ da einiges schiefgehen - tut es ja nun auch. Im übrigen ist die tatsächlich "aktuelle" bzw. "neueste" Version des Apache ein Apache 2.1.8, ud der ist immer noch eine beta. Damit sollte man, wenn man noch nicht genügend Erfahrung hat, lieber noch nicht herumspielen.

      Muss man sowas nicht vorher kompilieren?

      Ja, in diesem Fall, wenn die Sourcen verwendet werden, muß "man" das tun. Und genau dabei ist natürlich darauf zu achten, daß die Module, die man haben möchte, auch mitkompiliert werden. Vermeiden läßt sich der ziemlich beträchtliche Konfigurationsaufwand für das Kompilieren allerdings, wenn das "Paket" verwendet wird. Es wäre Klaus dringend zu raten, es eben doch zuerst mit einer vorgefertigten Source (also einem "Paket") zu versuchen.

      In meinem Windoof-Apachen haben die Module ein ".so" am Ende.

      Korrekt, weil es Windows ist. "so" steht für "shared objects". Unter Linux kann sich da ein bißchen was anders darstellen. Im übrigen ist dir sicher mein Artikel bekannt.

      ordner/ssl/mod_ssl.c: Invalid ELF-Header
      Ich habe keine Ahnung, was ein ELF-Header ist

      Tja, das hat wohl was mit der gesamten Ubuntu-Installation zu tun. Auskuft darüber, was das ist, findest du in der Wikipedia, und ich muß zugeben, daß ich mit dieser Fehlermeldung auch nix anfangen kann. Da ist bei Klaus entweder nur der Apache falsch kompiliert worden, oder es ist bei der Installation von Ubuntu irgendwas Grundlegendes schief gegangen bzw. nicht beachtet worden.

      Ich habe derzeit kein Ubuntu am Laufen und kann daher im Moment nicht viel mehr dazu sagen.

      aber wenn der Apache einen ausführbaren Code erwartet und einen Quelltext bekommt

      Die Anmerkung ist irrelevant, da es sich hier noch gar nicht um Code handelt, sondern um ein Protokoll, das benutzt werden soll und offensichtlich nicht angesprochen werden kann.

      Grüße aus Berlin

      Christoph S.

      --
      Visitenkarte
      ss:| zu:) ls:& fo:) va:) sh:| rl:|
      1. Hallo,
        also mit neuster Version meinte ich die Version 2.0.55.

        Diese habe ich ganz normal kompiliert, sprich:
        $ ./configure --prefix=/pfad/
        $ make
        $ make install

        Und ich möchte eben kein fertiges Paket (z.B. XAMPP) benutzen, denn diese zu installieren ist kinderleicht.
        Was ich möchte, zu lernen wie man selber sich eine LAMP umgebung einrichtet.

        Und kann man so ein Module nicht irgendwie ganz einfach nach kompilieren/einbinden?
        Oder muss ich das schon bei der Kompilierung vom Apache angeben?

        P.S. Evt. liegt es daran, das ich OpenSSL erst nach Apache installiert habe (hab dafür ein fertiges Paket verwendet).

        MFG
        Klaus

        1. Hallo Klaus.

          Und ich möchte eben kein fertiges Paket (z.B. XAMPP) benutzen, denn diese zu installieren ist kinderleicht.

          Was spricht gegen „apt-get install apache2“ ?

          Einen schönen Sonntag noch.

          Gruß, Ashura

          --
          Selfcode: sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:) fl:( ss:) ls:[ js:|
          30 Days to becoming an Opera8 Lover -- Keyboard Shortcuts
          Meine Browser: Opera 8.50 | Firefox 1.0.7 | Lynx 2.8.5 | Konqueror 3.3.2 | Netscape 4.7 | IE 6.0
          Use OpenOffice.org
        2. hallo Klaus,

          also mit neuster Version meinte ich die Version 2.0.55.
          Diese habe ich ganz normal kompiliert, sprich:
          $ ./configure --prefix=/pfad/
          $ make
          $ make install

          Siehst du, und da fehlt eben SSL.

          Und ich möchte eben kein fertiges Paket (z.B. XAMPP) benutzen

          XAMPP ist kein "Paket", sondern eine ganze Sammlung. Unter "Paket" wären die distributonsspezifischen Sourcen zu verstehen, wobei ich nicht weiß, ob es für Apache 2.0.55 schon eins gibt, der ist noch sehr jung.

          Und kann man so ein Module nicht irgendwie ganz einfach nach kompilieren/einbinden?

          Ja, das kann man. Beschäftige dich mit dem .configure-Befehl.

          Oder muss ich das schon bei der Kompilierung vom Apache angeben?

          Ja, zumindest wäre es wohl günstiger. Ein paar kleine Hinweise findest du in http://aktuell.de.selfhtml.org/artikel/server/apacheconf/apconf04.htm

          Grüße aus Berlin

          Christoph S.

          --
          Visitenkarte
          ss:| zu:) ls:& fo:) va:) sh:| rl:|
  2. Hallo,

    So jetzt möchte ich gerne den Zugang per SSL sichern, also dachte ich mit, ich installiere mod_ssl.
    Da es ja bei Apache2 schon integriert ist, muss ich den Server nur noch dazu bekommen, dass das Module auch geladen wird.

    Sicher, dass Du es integriert hast? Wenn Du den Apache selbst compiliert hast, ist das eben _nicht_ sicher. Zunächst mal muss openssl überhaupt installiert sein und dann muss der Apache mit den ./configure options
    --enable-ssl \ --with-ssl=/usr/local/openssl \ compiliert werden.

    http://lamps.efactory.de/lamps-2-0.php

    viele Grüße

    Axel