Hallo Liste, ich sende Euch eine Kopie des Mails, welches ich an Timo geschickt habe (das war der, der die Anfrage hatte). Versprich Euch nicht zuviel davon, es ist alles recht einfach gehalten. Zwei Leute hatten Loesungen aus Schulen gepostet, die sind mit Sicherheit auch sehr interessant. Gruss Frank *** snip *** Hallo Timo, nun, einen kleinen Handel: Ich sende Dir die die Anwahl, Du mir die Passwort-Abfrage im Apache. :-)) Dann wollen wir mal: Ich betreibe folgende Umgebung: [x] Einen Linux-Server mit * ISDN - Manuelle Einwahl zum Provider * Apache-Server und Perl-Script in /cgi-bin * Su-Umgebung, um System-Kommandos fuer Benutzer zugaenglich zu machen Das ganze funktioniert folgendermassen: Ueber einen Button im Script wird das Script nochmal mit dem Anhaengsel 'ippp0on' aufgerufen, welches den Link '/usr/local/bin/dial0' aufruft, dieser widerum ruft '/usr/bin/su1' auf. 'su1' wertet die Conf-File '/etc/su1.priv' aus, dort stehen die Berechtigungen fuer die Benutzer, und dort wird auch der Befehl 'dial0' umgesetzt. Alles was jetzt folgt, ist nicht unbedingt professionell, aber funktioniert. -> Zunaechst die (relevanten) Eintraege in '/etc/su1.priv' (bei Bedarf an Deine Umgebung anpassen): # Define some privileged users define DIAL wwwrun # Define some command aliases alias dial0 /sbin/isdnctrl dial ippp0 alias hangup0 /sbin/isdnctrl hangup ippp0 alias dial1 /sbin/isdnctrl dial ippp1 alias hangup1 /sbin/isdnctrl hangup ippp1 -> Dann unter '/usr/local/bin' folgende Links erstellen: ln -s /usr/bin/su1 /usr/local/bin/dial0 ln -s /usr/bin/su1 /usr/local/bin/dial1 ln -s /usr/bin/su1 /usr/local/bin/hangup0 ln -s /usr/bin/su1 /usr/local/bin/hangup1 -> Zur Pruefung, ob eine Verbindung besteht, verwende ich eine LCK-File, die bei mir in dem Script '/etc/ppp/ip-up' erstellt (und auch wieder geloescht) wird. Die relevanten Eintraege sind hier: case "$BASENAME" in ip-up) # # ippp0 Lockfile # echo "ISDN Link Up" > /var/run/$INTERFACE.lck # . . . ip-down) # # Lockfile entfernen # rm /var/run/$INTERFACE.lck -> Auf diesen Voraussetzungen setzt das Perl-Script auf; bei mir heisst es 'net_conf.pl' und steht unter '/usr/local/httpd/cgi-bin/'. Ich bin mit Sicherheit kein Perl-Experte, von da her ist das Script (wahrscheinlich) auch nicht besonders doll. Achte darauf, dass Du es ausfuehrbar machst, wenn Du es nach '/cgi-bin/' stellst. Ich habe fuer Dich unwichtige Teile im Script geloescht (Abfrage des Mail-Status etc.). Falls es Probleme gibt: -> Mail an mich. Viel Glueck, Gruss Frank *** snip *** __________________________________________________ Frank Kr|ger Email: fkrueger@stud.uni-frankfurt.de krueger@informatik.uni-frankfurt.de you may have a look at http://www.rz.uni-frankfurt.de/~fkrueger (Netscape 4.04 or IE4.01 req.) __________________________________________________
participants (1)
-
Frank Krüger