Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece instruções sobre como validar o suporte HTTPS no Cache Conectado da Microsoft para Empresas e Cache conectado da Microsoft para empresas e instituições de ensino em execução no Linux.
Testar downloads de conteúdo HTTP e HTTPS
Antes de testar, você precisa identificar como os clientes se conectam ao seu servidor de Cache Conectado. Esse é o mesmo método de conexão que você configurou no SAN (Nome Alternativo para Entidade) do certificado durante a geração do CSR.
Importante
Substitua [mcc-connection] e [test-url] em todos os comandos abaixo
Para determinar o seguinte [mcc-connection]:
-
Se você usou
-sanIpem seu CSR: Use o endereço IP (exemplo:192.168.1.100) -
Se você usou
-sanDnsem seu CSR: Use o nome do host (exemplo:mcc-server.contoso.com)
[test-url]é o caminho completo de um aplicativo Win32 do Intune de teste:ee344de8-d177-4720-86c1-a076581766f9/070a8fd4-79a7-42c8-b7c8-9883253bb01a/c7b1b825-88b2-4e66-9b15-ff5fe0374bc6.appxbundle.bin
Os seguintes comandos curl testam a recuperação de conteúdo HTTP e HTTPS:
Teste de HTTPS:
curl -v -o /dev/null "https://[mcc-connection]/[test-url]" --include -H "host:swda01-mscdn.manage.microsoft.com"Resultado bem-sucedido esperado:
* Connected to [your-server] ([ip-address]) port 443 (#0) * TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 * Server certificate: [your-certificate-subject] < HTTP/1.1 200 OK < Content-Length: [file-size]Teste HTTP:
curl -v -o /dev/null "http://[mcc-connection]/[test-url]" --include -H "host:swda01-mscdn.manage.microsoft.com"Resultado bem-sucedido esperado:
* Connected to [your-server] ([ip-address]) port 80 (#0) < HTTP/1.1 200 OK < Content-Length: [file-size]
Validação do lado do serviço
Execute os seguintes testes em seu computador host Linux:
Testar conectividade com wget:
wget --server-response --spider --header="host: swda01-mscdn.manage.microsoft.com" "https://[mcc-connection]/[test-url]"Resultado esperado:
HTTP/1.1 200 OKindica conexão HTTPS bem-sucedida.Verifique os detalhes do certificado:
echo | openssl s_client -connect [mcc-connection]:443 -servername [mcc-connection] 2>/dev/null | openssl x509 -text -nooutResultado esperado: Os detalhes do certificado, incluindo os valores de assunto, emissor e SAN, devem corresponder à sua configuração.
Verifique o status e os logs do contêiner:
# Check if the Connected Cache container is running sudo docker ps | grep mcc # View recent container logs for HTTPS activity sudo docker logs --tail 50 $(sudo docker ps -q --filter ancestor=mcr.microsoft.com/mcc/linux)Resultado esperado: O contêiner deve estar no status "Ativo" e os logs devem mostrar a atividade TLS/SSL sem erros.
Testando o handshake SSL/TLS:
Teste o handshake SSL/TLS sem validar o certificado:
# Basic connection test openssl s_client -connect [mcc-server]:443 # Test with SNI (Server Name Indication) openssl s_client -connect [mcc-server]:443 -servername [hostname] # View certificate details during connection echo | openssl s_client -connect [mcc-server]:443 2>/dev/null | openssl x509 -noout -text
Validação do lado do cliente
Execute os seguintes comandos em um dispositivo cliente (não em seu computador host Linux).
Pré-requisito: Certifique-se de que o host seja direcionado por meio da política. Atualize o endereço IP do Cache Conectado (o valor da política "DOCacheHost") para o que for relevante para seu ambiente:
$parentKeyPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeliveryOptimization"
if (!(Test-Path $parentKeyPath))
{
New-Item -Path $parentKeyPath -ItemType RegistryKey -Force -ErrorAction Stop | Out-Null
}
Set-ItemProperty -Path $parentKeyPath -Name "DOCacheHost" -Value "[mcc-connection]" -ErrorAction Stop
Solicitar o download do aplicativo Teams do Cache Conectado via HTTPS:
Add-AppxPackage "https://installer.teams.static.microsoft/production-windows-x64/25177.2002.3761.5185/MSTeams-x64.msix"Resultado esperado: O download é concluído sem erros e deve ser mais rápido do que os downloads típicos da Internet.
Verifique se o conteúdo está realmente sendo armazenado em cache (não apenas voltando para a CDN):
Get-DeliveryOptimizationStatus | Select-Object DownloadMode, TotalBytesDownloaded, BytesFromCacheServerResultado esperado:
BytesFromCacheServerdeve ser maior que 0, indicando cache bem-sucedido.
Se seus clientes Windows do servidor Linux de cache conectado, teste o seguinte nesses computadores:
# Test TCP connection Test-NetConnection -ComputerName [mcc-server] -Port 443 # Test HTTPS connection Invoke-WebRequest -Uri "https://[mcc-server]/" -UseBasicParsing # View certificate details $cert = [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true} Invoke-WebRequest -Uri "https://[mcc-server]/"Teste se a porta 443 está acessível:
# Using telnet telnet [mcc-server-ip] 443 # Using nc (netcat) nc -zv [mcc-server-ip] 443 # Using nmap (if installed) nmap -p 443 [mcc-server-ip]
Solução de problemas
Se uma etapa de validação falhar, use os testes a seguir para isolar a causa. Cada teste ignora uma parte do processo de conexão. Se o teste for bem-sucedido, você saberá que a parte ignorada é o problema.
Importante
Substitua [mcc-connection] e [test-url] em todos os comandos abaixo
Para determinar o seguinte [mcc-connection]:
-
Se você usou
-sanIpem seu CSR: Use o endereço IP (exemplo:192.168.1.100) -
Se você usou
-sanDnsem seu CSR: Use o nome do host (exemplo:mcc-server.contoso.com)
[test-url]é o caminho completo de um aplicativo Win32 do Intune de teste:ee344de8-d177-4720-86c1-a076581766f9/070a8fd4-79a7-42c8-b7c8-9883253bb01a/c7b1b825-88b2-4e66-9b15-ff5fe0374bc6.appxbundle.bin
Erros de validação de certificado
Sintomas:SSL certificate problem, certificate subject name does not match
Teste de diagnostico: O comando a seguir usa o -k sinalizador para ignorar totalmente a validação do certificado. Isso diz ao curl para se conectar sem verificar o certificado do servidor. Dessa forma, você pode determinar qual é o problema: o certificado ou outra coisa.
curl -v -k -o /dev/null "https://[mcc-connection]/[test-url]" --include -H "host:swda01-mscdn.manage.microsoft.com"
Se o teste for bem-sucedido: O servidor e a rede estão funcionando corretamente. O problema é com o próprio certificado. Verifique se:
- A configuração da SAN corresponde ao seu método de conexão (endereço IP ou nome de host)
- O certificado raiz da autoridade de certificação está instalado no repositório confiável do cliente
Se o teste falhar: O problema não é o certificado. Consulte Erros de conexão abaixo.
Erros de revogação de certificado
Sintomas: Respostas ou tempos limite lentos de HTTPS
Teste de diagnostico: O comando a seguir usa o --ssl-no-revoke sinalizador para ignorar a verificação da lista de certificados revogados (CRL). Normalmente, o cliente entra em contato com o ponto de distribuição de CRL da autoridade de certificação para verificar se o certificado não foi revogado. Se esse ponto de extremidade estiver inacessível, ele causará lentidão ou tempos limite.
curl -v --ssl-no-revoke -o /dev/null "https://[mcc-connection]/[test-url]" --include -H "host:swda01-mscdn.manage.microsoft.com"
Se o teste for bem-sucedido: A conexão funciona quando a verificação de revogação é ignorada, o que confirma que o cliente não consegue acessar o ponto de distribuição de CRL. Verifique se o firewall permite acesso às URLs CRL listadas no certificado.
Se o teste falhar: O problema não é a verificação de revogação. Consulte Erros de conexão abaixo.
Erros de conexão
Sintomas:Connection refused, Could not resolve host
Se você não conseguir se conectar de forma alguma (ao contrário de se conectar, mas ver erros de certificado), o problema normalmente está relacionado à rede ou ao firewall.
Para erros de conexão HTTPS:
Verifique se as regras de firewall estão configuradas corretamente
Verifique se nenhum outro serviço está usando a porta 443:
sudo ss -tulpn | grep :443Verifique se o contêiner de Cache Conectado está em execução:
sudo docker ps | grep mcc
Para erros de conexão HTTP: Verifique se o serviço de Cache Conectado está em execução e se a porta 80 está acessível
sudo ss -tulpn | grep :80
Para problemas de resolução de DNS: Verificar a resolução de nome de host e a conectividade de rede
nslookup [mcc-connection]
# OR
dig [mcc-connection]
Interferência de proxy corporativo
Sintomas: A validação do certificado falha apesar da configuração correta.
Solução: Verifique se o proxy corporativo não intercepta o tráfego HTTPS para o servidor de Cache Conectado. Considere desabilitar a inspeção TLS para o tráfego interno de Cache Conectado.