Иногда я нахожу следующее сообщение в auth.log:
sshd[8888]: error: no more sessions
В sshd_config я установил «MaxStartups 300», и у меня не должно быть почти столько же клиентов, соединяющихся одновременно. В напряженное время я предполагаю, что у меня может быть около 50-60 одновременных подключений, которое длится всего пару секунд при загрузке / загрузке небольшого файла через sftp.
Я подозреваю, что, возможно, некоторые клиенты не закрывают соединение должным образом, и, поскольку соединения происходят постоянно и довольно часто (каждый клиент подключается несколько раз в минуту), со временем это может сложиться. Чтобы устранить эту проблему, я хочу иметь возможность подсчитывать сеансы SSH, но я не могу придумать лучшего способа, чем подсчет соединений с помощью netstat:
netstat -an | grep 123.456.789.abc:22 | wc -l
Поскольку это будет подсчитывать соединения вместо сеансов, и я не уверен, если есть случай, когда сеанс будет жить, но соединение закрыто?
Есть ли лучший способ подсчета текущих подключений или даже лучше распечатать текущее состояние всех сеансов?
Заранее спасибо!
who
пролить свет на ситуацию?Ответы:
MaxStartups управляет количеством «одновременных неаутентифицированных соединений» с sshd, а не сессиями как таковыми. (Если лимит нарушается, он начинает сбрасывать старые соединения)
Если вы еще не предоставили явное значение для MaxSessions, по умолчанию оно будет равно 10. (Возможно, это то, что вы на самом деле имели в виду, что вы бы задали?)
Вы можете просмотреть страницу руководства для sshd_config более подробно: http://www.openbsd.org/cgi-bin/man.cgi?query=sshd_config&sektion=5
Я не вижу, чтобы в самом sshd была возможность сообщать статистику того типа, о котором вы спрашиваете (хотя я тоже не слишком много ее исследовал).
С уважением, Sapp3r.
источник
[Я понимаю, что это очень старый вопрос, но я добавляю его для потомков.]
Сообщение «больше нет сеансов» применяется к мультиплексным соединениям, а не к отдельным соединениям.
Похоже, что это было
#define
во время компиляции сMAX_SESSIONS
версиями до 5.1, когда был введен параметр MaxSessions : http://www.openssh.com/txt/release-5.1На RHEL5, по крайней мере,
MAX_SESSIONS
похоже, было увеличено до 20.источник