Я захожу на сервер, на котором установлен баннер ssh. Я хотел бы подавить это (особенно для неинтерактивного использования). У меня нет доступа к серверу sshd_config
.
Лучшее решение, которое я нашел до сих пор, это установить LogLevel ERROR
опцию на клиенте. Проблема в том, что это будет подавлять любые другие INFO
сообщения уровня, которые я не хочу скрывать (ищите logit
примеры в OpenSSH ). Я мог бы также использовать, ssh -q
но это подавит еще больше.
Есть ли другие, более конкретные решения?
LogLevel ERROR
только подавляет баннер в новых версиях OpenSSH. В старых версияхLogLevel QUIET
илиssh -q
обязательны.-q
не работает (это не для меня в Debian 7), вы можете использовать решение из другого вопроса: serverfault.com/a/764403/62024Вы также можете использовать:
на
источник
sshd_config
», поэтому, к сожалению, это не отвечает на вопрос.Suppressing ssh banner from OpenSSH client
и этом ответе, хотя он не полностью отвечает на вопрос OP, он может помочь будущим пользователям.Установите hexedit:
apt-get update && apt-get install hexedit
Сделайте резервную копию вашего двоичного файла sshd и создайте редактируемую рабочую копию (как root):
Обновите двоичный файл с помощью hexedit:
hexedit /tmp/sshd.new
Нажмите TAB для переключения из HEX в область ASCII.
Используйте CTRL + S, чтобы вызвать запрос поиска и найти текст в вашем баннере, который вы хотите скрыть, например, «OpenSSH_7.4».
Вы должны увидеть что-то вроде:
Используйте клавиши со стрелками, чтобы выделить начало строки, которую вы хотите обновить, и введите замену.
Будьте осторожны, чтобы не выходить за пределы длины оригинального баннера. Вы также можете нажать TAB, чтобы переключиться обратно в область HEX, если вы хотите просто обнулить строку, установив для каждого слова значение «00».
Ваше изменение должно выглядеть примерно так:
Сохраните ваши изменения с помощью CTRL + x и Y.
Проверьте, есть ли экземпляры, которые мы пропустили (мы не ожидаем вывода сейчас):
Обновите sshd и перезапустите службу для хорошей меры:
Убедитесь, что вы все еще можете использовать SSH (в противном случае восстановите резервную копию или переустановите OpenSSH из диспетчера пакетов!):
ssh -vv user@ip
НОТА!!
Это изменение будет только временным, поскольку при каждом обновлении OpenSSH двоичный файл будет заменен.
источник
sshd
, это кажется довольно вероятным, поскольку он не указал никакогоsshd_config
доступа. Они ищут клиентское решение.