Neues User-Konzept für ePages 6 unter Unix 6.17.43
Created: 6.0.7; Updated: 6.0.7

Um die Sicherheit von ePages weiter zu erhöhen, werden zwei neuen User eingeführt.Deren Rechte sind maximal eingeschränkt. Unter ihnen werden die Applikationserver- und Webserverprozesse ausgeführt. Durch die Einschränkung der Rechte können über die Prozesse keine Zugriffe auf das System ausgeführt werden.

Inhaltsverzeichnis

1 Bestehende User

Grundsätzlich bleiben alle User- und Filerechte so erhalten, wie sie sind. ep_appl behält die Vorzugs-Rechte wie ein Patch zu installieren oder die Services zu starten. ep_db und das Sybase-Verzeichnis werden nicht geändert.

2 Neue User - ePages Run-User

Beide User haben so beschränkte Rechte wie möglich:

eprunapp gehört zu den Gruppen epages und ep_web, ep_runweb gehört zur Gruppe ep_web. Damit haben beide alle nötigen Lese-Rechte.Da die Files in Cartridges, Perl etc. den Run-Usern nicht gehören, können sie die Files auch nicht ändern. Read-Only für den File-Owner ist nicht nötig.

Die Umgebungsvariablen EPAGES_APPUSER und EPAGES_WEBUSER enthalten die Namen für die user und werden durch Patch/Vollinstalltion in /etc/default/epages6 gesetzt:

Die Namen und User-IDs für eprunapp und eprunweb können frei gewählt werden. Standardwerte:

  EPAGES_APPUSER=eprunapp
  EPAGES_WEBUSER=eprunweb

Das bisherige Verhalten kann man erzwingen, wenn man setzt:

  EPAGES_APPUSER=ep_appl
  EPAGES_WEBUSER=ep_web

2.1 eprunweb

Schreibrechte für eprunweb sind auch in Apache/logs nicht nötig, da der Prozess von root bestartet wird.

Weil die Gruppe ep_web in $EPAGES_LOG und $EPAGES_SHARED/Monitor schreiben kann, kann auch eprunweb dort schreiben.

Nötige Änderungen:

Externe Web-Server bleiben von diesen Änderungen unberührt.

2.2 eprunapp

Neben ep_appl gibt es nun eprunapp. ep_appl wird weiterhin für Kommandozeilenaufrufe verwendet, wie:

  cd $EPAGES_CARTRIDGES/DE_EPAGES
  perl Makefile.PL
  make reinstall

eprunapp soll das nicht.

Alle Rechte außer in $EPAGES_SHARED bleiben wie bisher.

2.3 $EPAGES_SHARED

Wenn die Rechte in den Verzeichnissen nicht geändert werden, hat eprunapp nur Leserecht.

  chown -R eprunapp ASPool.db DataCache.conf EbayCategories.db
  chmod -R 775 ASPool.db DataCache.conf EbayCategories.db
  setfacl -L -m u:ep_appl:rwx ASPool.db DataCache.conf EbayCategories.db

  chown -R eprunapp Log
  setfacl -RdL -m u:ep_appl:rwx Log
  setfacl -RL -m u:ep_appl:rwx Log

  Rechte bleiben.

  chown -R eprunapp Static Stores WebRoot
  setfacl -RdL -m u:ep_appl:rwx Log
  setfacl -RL -m u:ep_appl:rwx Log

Die Befehle können bei großen Installationen lange dauern (und möglicherweise wegen inode-caching abstürzen). Das kann man wie folgt umgehen:

  1. adduser eprunapp (ID wie ep_appl)
  2. setze ID von ep_appl auf eine neue
  3. set permissions (aber nicht bei Static, Stores, WebRoot)
Nachdem eprunapp der neue Eigentümer ist, bekommt ep_appl alle ACL-Rechte.

Nötige Änderungen:

3 Auswirkungen auf den Patch-Prozess

Patchen ist wie bisher möglich: entweder als 'root' oder als 'ep_appl' (wenn ACLs benutzt werden). Die Filerechte werden beim Patchen geändert. Ein Patch von 6.0.6 oder niedriger auf 6.0.7 oder höher kann nur root ausführen, da neue Nutzer angelegt werden.

4 Auswirkungen auf Partner-Cartridges

Die Rechte-Änderungen haben keine Auswirkungen auf Partner-Cartridges.


Copyright ePages GmbH 2016