Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung PHP

GELÖST

Vorgeschaltete Login Seite

Mitglied: Seperion

Seperion (Level 1) - Jetzt verbinden

17.11.2010 um 19:31 Uhr, 3209 Aufrufe, 3 Kommentare

Hallo liebe Administrator Gemeinde....
Da ich bereits in der Vergangenheit immer gut von euch beraten wurde, möchte ich mich bei diesem Problem auch wieder vertrausensvoll an euch wenden.

Nur weil ich in ein paar Programmiersprachen recht bewandert bin, glaubt mein Chef das ich alle kann!
Wie dem auch sei....
Wir betreiben einen Webserver mit vielen verschiedenen Virtuellen Sites und Domänen.
Alle Usernamen (gleichermaßen FTP, Mail und noch ein paar andere) müssen systemweit eindeutig sein.
Als konseequenz erhält jeder User entsprechend seiner zugeordneten Domäne einen Präfix (wie z.B. Jk6-) woraus sich dann ein username wie präfix-user ergibt.
Wir besitzten für jede Domain unter www.meinedomain.de/webmail/login.php einen Link auf die installierte Version von Squirrelmail.

Äußerst unpraktisch dem User auch bei der Nutzung eines Webmailers einen Kryptischen Präfix zuzumuten.
Daher möchte unter jeder www.meinedomain.de/mail/login.php eine neue Loginmaske ablegen welche den Präfix (für den User unsichtbar) hinzufügt.
Vorzugsweise sollte dieser Präfix in einer extra Datei gesichert sein (zwecks einfacher Konfiguration für jeden), desswegen schreibe ich mein anliegen auch in den PHP-Teil des Forums.

Das problem scheint mir nicht unlösbar zu sein, da die login.php von Squirrelmail auch nur wenig beinhaltet, jedoch werd ich aus der Datei nicht schlau (genug).


Hier also die login.php von Sqirrelmail:
(Mir ist klar das das der generierte code aus dem PHP-File ist, wenn ich aber nicht allzu schepp liege müsste darin alles notwendige zu finden sein.)

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
02.
<html><head> 
03.
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"
04.
 
05.
 
06.
 
07.
 
08.
<meta name="robots" content="noindex,nofollow"
09.
 
10.
<title>SquirrelMail - Login</title><script language="JavaScript" type="text/javascript"
11.
<!-- 
12.
  function squirrelmail_loginpage_onload() { 
13.
    document.forms[0].js_autodetect_results.value = '1'; 
14.
    var textElements = 0; 
15.
    for (i = 0; i < document.forms[0].elements.length; i++) { 
16.
      if (document.forms[0].elements[i].type == "text" || document.forms[0].elements[i].type == "password") { 
17.
        textElements++; 
18.
        if (textElements == 1) { 
19.
          document.forms[0].elements[i].focus(); 
20.
	  //document.forms[0].elements[i].value = "text"
21.
          break
22.
23.
24.
25.
26.
// --> 
27.
</script> 
28.
 
29.
<!--[if IE 6]> 
30.
<style type="text/css"
31.
/* avoid stupid IE6 bug with frames and scrollbars *
32.
body { 
33.
    width: expression(document.documentElement.clientWidth - 30); 
34.
35.
</style> 
36.
<![endif]--> 
37.
 
38.
</head><body onload="squirrelmail_loginpage_onload();" alink="#0000cc" bgcolor="#ffffff" link="#0000cc" text="#000000" vlink="#0000cc"
39.
<form action="redirect.php" method="post"
40.
 
41.
<table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td align="center"><center><img src="login.php-Dateien/sm_logo.png" alt="SquirrelMail Logo" height="111" width="308"><br> 
42.
<small>SquirrelMail version 1.4.8-5.el5.centos.10<br> 
43.
  By the SquirrelMail Project Team<br></small> 
44.
<table bgcolor="#ffffff" border="0" width="350"><tbody><tr><td align="center" bgcolor="#dcdcdc"><b>SquirrelMail Login</b> 
45.
</td> 
46.
</tr> 
47.
<tr><td align="left" bgcolor="#ffffff"
48.
<table align="center" bgcolor="#ffffff" border="0" width="100%"><tbody><tr><td align="right" width="30%">Name:</td> 
49.
<td align="left" width="*"><input name="login_username" value="testuser" type="text"
50.
</td> 
51.
</tr> 
52.
 
53.
<tr><td align="right" width="30%">Password:</td> 
54.
<td align="left" width="*"><input name="secretkey" type="password"
55.
<input name="js_autodetect_results" value="1" type="hidden"
56.
<input name="just_logged_in" value="1" type="hidden"
57.
</td> 
58.
</tr> 
59.
</tbody></table> 
60.
</td> 
61.
</tr> 
62.
<tr><td align="left"><center><input value="Login" type="submit"
63.
</center></td> 
64.
</tr> 
65.
</tbody></table> 
66.
</center></td> 
67.
</tr> 
68.
</tbody></table> 
69.
 
70.
</form> 
71.
</body></html> 
72.
 
Ach ja, bevor ichs vergesse: ich kann keine Plugins für Sqirrelmail einpflegen, sondern lediglich den Webcontent der Virtuellen Sites editieren.
Mitglied: dog
17.11.2010 um 20:32 Uhr
Das Problem was du immer haben wirst ist die Datenübergabe von deiner Seite zu Squirrel, denn wenn die Sq-Programmierer nicht grenz-dämlich waren geht das nur schlecht und wenn sie schlau waren geht es gar nicht.

Aber wo war hier eigentlich die Frage?
Bitte warten ..
Mitglied: Jochem
18.11.2010 um 08:29 Uhr
Moin,
wenn ich das Script richtig deute, wird in Zeile 49 eine Eingabe für den Usernamen (login_username) definiert, welche mit "testuser" vorbelegt ist. Ich gehe weiterhin mal davon aus, daß der User sich zu dem Zeitpunkt, wo er sich bei dem Webmailer anmelden will, bereits in der Domäne angemeldet ist. Demnach hat er dann schon seinen "bepräfixten" Usernamen. Dieser Wert steht auf dem Rechner in der Systemvariablen %username%. Wenn dieser Wert nun als Vorbelegung für das Feld "login_username" genommen wird und in dem Feld zusätzlich keine Eingaben erlaubt werden, muß der User nur noch sein Paßwort eintragen und auf den "Submit"-Button drücken. Oder liege ich mit meinen Annahmen falsch?

Gruß J chem
Bitte warten ..
Mitglied: SlainteMhath
18.11.2010 um 09:06 Uhr
Moin,

die sauberste Methode wäre sicher in der login.php anhand der aufgerufenen Domain aus der Textdatei/Datenbank das Präfix auszulesen und das dann Squirrel direkt im PHP Code "unterzuschieben".

Domain sollte in der Variablen $_SERVER['HTTP_HOST'] stehen. Der eingegebene Username steht in $_POST['login_username'] - das ganze sollt im Script "redirect.php" passieren.

lg,
Slainte
Bitte warten ..
Ähnliche Inhalte
CMS
PhpMyAdmin Login-Seite wird nicht dargestellt
gelöst Frage von StaticCMS3 Kommentare

Hi, ich habe ein kleines Problem mit dem Setup meines lokalen Webservers (Apache, PHP, MySQL), und zwar wird die ...

HTML
Captive Portal login Seite
gelöst Frage von gansa28HTML2 Kommentare

Hallo zusammen, ich betreibe ein offenes Gäste WLAN über eine PFSense (2.3.2-RELEASE-p1) mit Captive Portal. Leider bin ich zu ...

MikroTik RouterOS
Hotspot leitet mich nicht auf die Login-Seite
Frage von devil77cMikroTik RouterOS6 Kommentare

Hallo, ich habe jetzt endlich mittels CAPsMAN meine AP´s hinbekommen wobei an jedem AP eine virtuelle Schnittstelle auf den ...

Vmware
Login an vCenter
gelöst Frage von racer1601Vmware7 Kommentare

Hallo ich habe folgendes Problem: Wir können und nicht mehr über den VSpherClient mit unseren VCenter verbinden. Es kommt ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 3 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 3 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 3 TagenSicherheit12 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall10 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS9 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen9 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...

Windows Netzwerk
Zugriff auf den Desktop Ordner eines anderen Rechners in der gleichen Domäne
gelöst Frage von JensNomaWindows Netzwerk6 Kommentare

Guten Abend, ich war neulich mit unserem Admin am Tisch gesessen. Er an seinem Notebook angemeldet mit dem Domänen-Admin, ...