Shell-In-A-Box Problemchen

B

bilbo_b

Guest
Hallo zusammen,

ich hab mir ein neues Image mit Shell-In-A-Box erzeugt. Nach ein paar Verständnisproblemen, hab ich es nun ans Laufen bekommen. Allerdings musste ich das Häkchen bei "SSL deaktivieren" setzen, so das ich derzeit nur eine http, statt https Session hin bekomme. Ansonsten lies der Dienst sich nicht starten. Nun habe ich ein eigenes Zertifikat, was ich einbinden möchte. Mit lighttpd läuft es auch wunderbar. Aber mit Shell-In-A-Box scheinbar nicht. Ich entferne den Haken bei "SSL deaktivieren", daraufhin erscheint die Textarea für das Zertifikat, ich kopiere es dort hinein und klicke auf "Übernehmen". Anschließend wird Shell-In-A-Box gestoppt, angeblich die Config geschrieben und Shell-In-A-Box wieder gestartet. Nun ist der Haken aber wieder gesetzt und ich habe keine Verschlüsselung.

Das zweite Problem hat eher etwas mit dem Linux der Box zu tun. Ich logge mich mit einem der boxusr** ein, was auch klappt aber erhalte die Fehlermeldung "login: can't change directory to '/home-not-used'". Wie kann ich das Homeverzeichnis des Users ändern? usermod gibt es nicht. Oder muss ich mir einen eigenen User anlegen? Wie gebe ich dort dann das Homeverzeichnis an? Im Beispiel auf der Wiki hab ich zum Thema Homeverzeichnis nicht wirklich etwas gefunden.
 
Das SSL Problem konnte ich teilweise lösen. Ich hab erst wieder alles auf "Standard" gesetzt, danach konnte ich SSL mit meinem Zertifikat aktivieren. Allerdings meckert Firefox nun an der Verschlüsselung rum: ssl_error_no_cypher_overlap. Laut ein wenig googlen, wurde das Problem wohl in neueren Versionen von Shell-In-A-Box gepatcht. Kann man diese gepatchte Version bitte in das aktuelle Freetz übernehmen? Oder kann ich das selbst tun? Wenn ja, wie muss ich vorgehen?
 
Moin

Ich nutze die Binary die es hier im Forum gibt als CGI mit busybox httpd ohne SSL.
Deswegen kann ich dir nur einen Tip zu /etc/passwd geben: Leg einen extra Benutzer für shellinabox an.
Es ist auch nicht verkehrt vorher /etc/shadow zu löschen und root ein Passwort neuzuvergeben. ;)
Code:
passwd -a md5 root

/etc/passwd
Code:
nobody:PASSWORT__HASH:65535:0:nobody:/var/media/NEW_LINK/nonexistent:/var/media/NEW_LINK/bin/ash

Um eine erweiterte SHELL zu benutzen müsste für obiges Beispiel /etc/shells übermountet werden mit...
shells
Code:
/bin/sh
/bin/ash
/var/media/NEW_LINK/bin/sh
/var/media/NEW_LINK/bin/ash
übemounten...
Code:
mount -o bind shells /etc/shells
...rückgängigmachen...
Code:
umount  /etc/shells

Dasselbe gilt für /etc/profiles, falls du die Fehlermeldungen nicht sehen möchtest...
Code:
touch profiles
mount -o bind profiles /etc/profiles

...hoffe das hilft dir
 
Zuletzt bearbeitet:
Ahhh, Danke, das hat mich auf den richtigen Weg gebracht. Hab jetzt den User angelegt mit:
Code:
adduser username -h /var/media/ftp/UStor01/userhome -s /bin/sh
und danach das Passwort mit der Rudishell geändert:
Code:
(echo newpassword;sleep 1;echo newpassword) | passwd username
Nebenbei dann mal noch das rootpassort geändert. Dann werd ich Shell-In-A-Box mal nur starten, wenn ich auch wirklich was machen will. Ist mir sonst zu heftig, sowas ohne Verschlüsselung offen zu lassen. Aber geil ist das Teil auf jeden Fall. Im Firefox geht leider aber kein Copy&Paste :-( Also PuTTY / KiTTY ersetzt es defintiv nicht.
 
Da haste Recht. Fehlendes Copy'n'Paste fürs Clipboard nervt.
Kannst du überhaupt was erkennen? Ohne extra CSS seh ich nur grau auf weiß.

SIAB Parameter für CSS...
Code:
--css siab_wb.css --user-css Green:+siab_gb.css

siab_wb.css
Code:
*{
font-size:16px;
}
#vt100 #cursor.bright {
background-color:green;
color:green;
}
#vt100 #scrollable {
color:white;
background-color:black;
}

siab_gb.css
Code:
*{
font-size:16px;
}
#vt100 #cursor.bright {
background-color:rgb(255,0,0);
color:rgb(255,0,0);
}
#vt100 #scrollable {
color:rgb(0,255,0);
background-color:black;
}
 
Zuletzt bearbeitet:
Also die Farben sind völlig OK für mich. Ich hab schwarze Schrift auf weißem Grund. Ich brauch das Ding nur, um eine SSH Verbindung auf andere Kisten zu machen. Daher ist mir die Shell auf der Fritte eigentlich Hupe. Hintergrund ist, das ich von manchen Einwählknoten nur Webzugriff hab und Gottseidank auch kein Java. Mit dem Ding hier, kann ich aber SSH im Browser ohne AddOns haben und mich so gut wie auf jeden meiner Hosts verbinden. Um schnell mal nen Dienst neu zu starten oder eine Plesk Installation zu fixen reicht es also allemal. Selbst der MC funktioniert richtig gut, was mich echt umgehauen hat. Alle Achtung.

Mal schauen ob mein User den Reboot heute Abend überlebt :) Hab noch nie Linux User auf der Fritte angelegt :)
 
Tip für Konsolenremoteadministration: Schau dir mal tmux oder screen an ;)
Das sind sogenannte Konsolenmultiplexer die attached und detached werden können.
In meine tmux Session attache ich mich sofort nach login, egal ob aus shellinabox oder ssh.
Erst ein Reboot der Box killt die gesamte Session.
 
Danke für den Tipp. Screen kannte ich schon, hab das aber nie ernsthaft gebraucht. Ist ja nur für Hobbyzwecke. Aber Tmux schaut noch besser aus.
 
Ahhh wenn man sich die Menüleiste im Firefox einblendet und dort auf Bearbeiten > Einfügen geht, funktioniert es auch im Firefox! Muss man erst mal drauf kommen. Wäre trotzdem froh, wenn nun noch SSL richtig möglich wäre. Dann wäre es perfekt für mich.
 
Das Programm war nach meiner Erinnerung recht "wählerisch", was die Zertifikate betrifft. Es muss auf jeden Fall die komplette Zertifikats-Kette in die Datei. Am einfachsten generierst du dir das Zertifikat selbst mit der GUI, sonst musst du etwas "probieren", warum es harkt.
Einen (aktuellen) Patch zu deinem Problem hab ich nicht gefunden, könntest du die eventuell angeben?
Wenn du Patche für 2.11 meinst ("Assume a private key is RSA if the header does not specify a type"), die sind m.W. in der von freetz genutzen 2.14-er Version drin.
 
Ach im Freetz ist die 2.14? Wenn ich in die "About" Box schaue, gibt er mir die 2.10 an. Deswegen ja meine Frage nach den Patches. Ich verwende den aktuellen Trunk von Freetz.

Mein Zertifikat ist von StartSSL für meine Domain, die via DynDNS auf meine FritzBox zeigt. Im lighttpd ist damit alles schick. Es ist der RSA PRIVATE KEY und das Zertifikat hinterlegt. Dort zumindest reicht das aus. Ich werd mal noch versuchen das CA mit zu hinterlegen.
 
Ich hab das Cert jetzt nach allen möglichen Shellinabox Anleitungen verkettet und eine PEM erzeugt aber mit SSL krieg ich das Ding nicht ans Laufen.
 
Hast du es mit dem "integrierten Zertifikatzerzeuger" versucht?

generate_cert.sh:
Code:
cat << 'EOF' > /tmp/openssl_shellinabox.cnf
 [ req ]
 default_bits           = 1024
 default_keyfile        = keyfile.pem
 distinguished_name     = req_distinguished_name
 attributes             = req_attributes
 prompt                 = no
 output_password        = mypass

 [ req_distinguished_name ]
 C                      = DE
 ST                     = Staat
 L                      = Location
 O                      = Organisation
 OU                     = Organisationseinheit
 CN                     = fritz.box
 emailAddress           = [email protected]
 [ req_attributes ]
 challengePassword      = challengepwd
EOF

openssl_req  -x509 -nodes -new -newkey rsa:1024 -keyout /tmp/shellinabox_certificate.pem -out /tmp/shellinabox_certificate.pem -days 7300 -subj "/CN=fritz.box/" -config /tmp/openssl_shellinabox.cnf

rm /tmp/openssl_shellinabox.cnf
 
Wie lautet denn der Pfad von generate_cert.sh? Ich kann das File nicht finden. However, aus der Freetz GUI für Shellinabox kann ich ein Zertifikat erzeugen. Das wird erstellt und in der Textarea angezeigt. Aber auch damit hab ich genau das gleiche Problem. Die Seite wird nicht aufgerufen. SSL ist im Browser per Policie deaktiviert und TSL Min Version ist 1.
 
Ich mag nicht mehr... hab jetzt lighttpd als Proxy für Shell-In-A-Box eingerichtet und nutze die Verschlüsselung davon. Somit hab ich auch nicht sinnlos nen weiteren Port offen.
 
generate_cert.sh wird von der GUI aufgerufen, um das Zert zu erzeugen. Ich schaue mir das bei Gelegenheit mal an, woran es hängen könnte, komme aber im Moment nicht dazu. Von daher ist es gut, dass du eine andere Lösung gefunden hast.
Für welche Box hast du das denn gebaut?!?
 
Für die 7390 mit aktualisiertem Trunk vom Sonntag. Als Firmware ist nun die 6.23 aktiv. Aber passt soweit erst mal. Irgendwie gefällt mir die Lösung über den Proxy sogar noch besser.

BTW: Hab bei der Gelegenheit versucht Freez über den lighttpd Proxy freizugeben aber das klappt irgendwie nicht. Ich nehme an, ich muss noch zusätzliche redirects dazu einbauen. Hat das schon mal jemand gemacht? Ich weiß, falsches Thema hier aber wer weiß...
 
Meinst du Reverse Proxy?

Sowas mache ich auf Server, die lokal laufen und nicht über Portfreigaben zu ereichen sind/sein sollen.
Dann gehen sogar localhost Server, aus Sicht des Webservers.
Wenn die allerdings ab Serverroot suchen wirds problematisch.
Dann muss man eventuell mit Symlinks die Ordnerstruktur des anderen Webservers im Serverroot rekonstruieren.
 
Also ich habe es hier ganz schnell zum Laufen bekommen. Kompiliert, geflasht, Zertifikat in der GUI generiert und dann unter https://fritz.box:4200 erreicht. Sorry, aber ich verstehe leider nicht, woran es bei Dir scheitert.
 
Das scheint nur zu funktionieren, wenn der Browser, welcher zugreift SSL zulässt. Das ist aber bei mir in keinem Browser der Fall. SSL ist inaktiv, lediglich TLS mit Minimalversion 1 ist erlaubt. Vielleicht kann Shell-In-A-Box gar kein TLS? Egal über den Reverse Proxy gehts.
 

Zurzeit aktive Besucher

Keine Mitglieder online.

Statistik des Forums

Themen
246,146
Beiträge
2,246,880
Mitglieder
373,654
Neuestes Mitglied
hstoff
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.