Jump to content

Setup Web Hosting

From Parasol
Revision as of 09:04, 9 February 2016 by David Smith (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Hosting Packages from Host Europe

[edit]

Any hosting package purchased from Host Europe must be administered by Host Europe and not by Parasol Island. A single hosting package is required per client domain and the available options can be found here: https://www.hosteurope.de/WebServer/ Please note that you should purchase a "Web Server" and not "Web Hosting".

Datenbanken

[edit]

Datenbanken auf root Servern

[edit]

Host

[edit]

Als Best Practice sollten die Datenbanken auf einem dedizierten Datenbank vHost liegen auf dem per Firewall Konfiguration nur der Webhost Zugriff hat. Ein Zugriff von aussen, bsp. per SSH direkt auf den Datenbank Host sollte ausgeschlossen sein. Beispiel:

vs-db-01 Datenbank Host
vs-web-01 Webhost, MySQL greift auf vs-db-01 zu.

Namen

[edit]

Der Name einer Datenbank wird immer nach folgendem Schema eingerichtet:
{Projektnummer}_{Projektname} Beispiel: penny14_int14_topps_boerse

User

[edit]

(Optional) Auf die Datenbank wird mit einem dedizierten Lese- und Schreib-User zugegriffen. Der User heisst identisch zur Projekt-ID, jeweils mit dem Suffix "_r" und "_w". Beispiel:

Datenbank: penny14_int14_topps_boerse
User Read: penny14_int14_r
User Write: penny14_int14_w

Die Passwörter der User sind unterschiedlich und bestehen aus einer zufälligen Kombination aus mindestens 30 gemischten Buchstaben und Zahlen. Generiert bsp. mit diesem Tool: http://www.gaijin.at/en/olspwgen.php. Beispiel:

User: penny14_int14_r
Passwort: 407e3e5fac27f8e9179f2ba19a49b3ea9b2f619bbb056c76194dd274e1

Datenbanken HostEurope/Managed Hosting

[edit]

Namen

[edit]

Der Datenbankname enthält das Projektkürzel und die Version (dev|stag|live)

Beispiel
db12826593-guhl15int19sgst

User

[edit]

Username und Password sind Zufallskombinationen aus Zahlen und Buchstaben mit mindestens 13 Stellen Länge, erzeugt mit einem Passwort-Generator.

Beispiel
Log: db12314593-W5mzK
Pas: 2753Ex61S3QPK


Verzeichnisse/Ordnerstruktur

[edit]

Das Verzeichnis des Webprojekt strukturiert sich nach der URL "rückwärts", plus der Version und einem cconfig und einem htdocs Verzeichnis.

Beispiel

http://ampagne.guhl.de

/de/guhl/kampagne/dev/htdocs
/de/guhl/kampagne/dev/config

/de/guhl/kampagne/live/htdocs
/de/guhl/kampagne/live/config

im htdocs/ liegt das root Verzeichnis des Webservers bzw. des vHosts. Im config Ordner liegen alle sensiblen Konfigurations- und Zugangsdaten auf die nur die Anwendung selber Zugriff hat.

Für bsp. Newsletter Kampagnen oder Email Templates kann ein drittes Verzeichnis "local" angelegt werden.

Domains

[edit]

Dev Domains

[edit]

Dev Domains für Bsp.. den Zugriff auf Staging oder Development Instanzen werden nach folgendem Muster angelegt:

{Kundendomain}.{version}.pslsrv.com

Beispiel kampagne.guhl.de.dev.preview.parasol-island.com kampagne.guhl.de.live.preview.parasol-island.com

Zugriffsschutz

[edit]

Um die Dev und Stage Versionen vor Suchmaschinen und unberechtigtem Zugriff zu schützen, legen wir dort einen .htaccess Zugrifsschutz an. Der Username und das Passwort sind Zufallskombinationen aus Zahlen und Buchstaben mit mindestens 13 Stellen Länge, erzeugt mit einem Passwort-Generator. Das Passwort in der .htpasswd ist noch einmal verschlüsselt. Die .htpasswd kann mit diesem Tool http://www.htaccesstools.com/htpasswd-generator/ erzeugt werden. Beispiel:

/de/guhl/kampagne/stage/htdocs/.htaccess

AuthType Basic
AuthName "Password Protected"
AuthUserFile {pfade zu}/de/guhl/kampagne/stage/.htpasswd
Require valid-user

/de/guhl/kampagne/stage/.htpasswd

DQLGMK4dB6v74:$apr1$qk8JPnrD$ZxShUvWEaMlTZrkw/TgHv1


FTP Zugänge

[edit]

Sichere Passwörter

Sofern die Konfiguration des Zugriffs über individuelle Schlüssel nicht möglich ist, werden FTP Zugänge nach folgendem Muster angelegt:

Login: Random (mind. 13 Zeichen). Beispiel: AIg6khez93mFC

Passwort: Random (mind. 13 Zeichen). Beispiel: 8jEbExG872odq


Todo: Name Webspace in dploy.io
TODO: Use "config" rather than "local"