Freetz .pem installieren

Astrong

Neuer User
Mitglied seit
28 Mai 2007
Beiträge
51
Punkte für Reaktionen
0
Punkte
6
Hi,

kurze und knappe Frage:

-Ich möchte ein .pem Zertifkat auf die FritzBox installieren, damit mein Transmission einen https:// tracker akzeptiert

Hat jemand eine Idee wie ich das mache?

danke
 
Nicht genau, aber wenn ich das richtig sehe, nutzt das Programm libcurl für ssl?
Dann kopiere die vorbereitete ca.pem auf die Box (im einfachsten Fall mit der Rudishell nach /tmp/my.pem laden).

Dann sollte der Aufruf von transmission mit "CURL_CA_BUNDLE=/tmp/my.pem <hier der normale Aufruf>" gehen.
Geht das nicht auch über die Web-Oberfläche?
 
hi danke für die Antwort.
Was genau meinst du mit CURL_CA_BUNDLE? Soll ich das so in der sh-shell ausführen? oder soll ich das so in die transmission.cfg schreiben?

danke
 
Irgendwie musst du doch das Programm starten, denn das geht doch nicht über eine Freetz-GUI, oder?
Dann einfach den Teil "CURL_CA_BUNDLE=/tmp/my.pem" davor setzen, wenn du es aufrufst.

Wenn der Parameter in der programm-eigenen GUI zu stetzen wäre, wäre das natürlich noch einfacher...
 
hmm ne find leider keine Startparameter :(
 
O.k., wie startest du denn das Programm? Hast du nur das "binary-only" transmission gewählt oder auch "transmission-cgi"?
 
transmission full also alles, starte es aber über webfrontend von freetz, also reine gui
 
O.k., dann versuche mal das:
Code:
# Kopie des Startscriptes, in dem TR_CURL_SSL_VERIFY und CURL_CA_BUNDLE gesetzt werden
sed '/start()/aexport TR_CURL_SSL_VERIFY=y; export CURL_CA_BUNDLE=/var/tmp/my.pem'  /etc/init.d/rc.transmission > /tmp/rc.transmission
# Dieses neue Startscript ausführbar machen
chmod +x /tmp/rc.transmission
# Dieses neue Startscript nutze
mount -o bind /tmp/rc.transmission /etc/init.d/rc.transmission
Geht es dann? Vorausgesetzt, in /var/tmp/my.pem liegt das passende File...
 
O.k., dann versuche mal das:
Code:
# Kopie des Startscriptes, in dem TR_CURL_SSL_VERIFY und CURL_CA_BUNDLE gesetzt werden
sed '/start()/aexport TR_CURL_SSL_VERIFY=y; export CURL_CA_BUNDLE=/var/tmp/my.pem'  /etc/init.d/rc.transmission > /tmp/rc.transmission
# Dieses neue Startscript ausführbar machen
chmod +x /tmp/rc.transmission
# Dieses neue Startscript nutze
mount -o bind /tmp/rc.transmission /etc/init.d/rc.transmission
Geht es dann? Vorausgesetzt, in /var/tmp/my.pem liegt das passende File...


https://www.xxx.tld:444
Announce error: Could not connect to tracker - Today 06:31:42 PM
Next announce in 30 min 6 seconds
[...]
schade
scheint nicht zu klappen, er Eintrag wurde auch ins startscript gesetzt und der pfad passt auch :(

root@fritz:/var/tmp# export | grep CURL
export CURL_CA_BUNDLE='/var/tmp/myt-hds-ca.pem'
export TR_CURL_SSL_VERIFY='y'
 
Zuletzt bearbeitet:
Du könntest noch versuchen, "TR_CURL_VERBOSE=1" zu setzen, weiß aber nicht, ob/wohin das Programm loggt...

Code:
sed -i '/TR_CURL_SSL_VERIFY/aexport TR_CURL_VERBOSE=1' /tmp/rc.transmission
 
hmpf, klappt leider nicht.
 
Tja, dann ... Wenn mir jemand den Aufruf von Tranmission mit ergänztem CA-Zertifikat nennt, kann ich das gerne einbauen. Aber da ich das Programm weder kenne noch nutze bin ich auf den Input angewiesen...
 
Das Problem wird sich dadurch nicht lösen, denn auch gnutls benötigt das Zertifikat.

Gruß
Oliver
 
das kann doch nicht sein -.-

wie kann ich dem system mitteilen, dass er dieses zertifikat erlauben soll? ... es gibt zwar vom Herausgeber ein bash-script aber das klappt leider nicht, da die verzeichnisstruktur ja leider völlig anders ist.
 
Was kann nicht sein?!?
Du kannst doch nicht erwarten, dass hier jemand ein Programm, dass er nicht nutzt erstmal "lernt", um dir einen nicht näher beschriebenen Fehler einzugrenzen?!?

Wie du dem System mitteilst, welches Zertifikat es nutzen soll, habe ich doch oben lang und breit erklärt?!?
Kopiere es in einen Ordner auf der Box und setze dann "CURL_CA_BUNDLE" auf diesen Wert.

Und wenn du sicher weißt, dass du "gnutls" benötigst, musst du selbst Hand anlegen, denn für die SSL-Version in libcurl gibt es zwar eine Option, aber nicht für gnutls.

Aber bist du denn sicher, dass das der Fehler ist? Bisher habe ich noch kein Log gesehen, aus dem sich das ergäbe.

Bitte starte doch erstmal transmission auf der Shell mit "-f" (im Vordergrund, nicht als Daemon) und schau dann nach den Fehlern.

Auf die Schnelle mal ein Entwurf, der dir auch hier noch die Arbeit abnimmt
Code:
cat << 'EOF' >/tmp/addphrase
echo "export CURL_CA_BUNDLE='/tmp/my.pem'; export TR_CURL_SSL_VERIFY='y' ; export TRANSMISSION_WEB_HOME=\"$TRANSMISSION_WEBDIR\"; $DAEMON_BIN -f $OPTIONS --config-dir $CONFIGDIR --download-dir $DOWNLOADDIR" > /tmp/transstart
EOF

X=$(cat /tmp/addphrase)

sed "/chown.*PID_FILE/a $X" /etc/init.d/rc.transmission > /tmp/rc.transmission

sh /tmp/rc.transmission start
sleep 1
killall transmission-daemon

sh /tmp/transstart
 
natürlich kann das sein, dass hier jemand ein Programm lernt, welches er nicht benutzt !!!
Ne Spass beiseite.
Vielen Dank für das kleine Script, allerdings war ich soweit schon bzw. habe es hier nicht gepostet, da es keinen detaillierten Fehler gibt:

[09:15:09.227] debian.wheezy.iso Announcing to tracker (announcer.c:1484)
[09:15:10.230] debian.wheezy.iso Could not connect to tracker (announcer.c:982)
[09:16:51.230] debian.wheezy.iso Scrape error: Could not connect to tracker (announcer.c:1214)
[09:16:51.231] debian.wheezy.iso Retrying scrape in 900 seconds. (announcer.c:1223)

Es folgt leider kein weiterer Fehler, der mir mehr erzählt :( leider


kann man vllt. das Zertifikat von extern bestätigen lassen? Bzw. dass er vor der Tracker-Anfrage vllt. eine Umleitung auf ein anderes Linux-System und dort eine Bestätigung einholt?
 
Zuletzt bearbeitet:
Tja, steht denn vorher im Log, dass transmission dein Zertifikat auch nutzt, so dass der Parameter schonmal stimmt?
Kommt auch mit "TR_CURL_VERBOSE=1" nicht mehr? Das sieht bei der Ubuntu-Seite, die du auch genannt hast, ganz anders aus...

Es gab doch auch die Variable TR_CURL_SSL_VERIFY, war die nicht dafürdie Überprüfung der HTTPS-Seite überhaupt einzuschalten, so dass man sie damit (per "unset TR_CURL_SSL_VERIFY ") auch "ausschalten" kann?!?
 
nope, es kommt leider garnichts von wegen ssl

Starting transmission daemon ... done.
[12:33:37.430] Transmission 2.33 (12565) started (session.c:708)
[12:33:37.431] Cache Maximum cache size set to 2.00 MiB (128 blocks) (cache.c:258)
[12:33:37.432] RPC Server Adding address to whitelist: 127.0.0.1 (rpc-server.c:805)
[12:33:37.433] RPC Server Adding address to whitelist: 192.168.178.* (rpc-server.c:805)
[12:33:37.434] RPC Server Serving RPC and Web requests on port 127.0.0.1:9091/transmission/ (rpc-server.c:999)
[12:33:37.434] RPC Server Whitelist enabled (rpc-server.c:1003)
[12:33:37.435] RPC Server Password required (rpc-server.c:1006)
[12:33:37.436] Bound socket 13 to port 54321 on 0.0.0.0 (net.c:373)
[12:33:37.436] Port Forwarding Stopped (port-forwarding.c:181)
[12:33:37.437] Using settings from "/var/media/ftp/uStor01/bittorrent/config" (daemon.c:495)
[12:33:37.438] Saved "/var/media/ftp/uStor01/bittorrent/config/settings.json" (bencode.c:1721)
[12:33:37.438] Saved pidfile "/var/run/transmission.pid" (daemon.c:507)
[12:33:37.439] transmission-daemon requiring authentication (daemon.c:515)


ah jetzt kam ein error, nachdem ich während der prozess lief nochmal expliziet export habe (scheinbar hat er die exports gelöscht...)

root@fritz:/var/tmp# export TR_CURL_SSL_VERIFY='y' && export CURL_CA_BUNDLE='/tmp/my.pem' && export TR_CURL_VERBOSE='1'
root@fritz:/var/tmp# export | grep CURL
export CURL_CA_BUNDLE='/tmp/my.pem'
export TR_CURL_SSL_VERIFY='y'
export TR_CURL_VERBOSE='1'


[...]
could not connect to tracker..
* Protocol https not supported or disabled in libcurl
[...]

root@fritz:/var/tmp# ls -la my.pem
-rw-r--r-- 1 root root 1692 May 10 12:37 my.pem

scheinbar kann mein curl kein ssl?
 
Zuletzt bearbeitet:
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.