Archive for the ‘iis’ category

Reciclar todas as pools de aplicativos do IIS com um comando

junho 26th, 2017

Ele pega o resultado do primeiro comando e manda pro segundo

appcmd list apppools /state:started /xml | appcmd recycle apppool /in

Créditos: http://adicodes.com/powershell-script-recycle-all-application-pools/

Mudar trust level com o appcmd para todas as versões do asp.net

junho 28th, 2016

Aprendi que para mudar o trustLevel de somente um site cadastrado no IIS 8 eu poderia usar o comando abaixo

appcmd set config "site.com.br" -section:system.web/trust /level:"Full" /commit:webroot

Ele faz commit no web.config do framework, e a configuração só vale para site.com.br. A configuração fica tipo isso

<location path="site.com.br">
   <system.web>
       <trust level="Full" />
   </system.web>
</location>

O problema que eu tive foi que o comando alterava o trust level somente para a versão 4 do asp.net, mesmo se o site estivesse utilizando a versão 2.0, era a versão 4 que era alterada. Pesquisando descobri que dá pra informar a versão no final do comando, assim é possível configurar tanto para a versão 2 quanto para a versão 4. O exemplo abaixo configura o trust level para full na versão 2.0 do asp.net.

appcmd set config "site.com.br" -section:system.web/trust /level:"Full" /commit:webroot /clr:2

O site que me ajudou com isso foi esse:
http://weblogs.asp.net/owscott/targeting-the-net-framework-version-and-bitness-in-appcmd

Atribuindo máscara de afinidade do processador

abril 22nd, 2016

Nas versões mais recentes do IIS é possível atribuir processadores específicos para uma pool de aplicativo, alterando o valor do atributo Processor Affinity Mask. Para definir quais processadores a pool de aplicativo irá utilizar, podemos seguir a tabela abaixo:

tabelaCpu

Se quiser utilizar as CPUs 0 e 2, então some os valores do último campo, informe o valor 5, se quiser utilizar as CPUs 1, 2 e 3, informe o valor 14.

Mais detalhes explicando no link abaixo:

http://serverfault.com/questions/471105/formula-for-processor-affinity-mask-iis

Can’t connect to MySQL server on ‘localhost’ (10048).

janeiro 13th, 2016

No windows esse erro acontece porque já existem muitas conexões abertas, então o range default de portas que ele usa, que é entre 1024 a 5000, já estão sendo utilizadas, então o erro acontece.

Para solucionar, é possível aumentar esse range, para que haja mais conexões, para isso adicione uma chave do registro em

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\

com o nome de MaxUserPort com valor 65534 e tipo DWORD, assim o novo limite para utilização das portas serão de 1024 a 65534 portas, se alterar o limite para 10000, será de 1024 a 10000.

OBS: é necessário reiniciar o servidor para que a configuração tenha efeito.
OBS 2: testei a configuração em um servidor Windows 2003 e funcionou.

Baseado nos links abaixo:
https://support.microsoft.com/en-us/kb/956188
https://support.microsoft.com/en-us/kb/196271
http://serverfault.com/questions/98505/cant-connect-to-mysql-server-on-localhost-10048

Problema no upload de imagem no ASP

janeiro 11th, 2016

Especificamente utilizando o componente Scripting.Dictionary, com o método Item desse componente ocorre o erro

Microsoft VBScript runtime error ‘800a01a8’
Object required: ‘UploadRequest.Item(…)’

Pesquisando, vi que o problema ocorre depois da instalação do seguinte KB: KB3104002

A Microsoft já disponibilizou correção para ele. O link explicando o problema é https://support.microsoft.com/en-us/kb/3104002

Para download é https://support.microsoft.com/en-us/kb/3125446

Consegui me nortear através do link http://www.scriptbrasil.com.br/forum/topic/181611-erro-de-tempo-de-execu%C3%A7%C3%A3o-do-microsoft-vbscript-erro-800a01a8/

Habilitar SSI no Windows 2012 Server com IIS8

janeiro 6th, 2016

Para utilizar Server-Side Include no servidor, extensões .shtml e .shtm, é necessário habilitar o recurso no servidor, é possível fazer isso pelo PowerShell, para isso abra o PowerShell, em 64bits se o seu sistema for 64bits, e digite os seguintes comandos:

Import-Module ServerManager
Add-WindowsFeature Web-Includes

Após isso é necessário reboot do servidor, após reinicializar o SSI estará habilitado no IIS.

Criptografia obsoleta ou moderna no Chrome

julho 22nd, 2015

Ter a configuração de criptografia moderna no Chrome, não significa que ela seja a ideal para a configuração do SSL, pois habilitando o diffie-hellman(DH) faz com que o Chrome exiba criptografia moderna, mas o DH é considerado inseguro. Um exemplo é o host https://dh768.serverhello.com/ , ele tem criptografia moderna mas segundo a SslLabs ele tem avaliação F, ou seja, inseguro.

https://www.ssllabs.com/ssltest/analyze.html?d=dh768.serverhello.com

Referência: https://community.qualys.com/thread/15230

Encriptografar e descriptografar seção no web.config

junho 29th, 2015

1) Abra o prompt de comando
2) Altere o diretório para a versão do asp.net que você usa

cd %windir%\Microsoft.NET\Framework\versao

3) Rode o comando alterando a seção que quer utilizar e o site utilizado

aspnet_regiis -pe "connectionStrings" -app "/" -site "batatinha.com.br"

no exemplo a cima, vamos criptografar a seção “connectionStrings” para a aplicação raiz do site “batatinha.com.br”

4) Abra o web.config do site, verá que haverá algo do tipo

<connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
  <EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
   xmlns="http://www.w3.org/2001/04/xmlenc#">
   <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
   <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
    <EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
     <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
     <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
      <KeyName>Rsa Key</KeyName>
     </KeyInfo>
     <CipherData>
      <CipherValue>n/zynKbSuIPDiyR44df1zZcDJSTfND7qQ8vduh83yEU0GcI+fD3LHdFcAkMZyfHfnsKpfMXf6F3zd4UyDjSJDBduN17xe0COGLyrivFifFtw1VcpRHLwR+z9MF9yVyi9a2Sbj5YO8nU50zJgOnN53GaM5KEZIT0abO2l0koo=</CipherValue>
     </CipherData>
    </EncryptedKey>
   </KeyInfo>
   <CipherData>
    <CipherValue>P4+kFEJ5/rXZp9edsksmVRg/Jo2zZCuHR3103Tooy4AnX+WzawGHuA6HL6+9ULw1s7Wd+TCsfSO74befVnTCuYS6NFMQg+FtMdK0rtey9ryia0lyqccf4CZ4u2U9afqNcO6eN40rPvY8SVG5AbQ37VatWuhs8pu1ZfpN8hQjL3aeM3nXudXcLxU4YUf84oTsHf1Q8hGUDc2mnKQqpfU7jDNhDp8hmobV1Xb3q9DQPxD3k2eCKE+vD1ZXvHK8o7TuioZxv/TXUIX/ewc1pWzH3AdQJUSGhjJHAUUJ7pC4WYdNVwpB32NLokiR3gBOAmClHDqlRVrJ+yzoTZnfonBGPKjQT0q6Kxi5fsQUCRbG9rXe9SrIHGL1G3yE62R2lMO1dx6A+9mLiR3F82bKH5oJrrhmFrTjuCnLaYVhrTtWAWC8CAJ6fs5wk4dKg8fvcVNoIFKkHVyEgf8Wqvf0MRiGwfsob5tTNc15yfUZS5w6AnyWNqHrS1d//WTcJ++G5EXZdkDE7KxiDEisokflrtDIq+VC6zC3zcOH18H4h0UL1L5zlcMdHRvSJ2YlI0k4en1Dm3w05fzFf9Z5Sk7CS+NZjLl2jWT5m3ZBMiGBUORi0NYD8ThHkvuy9AwogQ/T8b+uj9o4Q3HwEqpSDMs0t0T7Izx7ISTan+OH58MgOPZ6Qq1gV/LqcGBTHqeojZzy5frlKTxMWokW2PXexHkyyW6vAEqOzYoXn5ctuuL8VfbQhut3Xlq6wbYD7jZh4gzxJJ1BbpEsGqr8YCRIMkhcju4dzHgHI/ks1dmAwWwOUFVjnsx2ZNrmo4kWk8HaujUybekdcWxstMXB1Jor6EB3dLYgoxQ74oetIAOmHIH93bE17MUEO1Yer9PTy0qU17cXl3EMZX/bGfYlppzh69WeszQ0/63IeBoPaoaWZaLgqMlogDntjdnQWqOA+goiKMSlqv9qWIdjdsZ63Ekhuc1H58qJrjPkJYvVjoGApECgvDtRBN8BcFaflMWzX+GxL0NCvi4poQiuSsD58/j1I0rl4kTUzA499s+uYy8WuX7OVh6gbXzlaSBvqj08+VtA+ewqW8S5bcPQdiG8EjAj1Be6VPc8qJb43H9JJF/8BtQ7ve+w=</CipherValue>
   </CipherData>
  </EncryptedData>
 </connectionStrings>

Feito 😀

Para descriptografar, faça o seguinte:

1) Abra o prompt de comando
2) Altere o diretório para a versão do asp.net que você usa

cd %windir%\Microsoft.NET\Framework\versao

3) Rode o comando alterando a seção que quer utilizar e o site utilizado

aspnet_regiis -pd "connectionStrings" -app "/" -site "batatinha.com.br"

No exemplo a cima vamos descriptografar a seção “connectionStrings” para a aplicação raiz do site “batatinha.com.br”

Créditos: https://support.transfrm.com/entries/27430158-Encrypting-Decrypting-the-database-connection-strings-in-web-3-0

Chaves no windows 2012 para configuração de SSL

maio 21st, 2015

A configuração de ssl cipher, o ordenamento delas, ficam na chave

HKLM\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002

Já a configuração para habilitar ou desabilitar determinadas cipher, hashes, keys exchange e protocolos para SSL ficam na chave

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL

Esse site me ajudou a configurar de uma maneira boa, além de modificações de segurança até a data atual.
https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12

É possível testar o teu site no link abaixo:
https://www.ssllabs.com/ssltest/analyze.html

 

cURL e OpenSSL não funcionam no PHP com IIS

março 25th, 2015

Já configurou o caminho do php no path do sistema, já descomentou as linhas
extension=php_curl.dll
extension=php_openssl.dll
no php.ini, executou php -m no prompt e o curl e openssl foram carregador, mas no php.ini do teu site ele não carrega? Passei por isso, a solução que achei foi copiar os arquivos ssleay32.dll e libeay32.dll do diretório do php para o %windir%\system32.

O link que me deu luzes para resolver o caso foi esse: http://stackoverflow.com/questions/1343514/how-to-get-curl-to-work-with-php-on-windows-wamp

No meu caso não cheguei a fazer a solução proposta, só fui testando os procedimentos do cara que fez o questionamento, e quando fiz isso funcionou.