Webserver + Portfreigabe realisiert!

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
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

pfeffer

Mitglied
Mitglied seit
26 Okt 2004
Beiträge
755
Punkte für Reaktionen
0
Punkte
16
tar xvf mini_http-compiled.tar
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

pfeffer

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

Gruß,
Pfeffer.
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
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
 

pfeffer

Mitglied
Mitglied seit
26 Okt 2004
Beiträge
755
Punkte für Reaktionen
0
Punkte
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.
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
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:[email protected]:/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
 

Novize

Moderator
Teammitglied
Mitglied seit
17 Aug 2004
Beiträge
20,872
Punkte für Reaktionen
67
Punkte
48
Marruu schrieb:
Leider hab ich es bis jetzt noch nicht hinbekommen einen ftpServer oder SSH zu kompilieren.
Aber wenn große Nachfrage besteht werd ich mich weiterhin drum bemühen.
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?
 

Kermit

Neuer User
Mitglied seit
24 Jul 2004
Beiträge
173
Punkte für Reaktionen
0
Punkte
16
Novize schrieb:
Marruu schrieb:
Leider hab ich es bis jetzt noch nicht hinbekommen einen ftpServer oder SSH zu kompilieren.
Aber wenn große Nachfrage besteht werd ich mich weiterhin drum bemühen.
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?
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 ?
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
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
 

Novize

Moderator
Teammitglied
Mitglied seit
17 Aug 2004
Beiträge
20,872
Punkte für Reaktionen
67
Punkte
48
Maruu schrieb:
Massenspeicher kannste vergessen da das integrierte USB Interface ein Slave interface ist
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...
 

rollo

IPPF-Promi
Mitglied seit
5 Jul 2004
Beiträge
8,288
Punkte für Reaktionen
1
Punkte
38
Du könntest ja ein Netzwerkvolume per NFS mounten, sofern man das auf die Box kriegt.

jo
 

Novize

Moderator
Teammitglied
Mitglied seit
17 Aug 2004
Beiträge
20,872
Punkte für Reaktionen
67
Punkte
48
rollo schrieb:
Du könntest ja ein Netzwerkvolume per NFS mounten, sofern man das auf die Box kriegt.
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.
 

enrik

Neuer User
Mitglied seit
26 Okt 2004
Beiträge
127
Punkte für Reaktionen
0
Punkte
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
 

Kermit

Neuer User
Mitglied seit
24 Jul 2004
Beiträge
173
Punkte für Reaktionen
0
Punkte
16
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
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
0
Re

@ enrik

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

MFG

Maruu
 

enrik

Neuer User
Mitglied seit
26 Okt 2004
Beiträge
127
Punkte für Reaktionen
0
Punkte
16
Re: Re

Maruu schrieb:
@ enrik
Wat soll dat ding von ALLNET denn kosten hört sich nämlich interessant an.
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
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
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
 

TWELVE

Aktives Mitglied
Mitglied seit
3 Okt 2004
Beiträge
940
Punkte für Reaktionen
0
Punkte
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
 

Maruu

Neuer User
Mitglied seit
21 Apr 2004
Beiträge
72
Punkte für Reaktionen
0
Punkte
0
Eigendlich ja, aber da fehlt halt leider das VOIP, was an der FritzBox ganz nett is!

MFG

Maruu
 

TWELVE

Aktives Mitglied
Mitglied seit
3 Okt 2004
Beiträge
940
Punkte für Reaktionen
0
Punkte
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
 

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,053
Beiträge
2,018,290
Mitglieder
349,356
Neuestes Mitglied
fischersfritzefischersfri