Procedimiento para Instalar Sifco en un Servidor Microsoft Con IIS y SQL Server
Pre-requisitos:
Sistema operativo compatible con IIS 7 en adelante.
Seguridad definida
Certificado de seguridad definido sí se va a usar SSL
Puertos
Conexión con Base de datos en el puerto que usted decida
80 y 443
465 para correo electrónico
Requisitos para realizar instalación de SIFCO WEB On Premise:
Métodos de conexión: VPN, Escritorio remoto, u otros.
Credenciales para el método de conexión.
IP de servidores (Aplicación y base de datos)
Usuario con permisos administrativos para realizar instalación de componentes en servidor de aplicación
Servidor de base de datos configurado
Usuario de base de datos para SIFCO
Reporting Services
Conexión entre servidor de aplicación y base de datos (Red)
Credenciales para SAP B1:
Integration Framework
Cliente SAP B1
SLD, dentro de Integration Framework, Configurado correctamente para las bases de datos SAP B1 que se utilizan
Agregar Rol de Web Server (ISS) al Servidor, asegurarse que tenga Famework 3.5
Bajar “Microsoft Web Platform Installer”, seleccionar e Instalar:
SQL SERVER with Advances Tools para que Incluya Reporting Services que se necesita
URL Rewrite 2.1
IIS: Asp.net (En Windows Server 2012)
IIS: Recomended Configuration (En Windows Server 2012)
.NET 3.5 for Windows 8 (En Windows Server 2012)
.NET 4.5 for Windows 8 (En Windows Server 2012)
Crear la estructura de directorios así:
WebSite
SifcoApp
En ISS crear un grupo de aplicaciones llamado SIFCO como INTEGRADA USANDO FRAMEWORK 2.0. HABILITAR QUE PUEDA USAR APLICACIONES DE 32 BITS (Si no realiza este paso los reportes hechos en Excel no funcionaran)
Crear un usuario y una clave que pueda acceder solo a estos directorios y no solo se pueda conectar con ellos.
En ISS al Default Website cambiarle el directorio en el directorio creado, los privilegios de conexión y asignarlo al Pool SIFCO Basic Settings
*Instalar Crystal Reports
*Agregar el usuario sifcoweb a asp.net ejecutando en CMD:: C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -ga sifcoweb
*Para hacer la instalación para generación de archivos en Excel :
Instalar J# Framework https://www.microsoft.com/en-us/download/details.aspx?id=4712 (Cambie el idioma a Español y presione Descargar)
*Apache/Jakarta POI:
http://www.google.com/url?q=http%3A%2F%2Fsourceforge.net%2Fproject%2Fshowfiles.php%3Fgroup_id%3D151482%26package_id%3D171498&sa=D&sntz=1&usg=AFQjCNHNzK4kDEreBy-XqALMeYVW_yGqyg (Descargue la versión Jakarta POI 2.5.1-3)
*ExcelLite DLL: http://www.google.com/url?q=http%3A%2F%2Fwww.gemboxsoftware.com%2FGBSpreadsheetFree.htm&sa=D&sntz=1&usg=AFQjCNEuCeLJxuaOvIqaOjjP1Wh0odDW9w (Coloque su E-mail y presione descargar)
Cambiar el Upload Read Ahead Size:
Editar applicationHost.config
(ubicado en WindowsFOLDER\System32\inetsrv\aplicationhost.config)Agregar al final:
<location path="sifco" overrideMode="Allow">
<system.webServer>
<asp />
<serverRuntime uploadReadAheadSize="2147483647" />
</system.webServer>
</location>
En ISS en la opción de TIPOS MIME, agregar “.log” como un “text/plain”
Copiar archivos y binarios de SIFCO en la carpeta SifcoApp
*Crear un directorio SIFCO TOOLS para configurar seguridad completa
Instalar Gam Deploy Tool
Instalar el certificado de seguridad si se va a trabajar con SSL (Ver https://sifco.atlassian.net/wiki/spaces/INFAESTRUCTURA/pages/392134657 )
Redirigir el tráfico de HTTP a HTTPs. siguiendo las instrucciones que estan https://sifco.atlassian.net/wiki/spaces/DOC/pages/12976905
Para las direcciones de ruteo se puede modificar el archivo host que esat en windows/sistems32/drivers/etc
Se reemplaza Hangfire por JOB con gestor de tareas automaticas de Windows para ejecutar script de PoweShell:
https://sifco.atlassian.net/wiki/spaces/DOC/pages/2250211342
Instalación HangFire:
Paso 1: En IIS Crear un Application Pool con el nombre de HangFire con la misma configuración que el Application Pool de SIFCO.
Paso 2: Descargar el siguiente archivo que es la aplicación de HangFire.
Paso 3: Descomprimir el archivo previamente descargado y colocarlo en la ruta donde se alojan las aplicaciones en el servidor
ejemplo: C:\inetpub\wwwroot\handfire
Paso 4: Desde IIS convertir en aplicación la nueva carpeta de HangFire colocándole como Application Pool HangFire (creado en el paso 1)
Paso 5: Se debe crear una DB en blanco, se sugiere que el nombre sea handgfire.
Paso 6: Se debe configurar string de conexión en el web.config del HangFire
Ejemplo Standard Security: Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;
Ejemplo Trusted Connection:
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
Paso 7: Correr aplicación HangFire desde cualquier navegador web. *en la primera ejecución dará un mensaje que se necesitan crear las tablas necesarias para su funcionamiento, este proceso es automático y las tablas se crearan en la DB que se creo y se configuro en los pasos anteriores.
Configuración de Seguridad:
Cuando el servidor esté expuesto a Internet debe tener un certificado seguro.
Asegure de habilitar el protocolo TLS 1.2
Para ello puede revisar estos artículos:
Asegurese de deshabilitar los protocolos SSL, SSL 3, TLS 1 Y TLS 1.1 de forma que solo quede el protocolo TLS 1.2 activo
Tiene que agrear Enabled=0
and DisabledByDefault=1
to your registry (the full path is HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
). See screen for details
Confirme con la herramienta Test SSL Server las comunicaciones solo a través de este protocolo
Con la herramienta TestSSLServer4
Ejemlplo:
testsslserver4 -all test.sifco.org
No permita que se identifique el nombre del servidor y version de IIS y lenguaje, para evitar que hackers exploten vulnerabilidades conocidas.
Open "Internet Information Services (IIS) Manager".
If you want to set the settings globally, click on your main server node: select iis node
Open the "Configuration Editor" open configuration editor
To remove 'x-aspnet-version' response header, go to
system.web >> httpRuntime >> enableVersionHeader
and set it to 'false' disable server response headerTo remove the IIS 'server' response header, go to
system.webServer >> security >> requestFiltering >> removeServerHeader
and set it to 'true' remove IIS server header
O se puede correr
%systemroot%\system32\inetsrv\appcmd.exe set config -section:system.webServer/security/requestFiltering /removeServerHeader:"True" /commit:apphost
Puede ver este artículo: (Ojo esto cambia de version de IIS
Habilitar HTTP Strict Transport Security (HSTS)
Con esta configuración se esta asegurando que si hay algun ataque y se quiere usar la version no segura, se redireccione de nuevo a la version segura. (En este arículo hay una explicacion de la regla )
Para habilitarlo debe seguir esos pasos:
Version IIS 10 V 1709
En IIS en el sitio en configuración se habilita la opción.
Anteriores:
Configure headers per website
Open the Internet Information Services (IIS) Manager via Start → Administrative Tools → IIS Manager.
Click on HTTP Response Headers.
Click on Add... in the Actions panel.
Enter the following values in the Add Custom HTTP Response Headers dialog box:<
Name: Strict-Transport-Security Value: max-age=31536000
Consideraciones
Cuando el archivo web.config supera el tamaño de los 250kb el IIS genera el error
"No se puede leer el archivo de configuración porque supera el tamaño máximo de archivo iis"
"IIS - Cannot read configuration file because it exceeds the maximum file size"
Para solucionarlo hay que agregar, vía regedit, la siguiente entrada al registro del Sistema Operativo:
a) Agregar la clave “Configuration” en la ubicación Equipo\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Configuration
b) Agregar dentro de “Configuration” una llave que se llame MaxWebConfigFileSizeInKB de tipo REG_DWORD con valor decimal
de 900
2.- Para evitar que se puedan ver los directorios:
Se debe modificar la siguiente configuración en IIS:
Se debe seleccionar “Disable”
Quedando de la siguiente forma:
3.- En caso de que falle la conexión a la base de datos:
Se debe configurar el archivo web.config en la carpeta del cliente, por ejemplo: c:\sifcoweb\Prueba_Octopus\bin\web.config, para asegurarnos que configuramos el archivo correcto ejecutamos el archivo “gxconfig.exe” desde la linea de comandos:
Se va abrir la aplicación y se debe configurar el mismo servidor y base de datos del cliente en las instancias Default, POS, GAM, luego salvar y probar:
Para SistemaF, se mantiene el nombre del servidor pero la base de datos es “SistemaF”:
Enlaces Relevantes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Artículos Relacionados | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Artículos Actualizados Recientemente | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
(c) 2020 por SIFC.O, S.A.