Есть ли способ рассказать, как пользователь аутентифицировал свое соединение SSH? т.е. будь то по паролю или с помощью открытого ключа?

Я блокирую свой сервер, чтобы использовать только открытый ключ. Я просто хочу убедиться, прежде чем перевернуть переключатель, который все мои пользователи уже сделали переход, и никто не остается использовать пароли для входа в систему.

2 Solutions collect form web for “Есть ли способ рассказать, как пользователь аутентифицировал свое соединение SSH? т.е. будь то по паролю или с помощью открытого ключа?”

На Ubuntu:

$ sudo cat /var/log/auth.log|grep ssh|grep Accept 

На CentOS / RHEL:

 $ sudo cat /var/log/secure|grep ssh|grep Accept 

Это покажет все подключения и их аутентификацию [с момента последнего вращения файла журнала].

Если вы хотите видеть только соединения с паролем, просто пройдите через другой grep:

  ... grep ssh|grep Accept|grep password 

А для бонусных очков краткий список пользователей, все еще использующих пароли (при условии, что вывод из приведенных выше команд показывает вам имя пользователя в 9-м столбце):

 ... grep password|awk '{print $9}'|sort|uniq 

Подход к переменной среды

Вот одна из возможностей. Если вы счастливы, что PermitUserEnvironment установлена ​​в true в вашем sshd_config тогда вы можете использовать комбинацию переменной среды с ключом и некоторую проверку в /etc/profile чтобы предупредить / отклонить любого, кто все еще использует подход с паролем ,

В файле $HOME/.ssh/authorized_keys вас будет что-то в этом направлении

 environment="KEYUSED=yes" ssh-dsa AAA... 

Если этот ключ был использован, переменная KEYUSED будет установлена ​​на «yes», когда запускается /etc/profile .

Подход входа в журнал

Другой подход, check / var / log / secure для записей, таких как это, когда использовался ключ

 Jul 29 13:58:20 localhost sshd[827]: Accepted publickey for steve from 192.168.124.1 port 50829 ssh2: RSA d3:35:bc:ed:c7:6f:11:27:44:f8:13:66:af:1e:8e:7e 

и записи, такие как это, где был использован пароль

 Jul 29 14:02:08 localhost sshd[1320]: Accepted password for foo from 127.0.0.1 port 57460 ssh2 
  • Как устранить неисправность отключения туннелей ssh?
  • Как настроить пароль без ssh с ключами RSA
  • Тюрьма в chroot в debian 7.5 - Проблема разделения привилегий
  • Вопросы безопасности сервера SSH в Интернете
  • Предполагая, что sshd разрешает только аутентификацию с открытым ключом, как мне регистрировать отпечатки пальцев?
  • Как работают файлы $ HOME / .ssh и $ HOME / .ssh / authorized_keys, когда несколько пользователей имеют одинаковый UID?
  • iptables предотвращает соединение через ssh после изменения порта, несмотря на правило ACCEPT
  • Как указать задержку входа в ssh
  • Проблема подключения SSH / SCP | Потерянное соединение
  • SSH: сброс соединения после простоя в течение некоторого времени
  • Как ограничить SSH, чтобы разрешить удаленное туннелирование (не локально)?
  • Interesting Posts

    Используя awk для извлечения значения, выполните вычисление

    Замена символа в случайной позиции с помощью sed?

    Как остановить цвет PS1 оболочки bash для остановки в конце команды?

    Как просмотреть пакеты с файлами в определенном каталоге?

    Когда grepping файл, grep возвращает true вместо строк, почему?

    sed, чтобы заменить пустую строку двумя строками содержимого

    Lubuntu + pulseaudio

    Могу ли я заставить экран пустым и игнорировать ввод?

    Переустановите GRUB из LiveCD

    Проблемы с монтированием и автомонтированием и безопасностью

    vim: невозможно скопировать и вставить в Debian Stretch

    Создавать самозаверяющий сертификат с датой окончания в прошлом

    ImageMagick / GraphicsMagick: как объединить / скомпоновать несколько (3+) изображений без временных файлов за один шаг?

    Установите программу по умолчанию для одного конкретного файла в Nemo

    Копирование файла на несколько других файлов с разными именами

    Linux и Unix - лучшая ОС в мире.