wiki:AdminApache
close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Apache-Konfiguration

Unser interner Webserver ist ​Apache Version 2. Er läuft auf dem paedml-Rechner und verteilt u.a. die Web-Untis- und Trac-Seiten. Hier finden sich Details zur Konfiguration.

Session-Save-Pfad

  /var/lib/php5

Allgemeines

Das Haupt-Konfigurationsverzeichnis liegt unter /etc/apache2, Konfigurationen für die getrennten Webanwendungen liegen in /etc/apache2/conf.d/:

$ ls /etc/apache2/conf.d/
horde  linuxmuster-portfolio.conf  moodle  nagios2.conf  trac

Trac

Unser Trac wird per ​mod_wsgi verteilt (​trac:TracInstall#RunningTraconaWebServer). Die Nutzerauthentifizierung erfolgt über unseren LDAP-Server. Autorisiert sind alle Nutzer, die der LDAP-Gruppe teachers angehören (siehe #37). Das Apache-Konfigurationsscript für Trac (/etc/apache2/conf.d/trac) sieht daher zur Zeit (10.8.2011) so aus:

/etc/apache2/conf.d/trac
WSGIScriptAlias /trac /usr/local/trac/cgi-bin/trac.wsgi

<Directory /usr/local/trac/cgi-bin>
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>

#<Location "/trac/login">
#    AuthType Digest
#    AuthName "Kepler-Trac"
#    AuthDigestDomain /trac
#    AuthUserFile /usr/local/trac/trac.htpasswd
#    Require valid-user
#</Location>

<Location "/trac/login">
    AuthType Basic
    AuthBasicProvider ldap
    AuthzLDAPAuthoritative off
    AuthName "Kepler-Trac"
    AuthLDAPURL ldap://localhost/dc=kg-fds,dc=de    
#    Require valid-user
    AuthLDAPGroupAttributeIsDN off
    AuthLDAPGroupAttribute memberUid
    Require ldap-group cn=teachers,ou=groups,dc=kg-fds,dc=de
</Location>

public_htmls für die Schüler

Für die Lehrer sind im Standard bereits public_htmls vorgesehen (man denkt, dass Lehrer keinen Mist verbreiten werden), für die Schüler ist dies aus Sicherheitsgründen nicht vorgesehen. In der Datei /etc/apache2/mods-enabled/userdir.conf muss folgendes eingetragen werden:

<IfModule mod_userdir.c>
#        UserDir /home/teachers/*/public_html /home/students/13c/*/public_html
        UserDir public_html
        UserDir disabled root
        <Directory /home/teachers/*/public_html>
                AllowOverride FileInfo AuthConfig Limit
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                php_flag display_errors on
        </Directory>
	
        <Directory /home/students/*/*/public_html>
                AllowOverride FileInfo AuthConfig Limit
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                php_flag display_errors on
		Order deny,allow
		Deny from all
		Allow from 10.32
		Allow from 10.16.209
		AuthType Basic
		AuthName Homeverzeichnisse
		AuthBasicProvider ldap
		AuthzLDAPAuthoritative off
		AuthLDAPURL ldaps://localhost/ou=accounts,dc=kg-fds,dc=de?uid
		require valid-user
		Satisfy Any
        </Directory>

        <Directory /home/workstations/*/*/public_html>
                AllowOverride FileInfo AuthConfig Limit
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                php_flag display_errors on
		Order deny,allow
		Deny from all
		Allow from 10.32
		Allow from 10.16.209
        </Directory>

</IfModule>

Damit werden die public_html-Verzeichnisse eingeschaltet und im Intranet ohne weitere Beschränkungen rausgegeben. Vom Internet aus muss Benutzername/Passwort eingegeben werden.

/etc/init.d/apache2 restart

übernimmt die Änderungen. Die Schüler müssen selbst ein public_html-Verzeichnis in Ihrem HomeVZ anlegen.

(Hinweis: Das Skript sollte demnächst im Subversion-Repository liegen.)

Ein signiertes Zertifikat

Unter www.startssl.com erhalten wir ein kostenlos für ein Jahr unterschriebenes Zertifikat für SSL. Dazu muss der Certificate Signing Request

  /etc/ssl/private/ssl.csr

bei StartCom unterschrieben werden. Hier die Schritte:

  1. Bei StartCom anmelden (z.B. mit dem im Browser installierten Zertifikat oder aber anmelden und Zertifikat im Browser installieren lassen)
  2. EMail-Adresse validieren (bau@…) - System schickt eine Mail an bau@… mit Verifikationscode
  3. Domain (kg-fds.de) verifizieren - System schickt eine Mail an webmaster@… mit Verifikationscode
  4. Im Certificates Wizard den CSR hochladen und signieren lassen, die Datei als /etc/ssl/private/ssl.crt speichern (und eine Sicherungskopie unter dem Jahresordner ablegen) und den Apache neu starten.

Hinweis: Die Zertifikate brauchen ein wenig, bis auch alle Browser sie akzeptieren, weshalb zunächst die Fehlermeldung: sec_error_ocsp_unknown_cert erscheint. Spätestens nach ein paar Stunden sollte das aber auch im Firefox gehen.

Last modified 12 years ago Last modified on Jan 10, 2015, 1:34:50 PM
Note: See TracWiki for help on using the wiki.