SSH: двухфакторная аутентификация

Одной вещи i 'll нравится добавлять, то, что было бы лучше исключить парня нечто из способности войти от ssh, Что я имею в виду, должен соединиться с сервером как пользователь "супермен" и впоследствии использование su foo чтобы стать пользователем нечто и выполнить любую команду, Вы хотите

Используя этот путь, взломщику нужны оба пароля / закрытый ключ, чтобы смочь использовать capistrano. Если он был закрытым ключом, он может соединиться с сервером, но не может выполнить capistrano., если у него есть пароль, он не может даже соединиться с сервером, потому что пользовательскому нечто не позволяют войти в систему.

30
задан 20 July 2012 в 06:44
7 ответов

Red Hat добавила патч для OpenSSH в RHEL (и, следовательно, CentOS) 6.3, требующий нескольких механизмов аутентификации, поэтому вы можете сделать что-то вроде этого:

RequiredAuthentications2 publickey,keyboard-interactive

См. Примечания к выпуску не более подробно.

К сожалению, эта функция, похоже, отсутствует в исходной версии OpenSSH и в Ubuntu 12.04, поэтому, если вы не хотите найти патч и перекомпилировать OpenSSH, я боюсь, вам не повезло.

8
ответ дан 28 November 2019 в 19:59

Вы можете использовать как модуль PAM Google Authenticator, так и открытые ключи, но для данной аутентификации будет использоваться только один. . То есть, если пользователь входит в систему с авторизованным открытым ключом, токен не требуется.

Или, говоря иначе: токены требуются только для аутентификации по паролю, а не для ключей SSH.

Это ограничение не применяется. из модуля Google Authenticator, кстати, но из SSH, который реализует только двухфакторную аутентификацию (через ChallengeResponseAuthentication ) для PAM, но не

5
ответ дан 28 November 2019 в 19:59

Вы ищете Duo Security

8
ответ дан 28 November 2019 в 19:59

Получите YubiKey и следуйте этому руководству http://berrange.com/posts/2011/12/18/multi-factor-ssh-authentication-using-yubikey-and- ssh-public-keys-together /

AFAIK, это лучший способ реализовать Yubikey на вашем сервере для доступа по SSH. Приведенное выше руководство позволяет вам использовать открытый ключ + yubikey, тогда как если вы используете официальное руководство ( http://code.google.com/p/yubico-pam/wiki/YubikeyAndSSHViaPAM ), это не так. не работают с открытым ключом.

С уважением, VIP

1
ответ дан 28 November 2019 в 19:59

If you set a passphrase on your private key then you have two-factor authentication already. In order to log in people would need:

  1. something you have - your private key
  2. something you know - the passphrase to your private key
0
ответ дан 28 November 2019 в 19:59

I know this question is a little stale, but for the sake of future people (myself included) who are looking for a solution, there's also talk of using the ForceCommand option in the sshd_config file to run a script which then performs the authentication. There's an example script here you can modify a bit to your needs, although in that example he calls it from the authorized_keys file instead of making it system-wide with sshd_config's ForceCommand.

2
ответ дан 28 November 2019 в 19:59

Этот вопрос от 2012 года. С тех пор, как SSH изменился и был реализован протокол SSH2.

В более поздних версиях SSH (> = 6.2) man sshd_config упоминает:

AuthenticationMethods
       Specifies the authentication methods that must be successfully completed for a user to be
       granted access.  This option must be followed by one or more comma-separated lists of
       authentication method names.  Successful authentication requires completion of every method
       in at least one of these lists.

       For example, an argument of ``publickey,password publickey,keyboard-interactive'' would
       require the user to complete public key authentication, followed by either password or key-
       board interactive authentication.  Only methods that are next in one or more lists are
       offered at each stage, so for this example, it would not be possible to attempt password or
       keyboard-interactive authentication before public key.

       This option is only available for SSH protocol 2 and will yield a fatal error if enabled if
       protocol 1 is also enabled.  Note that each authentication method listed should also be
       explicitly enabled in the configuration.  The default is not to require multiple authentica-
       tion; successful completion of a single authentication method is sufficient.

На этой странице http://lwn.net/Articles/544640/ также упоминается возможность одновременного использования открытого ключа и аутентификации PAM.

3
ответ дан 28 November 2019 в 19:59

Теги

Похожие вопросы