Não é possível clonar o SSH do Bitbucket de certos servidores

1

Temos uma instância do Bitbucket Server hospedada no AWS. De alguns outros servidores da AWS (em outra região), o git clone over SSH falha com

ssh: connect to host (hostname) port 7999: Connection refused

No entanto, outros servidores no AWS (na mesma região que o servidor Bitbucket) podem clonar com êxito o SSH, usando o mesmo URL.

Outras informações:

  • Bitbucket está definitivamente ouvindo na porta 7999:

    $ sudo netstat -tnlp | grep :7999
    
    tcp6 0 0 :::7999 :::* LISTEN 20707/java  
    

    (o processo 20707 é o principal processo do Bitbucket)

  • O Bitbucket está sendo executado por trás do Apache como um proxy reverso para fornecer SSL.

  • tcptraceroute e mtr na porta 7999 da instância que não pode clonar no Bitbucket na porta 7999 conectar-se com êxito.
  • A chave pública para o par de chaves usada pela instância que não pode se conectar é adicionada às chaves de acesso do repositório com acesso de leitura no Bitbucket.
  • Nos grupos de segurança da AWS, o grupo da instância de clonagem permite todas as conexões de saída e os grupos do servidor Bitbucket permitem conexões de qualquer lugar na porta 7999.
  • Resultados de um tcpdump na porta 7999 na instância de clonagem:

    tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
    
    16:56:53.348387 IP (tos 0x0, ttl 64, id 61715, offset 0, flags [DF], proto TCP (6), length 60)
    (cloning server's hostname).38606 > (bitbucket server's hostname).irdmi2: Flags [S], cksum 0x2799 (incorrect -> 0xb1db), seq 3675985409, win 26883, options [mss 8961,sackOK,TS val 1512892178 ecr 0,nop,wscale 7], length 0
    
    16:56:53.489908 IP (tos 0x0, ttl 252, id 37586, offset 0, flags [none], proto TCP (6), length 40)
    (bitbucket server's hostname).irdmi2 > (cloning server's hostname).38606: Flags [R.], cksum 0x24e4 (correct), seq 1472002966, ack 3675985410, win 26883, length 0
    
  • Resultados do ssh'ing do servidor de clonagem para o Bitbucket:

     $ sudo ssh -vvv -p 7999 ssh://[email protected]
     OpenSSH_6.6.1, OpenSSL 1.0.1e-fips 11 Feb 2013
     debug1: Reading configuration data /root/.ssh/config
     debug1: Reading configuration data /etc/ssh/ssh_config
     debug1: /etc/ssh/ssh_config line 56: Applying options for *
     debug2: ssh_connect: needpriv 0
     debug1: Connecting to stash.tddevops.com [172.24.16.201] port 7999.
     debug1: connect to address 172.24.16.201 port 7999: Connection refused
     ssh: connect to host stash.tddevops.com port 7999: Connection refused
    
  • O tcpdump no servidor Bitbucket não mostra dados quando um clone é tentado.

por DylanSp 27.10.2017 / 19:56

2 respostas

0

Eu descobri o problema; foi um problema externo com o firewall do nosso departamento de segurança. Nada precisava ser alterado no servidor de clonagem ou no servidor Bitbucket.

    
por 07.11.2017 / 18:38
0

De link :

You see the "incorrect" checksums due to a feature called TCP checksum offloading. The checksum fields for outgoing TCP packets are not pre-calculated by the operating system but instead set to 0 and left for calculation by the NIC processor. The Wireshark FAQ has a more detailed explanation.

Isso pode ajudar, mas seu problema parece um problema de firewall. Não faria mal se você não tiver um firewall interno em execução neste servidor da AWS hospedado. Sem saber que sistema operacional você está executando, não posso realmente especular sobre o que procurar. Muitos sistemas operacionais Linux usam o iptables. Por exemplo, você pode ver aqui como desativar e desativar o firewall para o Oracle Linux ou Redhat Linux.

    
por 06.11.2017 / 15:23