Guide til installation ved ny kommune


Inden installationen kan påbegyndes, er det vigtigt, at Checklisten er gået igennem og at alle informationer haves.

Tips og troubleshooting kan også være en hjælp under og efter installationen.


Denne guide vil gennemgå hvordan serverne i systemet for OS2 Indberetning sættes op med MySQL og IIS. Første del omhandlende installation af MySql og IIS kan bruges for både den interne server, samt serveren i DMZ, men herefter vil der være et afsnit til hver server. Guiden tage udgangspunkt i en server installeret med Windows Server 2012 R2 operativsystem (nyere kan også bruges).

Indhold:

  • Insatllation af MySql
  • Installation af IIS
  • Installation og konfigurering af OS2 Indberetning

MySQL

  1. Hent MySQL fra http://dev.mysql.com/downloads/windows/installer/5.7.html
  2. Start installationen på serveren ved at åbne installationsfilen.
    1. Sørg for at nedenstående feature blive valgt under installationen.
      1. MySQL Servers > MySQL Server > MySQL Server 5.7 > MySQL Server 5.7.12 - X64
      2. Applications > MySQL Workbench > MySQL Workbench 6.3 > MySQL Workbench 6.3.6 - X64
      3. MySQL Connectors > Connector/NET > Connector/NET 6.9 > Connector/NET 6.9.8 - X86
    2. Installationen skal konfigureres til "Server machine"
  3. MySql kører som default på port 3306, og denne skal være åbnet i serverens firewall.

IIS

Installationen foregår på serveren gennem Server Manager.

  1. I Server Manager vælges "Manage" i menuen øverst til højre, og herunder "Add roles and features". Du vil nu blive ført igennem en wizard med en række punkter.
  2. Under installationen skal nedenstående vælges
    1. Alle versioner af .net og asp.net vælges under Web Server (IIS) > Web Server > Application Development
      1. Hvis .net 4.6 ikke er tilgængelig og ikke allerede er installeret på serveren kan det hentes her fra: https://www.microsoft.com/da-dk/download/details.aspx?id=48130
    2. Windows Authentication under Web Server (IIS) > Web Server > Security
  3. Genstart eventuelt serveren.
  4. Opret nyt site til os2indberetning og link den til den mappe, som indeholder webappen (se foreslået mappestruktur nedenfor)
  5. Åben IIS og naviger til Authentication
    1. Sørg for at Windows Authentication er sat til "Enabled".
    2. Sørg for at Anonymous Authentication er sat til Disabled (testes).
  6. Konfigurer Output Caching
    1. Tilføj entry for hver af disse extensions: .html, .js og .css
       


Installation af OS2 Indberetning

Både backenden og web apiet kan hentes på GitHub:

https://github.com/os2indberetning


Der foreslås følgende mappestruktur til installationen under c:\

  • os2indberetning
    • webapp
    • consoleapps
      • dbupdater
      • mail
      • dmzsync
      • filegenerationscheduler
    • settings - til konfigurationsfiler
    • evt. backup

Derudover skal stien c:\logs\os2eindberetning oprettes. Bemærk os2eindberetning. Alternativ placering til log filer kan også bruges, men så skal stierne også ændres i log4net konfig filerne.


Webapp:

  • logo.png er kommunens logo og skal placeres i presentation.web. Det skal være ca 42px i højden
  • favicon.ico er ikonet i fanebladet og skal placeres i presentation.web/Content
  • private.css indeholder attributen background-color, som definerer farvetemaet og skal placeres i presentation.web/Content

connections.config og CustomSettings.config

Connections.config skal opdateres med connectionstrings til databaser og dataviews fra kommunen. 

CustomSettings.config indeholder den kommunespecifikke opsætning og skal placeres samme steder som connections.config

I API projektet skal (DMZ)connections.config opdateres med den rigtige connectionstring til databasen.

migrate.exe kan findes i solutionen under packages og seneste version af EntityFramework. Den skal placeres i /bin i både webapp og API.


MySql

  1. Databasestrukturen oprettes vha. script der tilføjer de migrations projektet indeholder. Se Migrations og opdatering af MySql databaser.
  2. Åben MySql Workbench
  3. Tryk på ikonet for at åbne et nyt script
  4. INSERT de Ratetypes kommunen har oplyst i tabellen ratetypes.

  5. Gør den eller de brugere kommunen har oplyst til administrator, ved at UPDATE person tabellens kolonne IsAdmin.

Konsolapplikationer

  1. Konsolapplikationerne skal bygges i Visual Studio, og derefter lægges i en mappe på den interne server.
  2. For hver konsolapp skal der oprettes et scheduleret job gennem Windows-værktøjet Opgavestyring. - OBS, i kommuner der har udleveret en group managed service account til at køre jobbene under, skal der køres et powershellscript i stedet for at bruge gui'en som beskrevet nedenfor. I skrivende stund (29/5-2017) er dette kun Horsens kommune, se Serverinformation og konfigurationsfiler Horsens
    1. Søg efter Opgavestyring i windows.
    2. Vælg "Opret opgave..." i højre side.
    3. Giv opgaven et passende navn, vælg at opgaven skal køre uanset op brugeren er logget på eller ej og gå videre til fanen Udløsere.
    4. Under fanen Udløsere trykkes der på "Ny", og man får nu mulighed for at angive hvornår jobbet skal køre. DBUpdater skal køre som det første, herefter DMZSync og til sidst Mail. Programmerne kan godt tage nogle minutter alt efter mængden af data, så en forskel på 15 minutter er nok en god idé.
    5. Gå til fanen handlinger og tryk "Ny". Under "Program/Script" navigeres til den .exe fil der skal køres.
    6. Tryk på "Ok" og "Ok" igen i det forrige vindue. Du skal herefter muligvis indtaste admin password til windows kontoen.
  3. Når DBUpdater er kørt, og har oprettet medarbejderne i MySql databasen, skal der manuelt gøres mindst en medarbejder til administrator ved at opdatere IsAdmin kolonnen i People tabellen. Denne admin her efterfølgende mulighed for at gøre andre mearbejdere til admins gennem admin siden i webappen. 
  1. Security settings

    Disable SSL Version 2 and 3 on the back-end server site.

    Steps for the execution:

    Disabling SSL 2.0 on IIS 6:

    1. Open up Registry Editor “regedit” from the command line.
    2. Browse to the following key:
      HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server
    1. Create a new REG_DWORD called “Enabled” and set the value to "0".
    2. You will need to restart the computer for this change to take effect.

    Disabling SSL 3.0 on IIS 6:

    1. Click Start, click Run, type regedit, and then click OK.
    2. In Registry Editor, locate the following registry key (if not present you can create it)
      HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server
    3. On the Editmenu, click Add Value.
    4. In the DataTypelist, click DWORD.
    5. In the ValueNamebox, type Enabled, and then click OK.
    6. Type 00000000in Binary Editor to set the value of the new key equal to "0".
    7. Click OK. Restart the computer.


    Disable medium strength cipher support on the back-end server site.

    Steps for the execution:

    Disable unsecure encryption ciphers less than 128bit:

    1. Open up Registry Editor “regedit” from the command line
    2. Browse to the following key:
      HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\DES 56/56
    3. Create a new REG_DWORD called “Enabled” and set the value to "0".
    4. Browse to the following key:
      HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 40/128
    5. Create a new REG_DWORD called “Enabled” and set the value to "0".
    6. Browse to the following key:
      HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128
    7. Create a new REG_DWORD called “Enabled” and set the value to "0".
    8. Browse to the following key:
      HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128
    9. Create a new REG_DWORD called “Enabled” and set the value to "0".
    10. You will need to restart the computer for this change to take effect.