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 em nós Cache conectado da Microsoft para empresas e instituições de ensino em execução no Linux.
Testar transferências de conteúdo HTTP e HTTPS
Antes de testar, tem de identificar como os clientes se ligam ao servidor de Cache Ligada. Este é o mesmo método de ligação que configurou no Nome Alternativo do Requerente (SAN) do certificado durante a geração de CSR.
Importante
Substitua [mcc-connection] e [test-url] em todos os comandos abaixo
Para determinar o seu [mcc-connection]:
-
Se utilizou
-sanIpno CSR: utilize o endereço IP (exemplo:192.168.1.100) -
Se utilizou
-sanDnsno CSR: utilize o nome do anfitrião (exemplo:mcc-server.contoso.com)
[test-url]é o caminho completo de um teste Intune aplicação Win32:ee344de8-d177-4720-86c1-a076581766f9/070a8fd4-79a7-42c8-b7c8-9883253bb01a/c7b1b825-88b2-4e66-9b15-ff5fe0374bc6.appxbundle.bin
Os seguintes comandos curl testam a obtenção de conteúdo HTTP e HTTPS:
Teste HTTPS:
curl -v -o /dev/null "https://[mcc-connection]/[test-url]" --include -H "host:swda01-mscdn.manage.microsoft.com"Resultado esperado com êxito:
* 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 esperado com êxito:
* 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 no computador anfitrião Linux:
Testar a conectividade com o wget:
wget --server-response --spider --header="host: swda01-mscdn.manage.microsoft.com" "https://[mcc-connection]/[test-url]"Resultado esperado:
HTTP/1.1 200 OKindica uma ligaçã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 status e registos do contentor:
# 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 contentor deve estar em "Up" status e os registos devem mostrar a atividade TLS/SSL sem erros.
Testar 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 num dispositivo cliente (não no computador anfitrião Linux).
Pré-requisito: Certifique-se de que o anfitrião é direcionado através da política. Atualize o endereço IP da Cache Ligada (o valor da política "DOCacheHost") para o que for relevante para o 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
Pedir a transferência da aplicação Teams a partir da Cache Ligada através de HTTPS:
Add-AppxPackage "https://installer.teams.static.microsoft/production-windows-x64/25177.2002.3761.5185/MSTeams-x64.msix"Resultado esperado: A transferência é concluída sem erros e deve ser mais rápida do que as transferências típicas da Internet.
Verifique se o conteúdo está realmente a ser colocado em cache (e não apenas a reverter para a CDN):
Get-DeliveryOptimizationStatus | Select-Object DownloadMode, TotalBytesDownloaded, BytesFromCacheServerResultado esperado:
BytesFromCacheServerdeve ser superior a 0, o que indica que a colocação em cache foi bem-sucedida.
Se os clientes Windows da Cache Ligada Linux servidor, teste o seguinte a partir desses 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 um passo de validação falhar, utilize os seguintes testes para isolar a causa. Cada teste ignora uma parte do processo de ligação. Se o teste for bem-sucedido, sabe que a parte ignorada é o problema.
Importante
Substitua [mcc-connection] e [test-url] em todos os comandos abaixo
Para determinar o seu [mcc-connection]:
-
Se utilizou
-sanIpno CSR: utilize o endereço IP (exemplo:192.168.1.100) -
Se utilizou
-sanDnsno CSR: utilize o nome do anfitrião (exemplo:mcc-server.contoso.com)
[test-url]é o caminho completo de um teste Intune aplicação Win32:ee344de8-d177-4720-86c1-a076581766f9/070a8fd4-79a7-42c8-b7c8-9883253bb01a/c7b1b825-88b2-4e66-9b15-ff5fe0374bc6.appxbundle.bin
Erros de validação de certificados
Sintomas:SSL certificate problemcertificate subject name does not match
Teste de diagnóstico: O comando seguinte utiliza o -k sinalizador para ignorar totalmente a validação do certificado. Isto indica ao curl para se ligar sem verificar o certificado do servidor. Desta forma, pode determinar qual é o problema: o certificado ou outra coisa qualquer.
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 a funcionar corretamente. O problema é com o próprio certificado. Verifique se:
- A configuração san corresponde ao método de ligação (endereço IP ou nome do anfitrião)
- O certificado de raiz da AC está instalado no arquivo fidedigno do cliente
Se o teste falhar: O problema não é o certificado. Veja Erros de ligação abaixo.
Erros de revogação de certificados
Sintomas: Respostas de HTTPS lentas ou tempos limite
Teste de diagnóstico: O comando seguinte utiliza o --ssl-no-revoke sinalizador para ignorar a verificação da lista de revogação de certificados (CRL). Normalmente, o cliente contacta o ponto de distribuição crl da AC para verificar se o certificado não foi revogado. Se esse ponto final estiver inacessível, 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 ligação funciona quando a verificação de revogação é ignorada, o que confirma que o cliente não consegue aceder ao ponto de distribuição crl. Verifique se a firewall permite o acesso aos URLs de CRL listados no certificado.
Se o teste falhar: O problema não é a verificação de revogação. Veja Erros de ligação abaixo.
Erros de ligação
Sintomas:Connection refusedCould not resolve host
Se não conseguir estabelecer ligação (por oposição a ligar, mas ver erros de certificado), o problema está normalmente relacionado com a rede ou a firewall.
Para erros de ligação HTTPS:
Verificar se as regras da firewall estão configuradas corretamente
Verifique se nenhum outro serviço está a utilizar a porta 443:
sudo ss -tulpn | grep :443Verifique se o contentor da Cache Ligada está em execução:
sudo docker ps | grep mcc
Para erros de ligação HTTP: Verifique se o serviço cache ligada 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 do nome do anfitrião e a conectividade de rede
nslookup [mcc-connection]
# OR
dig [mcc-connection]
Interferência do proxy empresarial
Sintomas: A validação do certificado falha apesar da configuração correta.
Solução: Certifique-se de que o proxy empresarial não interceta o tráfego HTTPS para o servidor de Cache Ligada. Considere desativar a inspeção TLS para o tráfego interno da Cache Ligada.