
Установка:
- Raspberry 3B с Raspbian Stretch 9 на внешнем жестком диске и использованием ZRAM
- Raspi используется в качестве веб-сервера, на котором запущены стеки LAMP и MERN, а также осуществляется удаленный доступ через SSH с помощью 1 IDE (Coda для Mac OS)
- Порт SSH переадресован маршрутизатором со статическим IP-адресом
- fail2ban работает
Проблема:
При доступе к Raspberry из удаленного местоположения (через Интернет) через SSH, он работает до тех пор, пока соединение не зависнет. Это происходит случайным образом. Иногда я могу снова подключиться по SSH через несколько минут, а иногда — только после перезапуска Raspberry.
Что я пробовал:
- SSH в подробном режиме из удаленного местоположения:
debug1: Local version string SSH-2.0-OpenSSH_8.1
kex_exchange_identification: read: Connection reset by peer
- SSH в подробном режиме из локальной сети (на самом деле я подключаюсь по SSH к другой машине в локальной сети удаленно, а затем подключаюсь по SSH к Raspi с этой машины).Тот же результат:
Connection reset by peer
- Проверено
/etc/hosts.allow
и/etc/hosts.deny
=> Ничего там нет - Проверил iptables через
iptables -L --line-number
=> Ничего там нет - Проверенные журналы:
/var/log/fail2ban.log
иsudo journalctl -t sshd
=> Ничего поразительного. - Обновлено
sshd_config
сno DNS
- Переустановил SSH через
apt-get --reinstall install openssh-server openssh-client
У меня заканчиваются идеи, и я не имею ни малейшего понятия, что происходит. Кто-то уже сталкивался с такой же проблемой с SSH-подключением? Может ли это быть проблемой с нагрузкой на Raspberry?
решение1
Короче говоря, моя проблема не имела ничего общего с неполадками сети и была устранена путем проверкисистемный журнал.
Подробно:
Я заметил, что ни одно из веб-приложений (через стеки LAMP или MERN), работавших до возникновения проблемы, больше не было доступно.
Итак, я откопал syslog с помощью tail -f -n X /var/log/syslog
команды (заменив X на количество строк, которые вы хотите отобразить). Затем я заметил несколько строк, упоминающихПроблема с напряжением(извините, я не сохранил точные термины). Но по сути это означало, что мой Raspberry Pi, к которому был подключен внешний жесткий диск, не имел достаточно мощного источника питания.
Затем выяснилось, что жесткий диск был отключен и система зависла, что объясняет все вышеперечисленные проблемы.
Поэтому я вынул жесткий диск, вставил SD-карту обратно и снова запустил Raspberry Pi, одновременно выполняясистемный журналснова и мониторинг памяти с помощьюhtop. Оказалось, что когда я запустил серверы Apache и Node, оперативная память и память SWAP стали заполняться, повторяя те же последствия, что и описанные выше.
Поэтому в конце концов я увеличил объем памяти SWAP с помощью ZRAM.Ссылка здесь.
Сейчас все работает хорошо, но мониторинг еще продолжается.