.titleBar { margin-bottom: 5px!important; }

Webserver + Portfreigabe realisiert!

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von Maruu, 6 Nov. 2004.

  1. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo!

    Also naja nachdem ich jetzt einiges probiert hab und leider kaum was kompilieren konnte, stell ich euch mal meine aktuellen Ergebnisse zur verfügung:

    Also als erstes, es gibt ja das Problem das man z.B. Telnet oder das Webinterface nicht fürs Internet freigeben kann, da Adressen wie 192.168.178.1 oder 127.0.0.1 oder ähnliches gesperrt sind. Entweder man editier die Dateien im Flash oder macht es wie ich, ich hab ein Virtuelles Interface erstellt, das ist nix anderes wie eine Virtuelle Netzwerkkarte die eine IP zugewiesen bekommt. Erstellen kann man das mit z.B.
    ifconfig eth0:0 192.168.178.15 netmask 255.255.255.0 up
    So und wenn man das gemacht hat kann man z.B. alles was auf Port 80 rein kommt an die IP-Adresse 192.168.178.15 weiterleiten (ganz normal über Webinterface), was soviel bedeutet wie das er es an sich (die Fritz!Box) weiterleitet.

    Als zweites hab ich nen Webserver für die Fritz!Box kompiliert. Es handelt sich um den mini_httpd von http://www.acme.com/software/mini_httpd/
    Der kann unter anderem Passwortgeschützte Bereiche, CGI (also könnt ihr euer eigenes Webinterface basteln ind z.B. Shellscript oder C uvm.), Eigene Errorpages, usw.
    Naja ich hab mal einen auf meiner Box aufgesetzt wenn ihr ihn mal anschauen wollt er läuft unter:
    http://maruu.dyndns.org:5000
    Und unter:
    http://fritz.box:5000/cgi-bin/test.sh
    findet ihr ein kleines Shellscript das als CGI ausgeführt wird und einige CGI umgebunsvariablen sowie die aktuellen Prozesse anzeigt.

    Naja mit dem kann man schon einiges machen leider hab ich es bis jetzt noch nicht hinbekommen einen ftpServer oder SSH zu kompilieren aber wenngroße nachfrage besteht werd ich mich weiterhin drum bemühen.

    Angehängt findet ihr den compilierten mini_httpd.

    Einfach per Telnet auf die Box, in /var/ (mit cd /var) wechseln ein
    wget http://adressezumfile/mini_http-compiled.tar eingeben und dann nachdem ers geladen hat mit tar xvf mini_http-compiled.tar
    auspacken. mit mini_httpd --help findet ihr die Optionen raus, ich hab aber auch die Manpage in PDF gewandelt und an den Post angehängt.

    Nadenn wenn noch fragen anregungen oder sonstiger response ist, bitte posten.


    MFG

    Maruu

    PS: Telnet fürs Internet freizugeben ist ein großes Sicherheitsrisiko vorallem wenn kein root-Passwort gesetzt ist
     

    Anhänge:

  2. pfeffer

    pfeffer Mitglied

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    755
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    klappt leider nicht:
    Code:
    tar: Invalid tar magic
    Hast Du es mit einem busybox-tar gepackt? - Nur dann kann es die Firtzbox auspacken. - Ich hab's nochmal mit busybox tar gepackt (siehe Anhang), aber das hat nicht geholfen :-(

    Wenn das läuft - das wäre fantastisch!

    ach, und ja,: ssh wäre super.

    Gruß,
    Pfeffer.
     

    Anhänge:

  3. pfeffer

    pfeffer Mitglied

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    755
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Könntest Du eine Schritt für Schritt-Anleitung schreiben, wie man selbst cross-compilieren kann? - Am besten mit Knoppix :)

    Gruß,
    Pfeffer.
     
  4. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Mhhm komisch,
    also bei mir geht das und ich habs ned mit BusyBox gepackt, mhhm naja probiert mal das
    http://maruu.dyndns.org:5000/mini_http-compiled.tar
    Das installierte BusyBox Tar, kann das überhaupt packen??
    Weil die -c option schluckt er bei mir nicht. Wennd as jemand rausfindet dann pack ichs auch mit BusyBox.

    @Pfeffer
    Die Anleitung ist schon im Forum aber falls du noch ne genauere willst kann ich mich mal drum bemühen.


    So also bite noch ANtworten falls was gewünscht wird oder irgendwasnicht geht.

    MFG

    Maruu
     
  5. pfeffer

    pfeffer Mitglied

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    755
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    danke, damit geht's. Super, jetzt läuft der Server!

    @Maruu
    ja, ich habe die Anleitung gesehen, aber viele, unter anderen Du, haben geschrieben, es sei ihnen nicht gelungen. Darum fänd ich eine detaillierte Anleitung gut.

    Gruß,
    Pfeffer.
     
  6. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    Ba denn dann werd ich mal ne kleine Anleitung machen:

    1.) System (z.B. SUSE, Knoppix usw.)Booten
    2.) Konsole (Terminal) öffnen
    3.) Verzeichnis für den CrossKompiler erstellen z.B. mkdir ~/crosscompiler
    4.) In das neu erstellte Verzeichnis wechseln cd ~/crosscompiler
    5.) Sourcen herunterladen mit folgendem Befehl:
    cvs -d:pserver:anonymous@uclibc.org:/var/cvs checkout toolchain
    (Falls er nach nem Passwort fragt einfach nur ENTER drücken es gibt
    nämlich keins)
    6.) In den durch den download neu erstellten Ordner toolchain wechseln
    mit: cd toolchain
    7.) In den Ordner des Compilers wechseln (habs nur mit gcc3.3 getestet)
    mit: cd gcc-3.3.x
    8.) Die Datei Makefile öffnen, die Zielumgebung Mipsel aktivieren,
    Speichern und aus der Datei herausgehen mit:
    vi Makefile
    mit dem Cursor bis zu ARCH:=i386 und dort i (für Insert im vi) drücken
    ein #-Zeichen vor dem ARCH:=i386 einfügen (so #ARCH:=i386)
    mit dem Cursor bis zu #ARCH:=mipsel
    das #-Zeichen entfernen (so ARCH:=mipsel)
    einmal ESCAPE (Esc) drücken
    dasnn Doppelpunkt gefolgt von wq eingeben (so :wq)
    Damit müsste die Datei wieder geschlossen werden.
    Natürlich kann man das auch mit jedem anderen Editor machen.
    9.) CrosscKompiler compilieren mit:
    make
    Kaffeedrinken gehen, Freundinn mal wieder naschauen, usw.
    Während des compilierens fragt er einige dinge wo er unterbricht und
    auf eine Tastatureingabe wartet. Bei all diese Eingaben einfach nur
    Enter drücken.
    10.) Der CrossKompiler ist jetzt fertig und liegt unter:
    ~/crosscompiler/toolchain/gcc-3.3.x/toolchain_mipsel/bin/
    sein Name ist mipsel-linux-gcc

    Ein Testprogramm like "Hello World!" geht so:

    1.) In einen Beliebigen Ordner wechseln z.B. in den vorher
    erstellten Ordner crosscompiler mit:
    cd ~/crosscompiler
    2.) Testprogramm erstellen mit:
    echo '#include <stdio.h>' >> helloworld.c
    echo 'main() {' >> helloworld.c
    echo 'printf("Hello World!");}' >> helloworld.c
    3.) Testprogramm für die Fritz!Box compilieren:
    ~/crosscompiler/toolchain/gcc-3.3.x/toolchain_mipsel/bin/mipsel-linux-gcc -o ~/crosscompiler/helloworld.o /crosscompiler/helloworld.c
    4.) das Kompilierte Programm (helloworld.o) auf die Fritz!Box schieben
    (wie ihr das macht bleibt euch überlassen)
    Ich habe es auf meinen Webserver unter Linux gelegt und dann
    bin ich per telnet auf die Fritz!Box und hab mittels
    wget http://192.168.178.20/helloworld.o das file auf die Fritz!Box
    in das Verzeichnis /var/ geladen.
    5.) Datei helloworld.o ausführbar machen auf der Fritz!Box
    per telnet auf die Fritz!Box und dort
    chmod 755 helloworld.o
    eingeben
    6.) Ausführen der Datei helloworld.o mit
    ./helloworld.o
    Nun muss als Ausgabe HelloWorld erscheinen.

    Compilieren eines Paketes wie mini_httpd:

    1.) Paket Herunterladen und entpacken.
    Nun gibt es zwei Möglichkeiten:
    2.1.) Makefile editieren und die Variable vom gcc bzw. cc auf den crosscompiler also ~/crosscompiler/toolchain/gcc-3.3.x/toolchain_mipsel/bin/mipsel-linux-gcc setzen
    2.2) oder die Environment Variable für den gcc auf den Crosscompiler
    setzen mit:
    export CC=~/crosscompiler/toolchain/gcc-3.3.x/toolchain_mipsel/bin/mipsel-linux-gcc
    wobei am Besten das ~/ durch den richtigen Pfad wie z.B.
    /home/testuser/ ersetzt werden sollte
    2.3) Und dann ein ./configure und ein make machen und hoffen das es
    geht, bei mir hat das bis jetzt nur in den seltesten fällen funktioniert.
    Bin gern für Rat offen.
    2.4) Danach alles auf die Fritz!Box laden (z.B. als gepacktes tar-File)
    und Ausführen.

    Falls die Variante mit der Environmet Variable benutz wurde muss diese später wieder auf den normalen gcc geställt werden mit z.B.
    export CC=gcc

    Also falls noch Fragen sind einfach fragen.

    MFG

    Maruu
     
  7. Novize

    Novize Moderator
    Forum-Mitarbeiter

    Registriert seit:
    17 Aug. 2004
    Beiträge:
    20,620
    Zustimmungen:
    25
    Punkte für Erfolge:
    48
    Beruf:
    Jepp!
    Ort:
    NRW
    Ich hätte schon gerne einen FTP-Server auf der Box, ich frage mich nur, wie kann ich dort einen Massenspeicher anschliessen, auf den ich up- bzw von dem ich downloaden kann?
     
  8. Kermit

    Kermit Neuer User

    Registriert seit:
    24 Juli 2004
    Beiträge:
    170
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Beruf:
    Berufskraftfahrer für Porsche AG
    Ich glaube dann setzt Du Dir lieber einen Linux Server auf. :D

    Ich frage mich nur, um so mehr auf der Box läuft , deso mehr wird diese beansprucht. Die geht ja schon in die Knie, wenn Emule läuft.

    Was meint Ihr dazu ?
     
  9. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Massenspeicher kannste vergessen da das integrierte USB Interface ein Slave interface ist, siehe diverse Threads im Forum.
    Naja so kleine dinge wie HTTP Server sind kaum ein Problem solange nicht google.de seine Server auf deine Fritz!Box umleitet*g*

    MFG

    Maruu
     
  10. Novize

    Novize Moderator
    Forum-Mitarbeiter

    Registriert seit:
    17 Aug. 2004
    Beiträge:
    20,620
    Zustimmungen:
    25
    Punkte für Erfolge:
    48
    Beruf:
    Jepp!
    Ort:
    NRW
    Der kommentar war auch nur sarkastisch gemeint.
    Mit anderen Worten: Ich möchte schon nen ftp-Server drauf haben, da aber kein Massenspeicher dran passt, ist es aber vergebene Liebesmüh. Schade eigentlich...
     
  11. rollo

    rollo IPPF-Promi

    Registriert seit:
    5 Juli 2004
    Beiträge:
    8,266
    Zustimmungen:
    1
    Punkte für Erfolge:
    38
    Ort:
    JO30SK
    Du könntest ja ein Netzwerkvolume per NFS mounten, sofern man das auf die Box kriegt.

    jo
     
  12. Novize

    Novize Moderator
    Forum-Mitarbeiter

    Registriert seit:
    17 Aug. 2004
    Beiträge:
    20,620
    Zustimmungen:
    25
    Punkte für Erfolge:
    48
    Beruf:
    Jepp!
    Ort:
    NRW
    Dann kann ich aber auch gleich nen ftp-Server auf einem anderen Rechner laufen lassen. Mir ging es eigentlich darum, ein Gerät weniger hier rumstehen bzw. laufen zu haben. Und das wäre halt klasse, mit (fast) keinem zusätzlichem Stromverbrauch und Lärm einen ftp-Server am Laufen zu haben.
     
  13. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Hier gibt es eine mögliche Zwischenlösung. FTP-Server ist sogar schon drauf, aber ein SMB-Mount von der fbox müsste sich auch stricken lassen:

    http://www.allnet.de/produkte/27222.html

    Gruß,
    Enrik
     
  14. Kermit

    Kermit Neuer User

    Registriert seit:
    24 Juli 2004
    Beiträge:
    170
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Beruf:
    Berufskraftfahrer für Porsche AG
    Es brauch nur ein Samba Server auf der FBF laufen.
    Den NFS Server kannst Du doch bei deinem Win XP Rechner oder Win 2000 Rechner einrichten. Den gibts es sogar kostenlos von Microsoft.

    Voraussetzung
    XP Professional oder Win2000. Windows XP Home funktioniert nicht !!!
    Eine NTFS-Partition, für das Installationsverzeichnis

    Download folgender Dateien

    www.microsoft.com/windows/sfu/downloads/default.asp
    1.Windows Services for UNIX 3.5 Downloads
    2.Register to Download
    3.English (Steht z.Z. nur auf englisch zur Verfügung.)
    4.Sich da durchhangeln, eine gültige eMail-Adresse angeben und die korrekte Schuhgröße, bis man endlich zum Download kommt. Dafür ist es ja auch kostenlos.
    5.Download SFU35SEL_EN.exe (217 MB)

    Per Telnet folgende Dateien von der FBF holen: cd ~ group und cd ~ passwd

    SETUP
    SFU35SEL_EN.exe entpacken nach C:\Temp\SFU35SEL_EN
    C:\Temp\SFU35SEL_EN\Setup.exe doppelklicken

    [Next]
    Werte für "Name" und Organization" eingeben.
    [Next]
    (x) I accept the agreement
    [Next]
    (x) Custom Installation
    [Next]
    Alles abwählen außer
    - "Server for NFS"
    - "Server for NFS Authentification"
    [Next]
    (x) Change the default behavior to case sensitive.
    [Next]
    (x) Local User Name Mapping Server
    (x) Password and group files
    [Next]
    Password file path and name:
    D:\Programme\SFU\fbfusers\passwd
    Group file path and name:
    D:\Programme\SFU\fbfusers\group
    Windows domain name:
    \\RECHNERNAME (hier steht der tatsächliche Name des eigenen Rechners)
    [Next]
    Installation location:
    D:\Programme\SFU\NFS\
    Das Zielverzeichnis muss auf einer NTFS-Partition liegen.
    [Next]
    You must Restart...
    [Yes]

    Kontrolle
    Nachsehen bei:
    Start -> Einstellungen -> Systemsteuerung -> Verwaltung > Dienste "Server for NFS" und "User Name Mapping" ob diese Dienste Status: Gestartet / Autostarttyp: Automatisch

    Der Windows-User, der im nächsten Schritt beim Mapping zugeordnet wird (z.B. Administrator), muss über ein Kennwort verfügen. Falls er keins hat, muss ihm vor dem "User Mapping" eins zugeteilt werden.

    Kennwort festlegen
    Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Computerverwaltung -> System ->
    Lokale Benutzer und Gruppen -> Benutzer -> rechte Maustaste auf den Benutzernamen -> Kennwort festlegen
    Es folgt eine Warnung, dass Daten verloren gehen können. Diese Warnung habe ich bisher immer missachtet und vermisse keine Daten. Um welche Art von Daten es sich dabei handeln soll, weiß ich nicht.

    User Mapping
    Start -> Einstellungen -> Systemsteuerung -> Verwaltung ->
    Services for UNIX Administration -> User Name Mapping -> [Maps] -> Show User Maps

    Windows user name: Administrator, UNIX user name: root
    [Add]
    [OK]
    [OK]
    [Apply]
    Schließen (Menü -> Datei -> Beenden oder einfach [X])

    Freigaben einrichten
    Arbeitsplatz: dort zu dem Ordner duchhangeln, den man freigeben möchte z.B. "D:\ftp-server".
    Rechte Maustaste auf den Ordner -> Eigenschaften -> NFS Sharing
    Beim Punkt "Type of access" je nach Bedarf Read-only (nur lesen) oder Read-Write (lesen und schreiben) einstellen
    Nach belieben weitere Freigaben einrichten.

    Solltest du Windows XP als Betriebssystem einsetzen, musst du noch folgende Ports in der XP Firewall freigegeben:

    Port Protokoll Bezeichnung
    111 UDP Portmapper
    111 TCP Portmapper
    1039 TCP Status
    1039 UDP Status
    1047 TCP Nlockmgr
    1047 UDP Nlockmgr
    1048 TCP Mountd
    1048 UDP Mountd
    2049 TCP NFS-Server
    2049 UDP NFS-Server


    als Bereich bitte jeweils "Nur für eigenes Netzwerk (Subnetz)" freigeben.

    Wer ein anderes Betriebssystem bzw. eine andere Firewall im Einsatz hat, muss diese ebenfalls entsprechend konfigurieren.


    Mounten

    Auf der Console der FBF folgendes eingeben:
    /bin/mount -t nfs 192.168.178.20:/mp3 /var/mp3
    /bin/mount -t nfs 192.168.178.20:/video /var/video
     
  15. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    @ enrik

    Wat soll dat ding von ALLNET denn kosten hört sich nämlich interessant an.

    MFG

    Maruu
     
  16. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Re: Re

    Habs bei ebay für ~110 Sofortkauf gesichtet. Allerdings ohne Festplatte. Bei günstiger oder so hab ich aber noch nicht geguckt. Es gibt BTW auch noch eine Variante, an die man wiederumg einen USB-Massenspeicher anschliesst, ist aber nur unwesentlich billiger.

    Gruß,
    Enrik
     
  17. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Mhhm ok, de sis ne Menge Kohle, aber wernn das ned viel Strom frisst wäre des echt klasse. Aber da mein Konta grad stark gegen NULL geht
    (lim von Konto -> 0 für t=November) wird das wohl vorerst nixx, dohh!

    MFG

    Maruu
     
  18. TWELVE

    TWELVE Aktives Mitglied

    Registriert seit:
    3 Okt. 2004
    Beiträge:
    940
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Mal ehrlich, das macht doch alles keinen Sinn.Dann holt man sich doch lieber gleich einen vernünftigen Router, der diese Features alle schon eingebaut hat.Z.b. den Claxan SA-113 oder den Ovislink WMU-9000VPN

    Grüße

    TWELVE
     
  19. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Eigendlich ja, aber da fehlt halt leider das VOIP, was an der FritzBox ganz nett is!

    MFG

    Maruu
     
  20. TWELVE

    TWELVE Aktives Mitglied

    Registriert seit:
    3 Okt. 2004
    Beiträge:
    940
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ist eben die Frage, wo die Prio drauf liegt.Nur um VoIP zu nutzen, braucht man ja nicht auf einen vernünftigen Router zu verzichten.So ein ATA Teil tut das auch, und QoS beherrschen bessere Router auch.Insofern muß man halt wissen, wo man hintendiert.Die Fritz wird bei allen Verbesserungen, an denen viele hier so großartig arbeiten, so einen all-one-server-router nie ersetzen können.Dafür bräuchte sie wenigstens einen Platten-fähigen USB Anschluß.Aber ich gebe zu, ich habe auch schon mit dem Gedanken gespielt.Naja wird sich zeigen, was man da noch alles drin unterbringen kann.


    Grüße

    TWELVE