Macchina IIS Web Server: differenze tra le versioni

Da Webmobili Wiki.
Creata pagina con "Selezionare '''Windows Server 2022 Base'''<br/> Assegnare l'IP <code>172.31.100.20</code><br/><br/> Category:AWS"
 
Nessun oggetto della modifica
 
(41 versioni intermedie di 2 utenti non mostrate)
Riga 1: Riga 1:
Selezionare '''Windows Server 2022 Base'''<br/>
<!-- {{#breadcrumb: Amazon_Web_Services | Macchina MySQL Database Server}} -->
Assegnare l'IP <code>172.31.100.20</code><br/><br/>
Selezionare '''Windows Server 2022 Base''', che è versione '''Datacenter''',<br/>
licenza acquistata <code>F4PRN-8JVGP-DFQ2F-346XR-7H9B7</code>,<br/>
istanza con almeno 4GB di RAM <code>t2.medium</code>.<br/>
Assegnare l'IP <code>172.31.100.20</code><br/>


Dal pannello '''EC2'''
* selezionare l'istanza, poi ''Connetti''
* tab ''Clienti RDP'' e scaricare
* ''Scarica il file per il desktop remoto''
* Cliccare sotto su ''Ottieni Password''
* Inserire la chiave privata e proseguire
* '''Password''' <code>Q*v-mAfX$f57ExA;oT&DT9&)Sk*c.j7t</code><br/>


== Configurazione Iniziale ==
Collegarsi via '''RDP'''.<br/>
Impostare la data e l'ora ITALIANA (region Italia).<br/><br/>
Aggiornare (e riavvio)<br/>
Aprire '''Server Manager''' per installare '''IIS'''
* Add Roles and Features
* Avanzare fino alla scelta di ''Server Roles''
* Scegliere ''Web Server IIS''
* Arrangiarsi con le features (noi abbiamo copiato da <code>ARIEL</code> )<br/>
Installare '''IIS Url Rewrite Module''' da https://www.iis.net/downloads/microsoft/url-rewrite<br/>
Installare '''.Net Core 8 Hosting Bundle''' da https://dotnet.microsoft.com/en-us/download/dotnet/8.0<br/>
Installare '''.Net Core 9 Hosting Bundle''' da https://dotnet.microsoft.com/en-us/download/dotnet/9.0<br/>
Creare gli utenti sviluppatori con i privilegi Admin.<br/>
* ComputerManagement
* Local Users and Groups
* Users , tasto destro New User
* Tasto destro su utente creato e dalla tab Member Of aggiungerlo al gruppo ''Administrators''<br/>
=== Disco Dati ===
Dopo aver aggiunto spazio a sufficienza, il disco è stato partizionato con
* <code>C:</code> ''50GB'' per il sistema operativo
* <code>D:</code> ''150GB'' per i siti e gli asset
Sul disco <code>D:</code>
* Mettere i permessi a ''Users''
* Mettere i permessi ''IIS_IUSRS'' in <code>D:\WWW</code>
Da <code>IIS</code> impostare il salvataggio dei log in una cartella che si trovi sul disco <code>D:</code>
=== FTP Server ===
Windows Server implementa un servizio FTP che si integra in IIS.<br/>
Aprire '''Server Manager''' per installare '''FTP Service''' sotto IIS
* Entrare in Windows Firewall
* Alloware le porte <code>21,50000-50030</code>
* Aprire IIS
* Cliccare sul sito principale e a destra su '''FTP Firewall Support'''
* Inserire le porte passive <code>50000-50030</code>
* Destro sul sito principale e '''Add FTP Site'''
* Procedere con la configurazione mettendo NO SSL
* Alloware solo gli utenti allowabili
* Provare
Remember: I '''virtual folder''' impostati in IIS devono avere una cartella fisica vuota corrispondente, altrimenti gli utenti in Filezilla non le vedranno.<br/>
Abbiamo creato uno scheletro vuoto così formato:
<pre>
D:\FTP\
|______ DesignbestResources\
|______ Redazione\
          |___________ Designbest-Slider-Homepage
          |___________ Trovaprodotti-Font
|______ www\
</pre>
E da '''IIS''' abbiamo assegnato i virtual folder corrispondenti.
=== SAMBA abilitazione ===
A quanto pare Windows non abilita di default SAMBA.
È necessario
* Aprire <code>gpedit.msc</code> ( '''Local Group policy Editor''' )
* Navigare in '''Computer Configuration''' > '''Administrative Templates''' > '''Network''' > '''Lanman Workstation'''
* Click destro su '''Enable insecure guest logons''' e cliccare '''Edit'''
* Selezionare '''Enabled''' > '''OK'''
È possibile verificare la modifica dal registro di sistema sotto <br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters\AllowInsecureGuestAuth</code>
Fonte:<br/>
https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default
=== SMTP ===
'''AWS blocca la porta 25'''.<br/>
Non chiediamoci perché, ma con turbo smtp (e agli altri) bisogna usare la '''porta 587''' per le connessioni non SSL negli applicativi.
=== Loopback ===
Inserire gli alias per le macchine database nel loopback.<br/>
Le '''connection string''' dei progetti li utilizzeranno
<syntaxhighlight lang="bash">
# Nome interno della macchina MSSQL
172.31.200.20 mssql
# Nome interno della macchina MSSQL Staging
172.31.200.120 mssqlstaging
</syntaxhighlight>
=== WebSocket Protocol ===
Di default non è installato.
* Aprire '''Server Manager'''
* '''Add roles and features'''
* <div>Sotto<br/>
WebServer (IIS) => WebServer => Application Development => '''WebSocket Protocol'''</div>
Installare.
== Controllo del traffico ==
Siccome subiamo tanti attacchi da malware e spider aggressivi, è necessario configurare un '''controllo del traffico''' all'interno di '''IIS'''.
* Aprire '''IIS'''
* Cliccare sul sito in questione
* Cliccare su '''IP Address and Domain Restriction'''
* '''Edit Dynamic Restriction Settings'''
* Abilitare ''Deny IP address based on number of requests of period of time''
* Inserire i valori che ci sembrano consoni
** Maximum number of requests: <code>20</code>
** Time period: <code>1000</code>
fonte: https://learn.microsoft.com/en-us/iis/configuration/system.webserver/security/dynamicipsecurity/denybyrequestrate


[[Category:AWS]]
[[Category:AWS]]

Versione attuale delle 08:58, 10 lug 2025

Selezionare Windows Server 2022 Base, che è versione Datacenter,
licenza acquistata F4PRN-8JVGP-DFQ2F-346XR-7H9B7,
istanza con almeno 4GB di RAM t2.medium.
Assegnare l'IP 172.31.100.20

Dal pannello EC2

  • selezionare l'istanza, poi Connetti
  • tab Clienti RDP e scaricare
  • Scarica il file per il desktop remoto
  • Cliccare sotto su Ottieni Password
  • Inserire la chiave privata e proseguire
  • Password Q*v-mAfX$f57ExA;oT&DT9&)Sk*c.j7t

Configurazione Iniziale

[modifica]

Collegarsi via RDP.
Impostare la data e l'ora ITALIANA (region Italia).

Aggiornare (e riavvio)

Aprire Server Manager per installare IIS

  • Add Roles and Features
  • Avanzare fino alla scelta di Server Roles
  • Scegliere Web Server IIS
  • Arrangiarsi con le features (noi abbiamo copiato da ARIEL )

Installare IIS Url Rewrite Module da https://www.iis.net/downloads/microsoft/url-rewrite

Installare .Net Core 8 Hosting Bundle da https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Installare .Net Core 9 Hosting Bundle da https://dotnet.microsoft.com/en-us/download/dotnet/9.0

Creare gli utenti sviluppatori con i privilegi Admin.

  • ComputerManagement
  • Local Users and Groups
  • Users , tasto destro New User
  • Tasto destro su utente creato e dalla tab Member Of aggiungerlo al gruppo Administrators

Disco Dati

[modifica]

Dopo aver aggiunto spazio a sufficienza, il disco è stato partizionato con

  • C: 50GB per il sistema operativo
  • D: 150GB per i siti e gli asset

Sul disco D:

  • Mettere i permessi a Users
  • Mettere i permessi IIS_IUSRS in D:\WWW

Da IIS impostare il salvataggio dei log in una cartella che si trovi sul disco D:

FTP Server

[modifica]

Windows Server implementa un servizio FTP che si integra in IIS.
Aprire Server Manager per installare FTP Service sotto IIS

  • Entrare in Windows Firewall
  • Alloware le porte 21,50000-50030
  • Aprire IIS
  • Cliccare sul sito principale e a destra su FTP Firewall Support
  • Inserire le porte passive 50000-50030
  • Destro sul sito principale e Add FTP Site
  • Procedere con la configurazione mettendo NO SSL
  • Alloware solo gli utenti allowabili
  • Provare

Remember: I virtual folder impostati in IIS devono avere una cartella fisica vuota corrispondente, altrimenti gli utenti in Filezilla non le vedranno.
Abbiamo creato uno scheletro vuoto così formato:

D:\FTP\
 |______ DesignbestResources\
 |______ Redazione\
          |___________ Designbest-Slider-Homepage
          |___________ Trovaprodotti-Font
 |______ www\

E da IIS abbiamo assegnato i virtual folder corrispondenti.

SAMBA abilitazione

[modifica]

A quanto pare Windows non abilita di default SAMBA.

È necessario

  • Aprire gpedit.msc ( Local Group policy Editor )
  • Navigare in Computer Configuration > Administrative Templates > Network > Lanman Workstation
  • Click destro su Enable insecure guest logons e cliccare Edit
  • Selezionare Enabled > OK

È possibile verificare la modifica dal registro di sistema sotto
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters\AllowInsecureGuestAuth

Fonte:
https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default

SMTP

[modifica]

AWS blocca la porta 25.
Non chiediamoci perché, ma con turbo smtp (e agli altri) bisogna usare la porta 587 per le connessioni non SSL negli applicativi.

Loopback

[modifica]

Inserire gli alias per le macchine database nel loopback.
Le connection string dei progetti li utilizzeranno

# Nome interno della macchina MSSQL
172.31.200.20	mssql
# Nome interno della macchina MSSQL Staging
172.31.200.120	mssqlstaging

WebSocket Protocol

[modifica]

Di default non è installato.

  • Aprire Server Manager
  • Add roles and features
  • Sotto

WebServer (IIS) => WebServer => Application Development => WebSocket Protocol

Installare.

Controllo del traffico

[modifica]

Siccome subiamo tanti attacchi da malware e spider aggressivi, è necessario configurare un controllo del traffico all'interno di IIS.

  • Aprire IIS
  • Cliccare sul sito in questione
  • Cliccare su IP Address and Domain Restriction
  • Edit Dynamic Restriction Settings
  • Abilitare Deny IP address based on number of requests of period of time
  • Inserire i valori che ci sembrano consoni
    • Maximum number of requests: 20
    • Time period: 1000

fonte: https://learn.microsoft.com/en-us/iis/configuration/system.webserver/security/dynamicipsecurity/denybyrequestrate