Powtarzanie identyfikacji ssh_exchange_identification: połączenie zamknięte przez błąd zdalnego hosta MacOS (naprawione tylko przez resetowanie ssh za każdym razem)

0

Rozbijam wiele zdalnych instancji za pomocą Google Cloud i scpskryptów -inging do tych instancji, aby je uruchomić i pobrać wyniki z scppowrotem na mój komputer lokalny. Rzeczy zaczynają się płynnie, ale po pewnym czasie (około 30 wystąpień później), nowe przypadki są w stanie scppliki z powrotem do komputera, kiedy pojawia się błąd: ssh_exchange_identification: Connection closed by remote host. Ten błąd znika dopiero po zresetowaniu ssh komputera lokalnego za pomocą następujących poleceń:

sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist

Jaki jest podstawowy problem i jak mogę go rozwiązać, aby rozwiązać ten problem bez konieczności ciągłego resetowania mojego ssh?

Nole
źródło

Odpowiedzi:

0

Być może biegasz do limitu MaxStartups sshd :

MaxStartups
Określa maksymalną liczbę równoczesnych nieuwierzytelnionych połączeń z demonem SSH. Dodatkowe połączenia będą odrzucane, dopóki uwierzytelnianie nie powiedzie się lub nie upłynie czas logowania LoginGraceTime dla połączenia. Domyślna wartość to 10: 30: 100.
Alternatywnie, losowe wczesne upuszczenie można włączyć, określając trzy wartości początkowe oddzielone dwukropkiem: szybkość: pełna (np. „10:30:60”). sshd (8) odrzuci próby nawiązania połączenia z prawdopodobieństwem szybkości / 100 (30%), jeśli są obecnie uruchamiane (10) nieuwierzytelnione połączenia. Prawdopodobieństwo wzrasta liniowo i wszystkie próby połączenia są odrzucane, jeśli liczba nieuwierzytelnionych połączeń osiągnie pełną wartość (60).

Możesz spróbować zmienić ustawienie. W systemie MacOS plik konfiguracyjny to /private/etc/ssh/sshd_config.

Alternatywnie możesz ustawić rozłożenie połączeń ssh na serwer, aby nie wszystkie przychodziły w tym samym czasie.

Kenster
źródło
Ale kiedy tworzę te instancje, daję im również klucz RSA, aby móc uzyskać dostęp do mojego komputera w celu scpowania. Czy te połączenia byłyby uważane za nieuwierzytelnione?
Nole
Każde połączenie nie jest uwierzytelniane, dopóki się nie uwierzytelni.
Kenster,
OK Zmieniłem MaxStartups na 200 i MaxSessions na 500 i zrestartowałem proces ssh, ale wciąż mam ten problem. Kiedy resetuje się ograniczenie sshd? Przekonałem się, że jeśli poczekam kilka godzin, problem również zniknie.
Nole,