AWSでホストされているBitbucketServerインスタンスがあります。 (別のリージョンにある)他のAWSサーバーから、SSH経由のgit cloneが失敗し、
ssh: connect to Host (hostname) port 7999: Connection refused
ただし、AWSの他のサーバー(Bitbucketサーバーと同じリージョン内)は、同じURLを使用してSSH経由で正常にクローンを作成できます。
その他の情報:
Bitbucketは間違いなくポート7999でリッスンしています:
$ Sudo netstat -tnlp | grep :7999
tcp6 0 0 :::7999 :::* LISTEN 20707/Java
(プロセス20707がメインのBitbucketプロセスです)
Bitbucketは、SSLを提供するリバースプロキシとしてApacheの背後で実行されています。
クローン作成インスタンスのポート7999でのtcpdumpの結果:
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
クローンサーバーからBitbucketへのsshの結果:
$ 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
bitbucketサーバーのtcpdumpは、クローンが試行されたときにデータを表示しません。
私は問題を見つけました。これは、セキュリティ部門のファイアウォールの外部の問題でした。クローンサーバーまたはBitbucketサーバーで変更する必要はありません。
から https://serverfault.com/a/288493/44206 :
TCPチェックサムオフロードと呼ばれる機能が原因で、「不正な」チェックサムが表示されます。発信TCPパケットのチェックサムフィールドは、オペレーティングシステムによって事前に計算されていません。ただし、代わりに0に設定し、NICプロセッサによる計算のために残します。WiresharkFAQには、より詳細な説明があります。
それは役立つかもしれませんが、あなたの問題はファイアウォールの問題のように聞こえます。このホストされたAWSサーバーで内部ファイアウォールが実行されていないことを確認しても問題はありません。実行しているOSがわからないと、何を探すべきかを推測することはできません。多くのLinuxオペレーティングシステムはiptablesを使用しています。たとえば、 here OracleLinuxまたはRedhatLinuxのファイアウォールをオフにして無効にする方法を確認できます。