免責事項: これは英文の記事「SSH connection to the ESXi host fails」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
ESXi ホストへの ssh 接続が下記のように失敗します。
# ssh XX.XX.XX.XX
kex_exchange_identification: Connection closed by remote host
Connection closed by XX.XX.XX.XX port 22
#
ESXi ホストの auth.log には、「fatal: send_rexec_state: setsockopt SO_SNDBUF: File too large」という出力がありました。
vSphere ESXi 8.x
Unix domain socket バッファの不足がデフォルト値(64K Byte)よりも低い値が設定されていたことが原因です。
Console より ESXi へログイン後に下記を実行して下さい。
1. デフォルト値(64K Byte)に設定
# localcli system settings advanced set -o /Misc/UserSocketUnixMaxBufferSize -i 65536
2. 設定されたことの確認
# localcli system settings advanced list -o /Misc/UserSocketUnixMaxBufferSize
Ex)
# localcli system settings advanced list -o /Misc/UserSocketUnixMaxBufferSize
SettingsAdvancedOption:
Path: /Misc/UserSocketUnixMaxBufferSize
Type: integer
Int Value: 65536 <------
Default Int Value: 65536
Min Value: 0
Max Value: 131072
String Value:
Default String Value:
Valid Characters:
Description: Max buffer size for UW unix domain sockets (bytes)
Host Specific: false
Impact: none
#
English version:SSH connection to the ESXi host fails