Partnerlinks:
Google

www.linux-club.de/ sehr aktives und kompetentes Board m. Fragen u. Antworten rund um Linux  |  www.linux-board.de/ privates Board m. Fragen u. Antworten rund um Linux  |  meybohm bei viando.de gute Tools - u.a. "Phase 5 / HTML Editor" mein Lieblings-HTML-Editor und "Proton" - guter Texteditor www.meybohm.de  |  Wunsch-Domain schon belegt? Hier finden Sie sie trotzdem!   |  Webhosting beim Testsieger 2007. www.greatnet.de  | 
Host Europe - World Class Internet Hosting
 

  Ein Pinguin-Logo    
news About Me linux referenz tips links downloads kontakt
 
News
About
Linux
Referenz
Tips
  Linux
  Sicherheit
  Perl
  Allround Server
  Fileserver Samba
  HTTP-Server
  Zope-Server
  SQL-Server
  Mail-Server
  Proxy_Server
  FAX-Server
  Netzwerk-Tools
  SMS-Tools
  Postscript
  MS Office
Links
Downloads
Kontakt

Besucher
seit 21.10.2002
 
Mein Gästebuch
 

YAPS - SMS-Programm für Linux

Teil 2 - CGI-Web-Schnittstelle

1. Allgemeine Beschreibung

1.1. Lizenz

Schon allein aufgrund der Herkunft der Codebasis, aber auch aus eigener Überzeugung stelle ich das Script unter die GPL. Somit ist eine sehr umfassende Anwendung, Anpassung und Veränderung des Codes ermöglicht. Das Ergebnis der Codeveränderung oder -verwendung muss wieder unter die GPL gestellt werden und im Quellcode verfügbar sein.

1.2. Allgemeine Beschreibung

Das Script zur Eingabe der Rufnummern und des Textes über eine Web-Schnittstelle (HTML-Seite) ist in Perl geschrieben und wird als Serverseitiges "CGI-Script" verwendet. Den Grundstock für dieses Script bildete das GPL-lizensierte Script "smssend.cgi" von www.steines.de/linux/smssend.html.

Ich habe die Alias-Namen die ich in der "yaps.rc" stehen habe als kleine Vorauswahl zum Anklicken übernommen. Das könnte man natürlich noch verbessern (automatisches Auslesen, Telefonbuch in Text-Datei oder Datenbank usw. ...), aber mir fehlt die Zeit. Wenn sich jemand findet der hier noch weiter macht, das wär gar nicht schlecht.

Bei diesem Perl-Script habe ich das erste Mal versucht den "Tainted-Modus" von Perl anzuwenden. Dieser Modus wird mit dem Flag "-T" in der ersten Zeile aufgerufen. Er verfolgt alle Benutzer- und anderen Eingaben die vom Script verarbeitet werden sollen. Diese markiert er als "tainted" (verseucht). Nur über eine String-Matching mit einem regulären Ausdruck kann man diese Eingaben und Variablen "entseuchen". In diesem regulären Ausdruck gibt man dann die erlaubten Zeichen an und kopiert nach der Überprüfung mit Hilfe des regulären Ausdrucks die Daten in (jetzt entseuchte) Variablen. Die Beispiele dazu findet ihr direkt im Script (ich will nicht alles nochmal schreiben), die Variablen sind mit "$tainted_" am Anfang gekennzeichnet. Ich glaube, so kann man doch etwas Sicherheit erreichen. Sollte jemand Fehler und Halbwahrheiten finden bitte ich um Benachrichtigung - ich will ja auch was dabei lernen.

Hier könnt ihr vorab mal einen Blick auf das Erscheinungsbild meines Perl-Programms werfen. Als erstes ist hier ein HTML-Abzug des Eingabe-Formulars und hier der Ausgabe nach Nichtversenden. Leider gibt das Script keine nähere Auskunft über die Ursache, aber dafür gibt es ja das log-file.

1.3. Download

Damit ihr nicht alles noch mal erfinden müsst könnt ihr das "web2yaps.cgi"-Script herunterladen. Dazu gehört dann noch diese css-Datei. Diese müsst ihr in ein Verzeichnis /css in eurem cgi-bin oder Dokumentenverzeichnis legen damit die erzeugte HTML-Site auch ein bisschen ordentlich aussieht. Da ich zu Hause einen eigenen "Home-Web-Server" ;-) am laufen habe, gibt es bei mir ein mit Alias erzeugtes zentrales "/css/-Verzeichnis".

Wenn ihr alles geladen (das CGI-Script natürlich ins "/cgi-bin/"-Verzeichnis Eures Servers, und die Datei ausführbar gemacht) und an Eure Verhältnisse angepasst habt gebt folgendes ein:
http://dein-server-name/cgi-bin/web2yaps.cgi
Daraufhin müsste das Eingabe-Fenster erscheinen. Ich hoffe dass alles gut funktioniert und wünsche Euch viel Spaß beim Testen und Weiterentwickeln.

1.4. Links

Links zu diesem Thema findet ihr auf meiner Linkseite.


   
YAPS - SMS-Programm (1)
Intro
Allgemeines
Features
Installation
Konfiguration
YAPS - Webschnittstelle
Intro
Lizenz
Allgemeines
Download
Links
 
©  09.09.2009  Heiko Teichmeier - Glauchau/Sa.