ping https quando o ICMP está bloqueado

3

Estou trabalhando com servidores da web que o ICMP está desativado neles. Por outro lado, eles respondem a alguns pedidos de https. Eu estou basicamente procurando http como ping capacidades, a fim de verificar se outro servidor pode chegar a essa máquina e obter alguns dados sobre isso

Eu explorei as seguintes opções:

  1. Escrevendo uma página da web que analisa a conexão entre as duas máquinas. Significando que uma máquina tentará navegar até aquela página da web. Ele fornecerá algumas informações sobre a velocidade de conexão, etc. Isso foi retirado da tabela porque essa página da web precisará basicamente executar algum tipo de aplicativo da web de algum tipo. Eu não tenho tempo para desenvolver isso. - Se você conhece uma tecnologia existente, me avise.

  2. Hospedando um arquivo no servidor da web e tentando fazer o download. Não fornecerá todos os dados que gostaria de ter. Os navegadores costumam ofuscar todas as coisas "divertidas".

  3. usando algum tipo de utilitário ping como este www.coretechnologies.com/products/http-ping/ mas, por algum motivo, ele não pode manipular o redirecionamento da LAN cooperada e, portanto, não posso usá-lo. (Eu envio uma solicitação, mas a resposta é 0 bytes com a resposta de redirecionamento 302). Você conhece os outros?

Por favor, informe se você pode fazer com que uma das soluções funcione, ou se meu uso na utilidade sugerida na seção 3 está com defeito, ou se você tem alguma outra idéia em mente.

Atualização:

Todos os sistemas são baseados em janelas.

    
por qballer 01.11.2011 / 17:52

5 respostas

3

Você pode usar o psping link

psping -q -i 0 -n 500  google.com:443
    
por 05.11.2014 / 11:59
3

Você pode usar o openssl para tentar ver se consegue abrir a sessão aSSL:

[joeuser@host ~]$ openssl s_client -quiet -status -connect google.com:443
depth=2 C = US, O = "VeriSign, Inc.", OU = Class 3 Public Primary Certification Authority
verify return:1
depth=1 C = ZA, O = Thawte Consulting (Pty) Ltd., CN = Thawte SGC CA
verify return:1
depth=0 C = US, ST = California, L = Mountain View, O = Google Inc, CN = www.google.com
verify return:1

Se não conseguir obter uma sessão SSL, ela retornará com o seguinte:

[joeuser@host ~]$ openssl s_client -quiet -status -connect google.com:80
3078973148:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:699:

No Windows:

C:\OpenSSL-Win32\bin>
C:\OpenSSL-Win32\bin>openssl.exe s_client -quiet -status -connect www.google.com
:443
WARNING: can't open config file: /usr/local/ssl/openssl.cnf
Loading 'screen' into random state - done
depth=1 C = ZA, O = Thawte Consulting (Pty) Ltd., CN = Thawte SGC CA
verify error:num=20:unable to get local issuer certificate
verify return:0

C:\OpenSSL-Win32\bin>openssl.exe s_client -quiet -status -connect www.google.com
:80
WARNING: can't open config file: /usr/local/ssl/openssl.cnf
Loading 'screen' into random state - done
2096:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:.\ssl\s
23_clnt.c:683:
    
por 01.11.2011 / 18:05
0

Se você tiver o lynx instalado, ele suporta https ::, você provavelmente poderia usar um script usando esta função de comando.

O Lynx é basicamente um navegador somente de texto.

    
por 01.11.2011 / 18:08
0

Parece que o protocolo ICMP está sendo bloqueado pelo seu firewall corporativo, o que é muito típico (para bloquear ataques de smurf). Por que não apenas perguntar à sua equipe de TI para abrir o tráfego ICMP para o seu servidor?

    
por 01.11.2011 / 18:52
0

Posso estar assumindo incorretamente, mas acho que seu objetivo final é testar a conectividade, certo? Ambos telnet & O netcat funciona perfeitamente bem para isso. Você testaria estabelecendo uma conexão na porta de escuta e depois desconectando. O Telnet é mais adequado para um processo manual ou um com o qual você precisa interagir. Parece que você precisa de algo que possa ser roteirizado, então prefiro o netcat.

nc -z yourhostname port -ou-
nc -z www.google.com 80

A saída esperada seria:
Connection to www.google.com 80 port [tcp/http] succeeded!

Isso funcionaria tão bem com 443 / https ou qualquer outro serviço que você precisa testar. O valor de retorno para nc indicará se foi bem-sucedido ou não, para que você possa incorporá-lo em um script.

O Windows suporta o telnet de forma nativa e você pode baixar as compilações do Windows do netcat ou usar o Cygwin.

    
por 01.11.2011 / 22:29