POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der...

24
POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill

Transcript of POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der...

Page 1: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

POKUS Portal für Kurs und Studienplanung

Ein Projekt von Rene Rippert & Stefan Liske

unter der Leitung von Prof. Dr. Andreas Schwill

Page 2: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 2Potsdam, den 24. April 2003

Gliederung

Motivation/Ziele

Vorarbeit Rechnersystem Implementierung

Fazit Zukunftsaussichten

Page 3: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 3Potsdam, den 24. April 2003

Motivation

viele unterschiedliche (elektronische) Einschreibesysteme

Einschreibung in die Veranstaltungen an verschieden Orten zu unterschiedlichen Zeiten

Belastung der Lehrstühle und der Sekretariate

Page 4: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 4Potsdam, den 24. April 2003

Ziele von POKUS

Vereinheitlichung der Einschreibung an einem Ort für alle Veranstaltungen

Entlastung der Lehrstühle und der Sekretariate

Übersichtlichkeit und Informationsaustausch über ein System

Page 5: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 5Potsdam, den 24. April 2003

Kommunikative Vorarbeit

Informationsbeschaffung durch Befragungen bei Studenten

Verständnis der Einschreibestrukturen durch Nachfragen bei Fr. Vogel, Hr. Haße, Fr. Ziethlow, Fr. Pamperin, Fr. Mix

Vergleich von anderen Einschreibesystemen

Page 6: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 6Potsdam, den 24. April 2003

Rechnersystem (1)

Systeminformationen PHP 3 mit PHPLib Datenbank MySQL Betriebssystem Linux Web-Server Apache

Page 7: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 7Potsdam, den 24. April 2003

Rechnersystem (2)

Systeminformationen Intel Pentium III 700 MHz16 GB Festplattenkapazität256 MB Hauptspeicher100 MBit Anbindung an die Haiti-DomainSystem: SuSE Linux 8.1

Page 8: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 8Potsdam, den 24. April 2003

Rechnersystem (3)

Programmierung in PHP 3 mit PHPLibProbleme bei mehreren Linux Distributionen

den Apache mit PHP 3 und PHPLib zu installieren

Umstieg auf SuSE 8.1 Minimalinstallation und PHP 4 mit eingebautem Sessionmanagment

Page 9: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 9Potsdam, den 24. April 2003

Rechnersystem (4)

Installation aller zur Konfiguration nötiger Elemente über RPM

Apache 1.3.26 mit OpenSSL und PHP 4 MySQL 3.23.52 Webmin 1.070 zur besseren Konfiguration von

MySQL OpenSSH 3.4p1

Page 10: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 10Potsdam, den 24. April 2003

Rechnersystem (5)

Konfiguration des Apache Web-Servers Einrichten eines Web Zertifikats

openssl genrsa -out server.key 1024 Mit diesem Aufruf wird ein Schlüssel erzeugt

openssl req -new -key server.key -out server.csr Hiermit wird ein Requestfile für einen CA erstellt

openssl x509 -req -days 182 -in server.csr -signkey server.key -out server.crt Nun wurden wir zum CA und erzeugten ein Zertifikat (unbeglaubigt) und lassen es

für 182 Tage gültig (1 Semester) Nun mussten das Keyfile (server.key) und das Zertifikat (server.crt) in die

jeweiligen Verzeichnisse gespielt werden

Page 11: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 11Potsdam, den 24. April 2003

Rechnersystem (6)

Konfiguration des Apache Web-Servers Einrichten der Virtual Host

<VirtualHost pokus.haiti.cs.uni-potsdam.de:443>

SSLEngine onSSLCipherSuite …:+High:+Medium:+SSLv2:…SSLCertificateFile /etc/httpd/ssl.crt/server.crtSSLCertificateKeyFile …/ssl.key/server.key<Directory “/srv/wwwsecure“>

Options –Indexesorder deny,allowdeny from allallow from 141.89

</Directory></VirtualHost>

Page 12: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 12Potsdam, den 24. April 2003

Rechnersystem (7)

Konfiguration des Apache Web-Servers Starten des Apache Webservers über apachectl

startssl Nach der Abfrage der im Certificate genutzten Phrase

wir der Web-Server gestartet und öffnet lauschend die Ports http:80 und https:443

Der Zugriff auf sensible Bereiche wurde durch .ht******-Dateien geschützt

AuthType BasicAuthName „Nur Authorisierte User erlaubt."AuthUserFile /srv/…/password.fileRequire user rippert stefan

Page 13: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 13Potsdam, den 24. April 2003

Rechnersystem (8)

Konfiguration von OpenSSL Öffnen der Datei /etc/ssh/sshd_config

Ändern des Eintrages PermitRootLogin auf no somit kann sich der Root nicht in das System per ssh einloggen

Öffnen der Datei /etc/hosts.allow Nun wurde folgendes in dieser Datei verändert

sshd : 141.89.59.159 : allow sshd : ALL : deny

Öffnen der Datei /etc/hosts.deny sshd : ALL : deny

Page 14: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 14Potsdam, den 24. April 2003

Rechnersystem (9)

Konfiguration von MySQL Nutzung von Webmin

Löschung der durch die Standartinstallation erzeugten MySQL User

Root User hat nur Lokal zugriff auf die DB Einrichten eines neuen Users ohne Globale Privilegien Einrichten einer neuen Datenbank und Vergabe der Rechte

für diese Datenbank an den eben eingerichteten User Jeglicher Zugriff auf die Datenbank nur über den Lokalhost

Page 15: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 15Potsdam, den 24. April 2003

Rechnersystem (10)

Sessionmanagement von PHP Nutzung von Serverseitigen Cookies

Problem: jeder Nutzer, der eine neue Instanz des Web-Browsers öffnet erhält vom System einen neuen Sessioncookie im /tmp Verzeichnis

Alte Cookies werden nur nach Neustart des Apache Web-Servers gelöscht

Lösung: Perlscript zum löschen der Sessioncookies Aufrufen dieses Skriptes alle 30 Minuten durch einen Cronjob

1 * * * * /usr/bin/perl –w \ /srv/killsession/sessionkiller.pl

Page 16: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 16Potsdam, den 24. April 2003

Administrative Sicherheit

SSL: Vertraulichkeit von Nachrichten Integrität von Nachrichten

MySQL: Zugriff auf die Datenbank nur lokal möglicht Genau ein User für die Pokus DB ohne globale

PrivilegienSSH:

Zugriff nur über eine bestimmte IP möglich kein direkter Rootzugriff

Page 17: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 17Potsdam, den 24. April 2003

Implementierung

SW-Techniken Möglichkeiten/Features Software-Sicherheit („security“) Software-Sicherheit („safety“)

Page 18: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 18Potsdam, den 24. April 2003

SW-Techniken

PHP 4.2 (und höher), MySQL, Apache Perl 5.6.xxx, Adobe Distiller

(lokal für Listen)

Session-Management SQL eMail-Modul für PHP

Page 19: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 19Potsdam, den 24. April 2003

Möglichkeiten/Features

Eintragung in Vorlesungsverzeichnissicht Terminauswahl

Änderung, Austragung für Veranstaltungen Stundenplan Informationen per e-Mail

An alle bzw. an Auswahl Babylon-Account-Verlängerung (Fr. Mix) Einschreibe-, Kurslisten (CVS, PDF) (Sekretariate) Beschränkung der Termine

Page 20: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 20Potsdam, den 24. April 2003

Software-Sicherheit („security“)

SSL nutzend Vertraulichkeit, Integrität

Benutzerregistrierung Identifikation und Authentifizierung

Session-Management Zuordnung der Benutzer nach Login (HTTP ist verbindungslos)

Eigene zusätzliche „MSI“ Unterscheidung der Browser-Instanzen

Benutzerrollen via „.htaccess“ (Student, Admin) Rechtezuteilung auf primitivem Niveau

Page 21: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 21Potsdam, den 24. April 2003

Software-Sicherheit („safety“)

Kontrolle der Formulareingaben Korrektur Plausibilitätstest, Filter via regulärer Ausdrücke

Selektionsfelder Vorgabe für Immatrikulationssemester u.ä.

Zwischenabfrage für Aktionsausführung

Page 22: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 22Potsdam, den 24. April 2003

FAZIT

Hilfe/Informationen von vielen Seiten

Akzeptanz bei Lehrstühlen und Studenten Umsetzung vieler Vorschläge Erfolgreiche Durchführung ;-)

Kooperation mit Fr. Mix (Babylon-Account)

Page 23: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

Stefan Liske, Rene Rippert 23Potsdam, den 24. April 2003

Aussichten

Es fehlen noch die Dokumentationen(mit Abnahme des Projekts)

Verbesserungen der Administration Änderung der allgemeinen Oberfläche DB-Logik überarbeiten

(min. eine Verbesserung notwendig) Eintragung von Kursen via Interface

(Hr. Severin)

Page 24: POKUS Portal für Kurs und Studienplanung Ein Projekt von Rene Rippert & Stefan Liske unter der Leitung von Prof. Dr. Andreas Schwill.

ENDE