SSL-Backend Login

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

SSL-Backend Login

Beitrag von joergsart » Fr 7. Jul 2006, 18:40

Hallo,

habe alle SSL-Probleme im Forum durchforstet, bekomme das Login Problem unter SSL aber nicht in den Griff.

Die config.php ist an den 3 besagten Stellen richtig auf https:// geändert:

/* The web server path to the contenido backend */
$cfg['path']['contenido_fullhtml'] = 'https://ssl02.de/paidbox.eu/contenido/';

/* The web path to the desired WYSIWYG-Editor */
$cfg['path']['wysiwyg_html'] = 'https://ssl02.de/paidbox.eu/contenido/e ... /tinymce2/';

/* The web path to all WYSIWYG-Editors */
$cfg['path']['all_wysiwyg_html'] = 'https://ssl02.de/paidbox.eu/contenido/external/wysiwyg/';


Nach Login-Versuch unter https://ssl02.de/paidbox.eu/contenido/index.php
(SSL auf Login-Seite läuft)

erscheint folgender Link im Browser:
https://ssl02.de/contenido/index.php?co ... 0473de9b49
und eine "Objekt nicht gefunden"-Seite.

Weiss jemand Rat?

Besten Gruß in die sommerliche Runde.

emergence
Beiträge: 10602
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » So 9. Jul 2006, 14:28

ähm eigentlich gibts nur diese 3 positionen...
gehts bei dir in der zwischenzeit ?
falls nicht müsste man das nach bugs verschieben, damit man es sich mal ansehen kann...

contenido version ?
steht vielleicht was im errorlog ?
*** make your own tools (wishlist :: thx)

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Mo 10. Jul 2006, 10:50

Version 4.6.8

Ne, leider geht's immer noch nicht.. ist mir echt ein Rätsel. Ich habe auch schon alle Kombinationen zwischen http/https-Ordner bei der Installation durch. Mein Webhoster sagt, alle Daten komplett in "httpdocs", nicht "httpsdocs" installieren und über "https://ssl02.de/paidbox.eu/contenido/"aufrufen. Anscheinend ist der https-Ordner weitergeleitet. Auf der erscheinenden Login-Seite ist dann auch ein Schloß unten im Browser zu sehen, auf dem Webserver "scheint" also alles seine Richtigkeit zu haben. Aber ab dem Einlogversuch geht's dann nicht weiter.

Der Ordner "Logs" in Contenido ist leer, dort sind auch die Errorlogs zu finden, nehme ich an?

Es sieht danach aus, dass etwas in Contenido mit der Variablenübergabe nicht ganz stimmt, allerdings funktioniert der Backend-Login, wenn ich nicht über SSL in den Backendbereich einlogge, die Domain bleibt vor "/contenido/..." erhalten.

Brauche in nächster Zeit eine Lösung, da mein Kunde nur SSL-geschützt in Contenido arbeiten will, was man auch verstehen kann. In Bezug auf das Thema Sicherheit sind ja viele sensibilisiert.

Vielleicht könnt Ihr Contenido einmal unter SSL laufen lassen und den Fehler nachvollziehen...

Besten Gruß

emergence
Beiträge: 10602
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 10. Jul 2006, 11:36

ich kann das verhalten schwer zuordnen.. könnte auch ne server konfigurationssache sein...

ansatzpunkt ist
in
conlib/session.inc folgende code passage

Code: Alles auswählen

  function self_url() {
    global $_SERVER;

    return $this->url($_SERVER["PHP_SELF"] .
      ((isset($_SERVER["QUERY_STRING"]) && ("" != $_SERVER["QUERY_STRING"]))
        ? "?" . $_SERVER["QUERY_STRING"] : ""));
  }
anscheinend liefert bei dir $_SERVER["PHP_SELF"]
/contenido/...
und nicht
/paidbox.eu/contenido/...
retour...

nachvollziehen kann ich es so gesehen nicht wirklich...

eine änderung in der contenido/main.loginform.php bringt in dem sinne wenig, da dieses loginformular von unterschiedlichsten dateien inkludiert werden kann... einen hardcoded dateinamen dort reinsetzen, wird dann noch andere fehlermeldungen bringen...

ein login könnte funktionieren wenn du in
main.loginform.php

Code: Alles auswählen

<form name="login" method="post" action="<?php echo $this->url(); ?>">
oder so ähnlich durch

Code: Alles auswählen

<form name="login" method="post" action="<?php echo $GLOBALS["sess"]->url("index.php") ?>">
ersetzt...
wobei ich da sagen muss das ist weder getestet, noch empfohlen...

ich würd auf alle fälle mal den provider fragen warum

Code: Alles auswählen

<?php
echo $_SERVER['PHP_SELF'];
?>
in beiden verzeichnissen das selbe ausgibt (also im httpdocs und httpsdocs)

seitens contenido wie gesagt wird sich das auch mehrfach auswirken, da ziemlich sicher $_SERVER['PHP_SELF'] mehrfach verwendet wird...
*** make your own tools (wishlist :: thx)

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Mo 10. Jul 2006, 17:35

vierlen dank für den lösungsansatz, werde es mal damit versuchen
- ich poste hier aber mal die antwort die webhosting-dienstleisters, die ich zu der problematik inzwischen bekommen hab':


ich habe das ganze jetzt auf:

https://www.paidbox.eu/contenido/

abgelegt. Es gibt wohl Probleme mit dem SSL-Proxy und dem Script.

https liegt im httpdocs Ordner

Das ganze wird jetzt auch per SSL angesprochen.

Viele Skripte arbeiten mit dem SSL- Proxy. Warum jedoch hier eine
Abfrage gemacht wird:

$_Server['PHP_Self']

ist mir ein Rätsel.


Alternativ können wir dem Kunden eine eigene IP-Adresse & SSL- Zertifikat anbieten.

"

der login funktioniert nun nach den änderungen des providers, ssl ist aktiv - allerdings nur so lange, bis ich einen artikel anklicke und editieren will, dann verschwindet das schloß im internetexplorer, also kein ssl mehr.

für mich stellt sich jetzt die frage, ob ein eigenes zertifikat + eigene ip wie vom provider vorgeschlagen da überhaupt etwas bringt oder ob ich deinen ansatz mal versuche.

vielleicht sollte man bei contenido doch etwas ändern, um besser mit ssl-proxys klar zu kommen, das problem wird noch häufiger auftauchen, denke ich...


beste grüße.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mo 10. Jul 2006, 20:31

Also ein Rätsel ist es - wenn man den obigen Code berücksichtigt - sicherlich nicht.

So soll die Variable halt den aktuellen Pfad (inkl. Dateiname) relativ zum Root liefern:
'PHP_SELF'
The filename of the currently executing script, relative to the document root. For instance, $_SERVER['PHP_SELF'] in a script at the address http://example.com/test.php/foo.bar would be /test.php/foo.bar. The __FILE__ constant contains the full path and filename of the current (i.e. included) file.

If PHP is running as a command-line processor this variable contains the script name since PHP 4.3.0. Previously it was not available.
Kannst ja mal statt PHP_SELF eine der folgenden Varianten ausprobieren:
REDIRECT_SCRIPT_URL
REDIRECT_URL
SCRIPT_URL

Dazu findet sich auch hier eine entsprechende Information:
http://www.php.net/manual/en/reserved.v ... les.server

Z.B.:
Warning:
$_SERVER['PHP_SELF'] and $_SERVER['SCRIPT_NAME'] may not always be set correctly.
Some web hosts implement php as a CGI in such a way that they can turn it on or off for each virtual domain. Several $_SERVER and $_ENV variable values may be incorrect for documents in subdirectory subdomains of these virtual domains.

An include-file function or constant, instead of PHP_SELF or some other predefined variable throughout a website, will make it easier to "fix" an entire website in case something changes.
<?php
function true_url_path() {
// Pick the predefined variable that works on your server
return $_ENV['SCRIPT_URL'];
}
?>
Or
<?php
// Pick the predefined variable that works on your server
define("TRUE_URL_PATH", $_ENV['SCRIPT_URL']);
?>
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

emergence
Beiträge: 10602
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 11. Jul 2006, 09:23

ähm, allgemein

$_SERVER["PHP_SELF"] liefert an sich den pfad des script das ursprünglich aufgerufen wurde..

sagen wir mal wir haben
folgende url:
http://server/contenido/index.php

server pfade:
usr/www/httpdocs/contenido/index.php
und eine datei die in der index.php inkludiert wird, die sich in
usr/www/httpdocs/contenido/includes/file.php
befindet. in der file.php wird nun $_SERVER["PHP_SELF"] verwendet...

dann liefert $_SERVER["PHP_SELF"] -> /contenido/index.php retour...

__FILE__ zu verwenden fällt flach da usr/www/httpdocs/contenido/includes/file.php retour geliefert werden würde...

$_SERVER["REQUEST_URI"] zu verwenden wird ebenso falsch sein wie PHP_SELF

problem hier wird der SSL Proxy sein...
wir haben da einen pfad wie:

usr/www/httpdocs/contenido/ (serverpfad) -> http://server/contenido/
usr/www/httpsdocs/contenido/ -> https://ssl02.de/paidbox.eu/contenido/

und in beiden fällen liefert PHP_SELF -> /contenido/filename.php retour...

wenn bei zweiterer variante /paidbox.eu/contenido/filename.php geliefert werden würde, wäre das problem gelöst...

eine änderung innerhalb von contenido, na ja da wüsste ich momentan nicht wirklich welche man da vornehmen sollte, um diesen sachverhalt allgemein gültig abfangen zu können....

man muss den provider fragen ob er eine möglichkeit hat das entsprechend seitens server konfiguration zu korrigieren...

die antwort des providers die da gekommen, ist geht somit eigentlich komplett am sachverhalt vorbei:

> https liegt im httpdocs Ordner
ähm wie was ? hieß doch vorher httpsdocs oder nicht ?
> ist mir ein Rätsel
nein ist zwar eigentlich nicht, deutet aber darauf hin, das da jemand sitzt der nicht weiss worum es geht... (ist schlecht, soll aber keine beleidigung sein..)

> Alternativ können wir dem Kunden eine eigene IP-Adresse & SSL- Zertifikat anbieten.
aha... na wenn es damit dann korrekt laufen würde und sonst nicht, wäre das ein ansatz...
das kommt aber nur in betracht wenn das verhalten seitens provider geklärt wurde...
*** make your own tools (wishlist :: thx)

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Di 11. Jul 2006, 11:05

hmmm,

würde die lösung auch beim provider sehen. zur zeit komme ich ja ins backend, aber SSL deaktiviert sich bei der artikelbearbeitung und eigentlich nur hierbei.

dieses phänomen wird wohl auch mit den serverpfaden zusammenhängen, nehme ich an....

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Di 11. Jul 2006, 11:31

jetzt kriege ich auch noch folgende antwort vom provider:

"
Guten Tag,

eine Lösung wäre wenn folgendes eingebaut würde:

$_Server['SERVER_NAME']
$_Server['PHP_Self']


Siehe http://www.paidbox.eu/test.php

"
...

emergence
Beiträge: 10602
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 11. Jul 2006, 11:58

ähm anhand dem beispiel

https://www.paidbox.eu/test.php
und
https://ssl02.de/paidbox.eu/test.php

sieht man das problem sehr schön...
in beiden fällen bekommt mal als ergebniss

www.paidbox.eu

zum anderen ändere den mandantenpfad im backend von http:// auf https://

du solltest dann in der ssl version bleiben...
*** make your own tools (wishlist :: thx)

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Beitrag von joergsart » Mi 12. Jul 2006, 10:25

danke emergence für den tip,

die änderung des mandantenpfads funktioniert. im backend bleibt die editierung jetzt geschützt. allerdings ist jetzt natürlich auch das gesamte frontend unter ssl, spätestens, wenn man im frontend auf einen Navigationslink klickt.

ist das bei contenido so, dass die editierung im backend und frontend entweder beide geschützt oder ungeschützt sind?

ich weiss nicht, ob du hier emfehlungen ausprechen kannst, aber hast du einen tip für einen guten und nicht zu teuren provider, der die servereinrichtung mit sicherheit anders handhabt und dieses problem mit ssl nicht auftreten würde?

bin mir nämlich fast sicher, dass mein kunde den jetzigen zustand so akzeptiert wird... stöhn.

Gruß...

emergence
Beiträge: 10602
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 12. Jul 2006, 11:16

ein freund von mir hat nen server und darauf laufen ausschließlich projekte von mir... ne empfehlung kann ich somit nicht wirklich geben...

ich hab aber mal nen hack gebastelt, der es zwar nicht in den offiziellen release geschafft hat, aber damit ist es möglich den backend editpath zum frontend webpath unterschiedlich zu halten...
-> http://www.contenido.org/forum/viewtopi ... 7588#27588
(ich halts noch immer für ne gute ergänzung)

würde vielleicht dein problem lösen... (ob das 1:1 so zu verwenden ist weiss ich aber nicht mehr...)
bei backend bearbeitung https:// im frontend http://
braucht man dann nur entsprechend in den mandanten einstellungen definieren (da kommt dann ein feld hinzu)
*** make your own tools (wishlist :: thx)

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mi 12. Jul 2006, 22:09

(ich halts noch immer für ne gute ergänzung)
Na dann ... habe ich es mal als Feature Request rübergerettet:
http://www.contenido.org/forum/viewtopic.php?t=13407

Könnte vielleicht ja auch gewisse JS-Probleme lösen, die ich ständig mit dem IE habe, wenn die Domains unterschiedlich sind... muss ich mir mal ansehen.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

joergsart
Beiträge: 34
Registriert: Do 19. Mai 2005, 23:48
Wohnort: Hamburg
Kontaktdaten:

Trennung SSL backend editpath / frontend webpath

Beitrag von joergsart » Mo 13. Nov 2006, 15:17

HerrB hat geschrieben:
(ich halts noch immer für ne gute ergänzung)
Na dann ... habe ich es mal als Feature Request rübergerettet:
http://www.contenido.org/forum/viewtopic.php?t=13407

Könnte vielleicht ja auch gewisse JS-Probleme lösen, die ich ständig mit dem IE habe, wenn die Domains unterschiedlich sind... muss ich mir mal ansehen.

Gruß
HerrB

Hallo Herr B,

möchte das Thema SSL hier nochmals kurz anschneiden.

Das Frontend läuft bei mir ohne SSL, ins Backend komme ich mit SSL. Sobald ich im Backend allerdings einen Artikel editiere, verschwindet das Schloss und SSL wird aufgehoben und bleibt aufgehoben, womit sich der Schutz erledigt hat.

Ist das obene beschriebene Feature ist in der 4.6.14 umgesetzt worden? Dort steht bei den Features ja etwas von "Administration -> System berücksichtigt nun auch https".

Keine Umstände, ich mache sonst eine Installation und teste es. Wenn doch Zeit irgendwo zu kaufe gäbe... :?

Grüße,
Jörg

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mo 13. Nov 2006, 17:14

Ist das obene beschriebene Feature ist in der 4.6.14 umgesetzt worden? Dort steht bei den Features ja etwas von "Administration -> System berücksichtigt nun auch https".
Der entsprechende Beitrag unter Bugs ist noch nicht gelockt - daher ist er noch offen.

Die Änderung bezog sich nur darauf, dass bei Betrieb via https immer rote Einträge in den Systemeinstellungen angezeigt wurden (da nur "http" berücksichtigt wurde).

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

Gesperrt