Аутентификация ключа паба ProFTPD, все еще просит пароль

Я настроил mod_sftp с ProFTPD, и по некоторым причинам он все еще предлагает мне пароль, когда я соединяюсь.

Это - мой conf.d/myserver файл:

SFTPEngine on
SFTPLog /var/log/sftp.log
Port 7770
SFTPHostKey /etc/ssh/ssh_host_rsa_key
SFTPHostKey /etc/ssh/ssh_host_dsa_key
SFTPAuthorizedUserKeys file:/etc/proftpd/authorized_keys/%u
SFTPCompression delayed
MaxLoginAttempts 6
DefaultRoot ~
Umask 002
CreateHome on 770 dirmode 770

И открытый ключ для пользователя находится в /etc/proftpd/authorized_keys.

2
задан 16 February 2016 в 22:20
2 ответа

Текущее значение SFTPAuthorizedUserKeys настроено на использование индивидуальных файлов авторизованных ключей. Я бы предположил, что для данного пользователя, давайте возьмем jsmith в качестве примера, их ключ должен быть помещен в файл с именем / etc / proftpd / authorized_keys / jsmith.

Чтобы ваша текущая настройка работала, попробуйте изменить значение SFTPAuthorizedUserKeys на /etc/proftpd/authorized_keys.

See http://www.proftpd.org/docs/contrib/mod_sftp.html#SFTPAuthorizedUserKeys для получения более подробной информации.

1
ответ дан 3 December 2019 в 11:36

Я испытал это, и это было вызвано тем, что выглядит как ошибка в ssh-keygen , которая проявляется при преобразовании ключа формата ssh-rsa в RFC-4716 формат ключа: заголовок комментария слишком длинный.

Чтобы убедиться, что это происходит с вами, включите параметр SFTPLog в файле proftpd.conf , затем в журнале SFTP В файле вы увидите такие строки, в частности, «строка слишком длинная»:

Jul 25 19:11:25 mod_sftp/0.9.7[16355]: public key fingerprint: 77:fa:c7:d6:da:b9:99:6f:9d:5f:74:30:ba:09:4f:e9
Jul 25 19:11:25 mod_sftp/0.9.7[16355]: line too long (74) on line 1 of '/etc/proftpd.d/authorized_keys/myusername'
Jul 25 19:11:25 mod_sftp/0.9.7[16355]: Make sure that '/etc/proftpd.d/authorized_keys/myusername' is a RFC4716 formatted key
Jul 25 19:11:25 mod_sftp/0.9.7[16355]: error base64-decoding key data in '/etc/proftpd.d/authorized_keys/myusername'
Jul 25 19:11:25 mod_sftp/0.9.7[16355]: error comparing keys from '/etc/proftpd.d/authorized_keys/myusername': Invalid argument
Jul 25 19:11:25 mod_sftp/0.9.7[16355]: sending userauth failure; remaining userauth methods: publickey,password
Jul 25 19:11:29 mod_sftp/0.9.7[16355]: disconnecting client (received EOF)

Взгляните на неправильный ключ, и вы увидите, как он выделяется: Excess line text

Обрежьте это текстовым редактором по своему выбору, и ключ аутентификации должен начать работать. При использовании bash это выглядит так, где user.pub - ваш ключевой файл:

cut -c 1-72 user.pub | sed '/^Comment: "[^"]*$/ s/$/"/' > user.pub

Если вы вместо этого хотите сохранить весь комментарий, вам нужно вывести из конца строки и поместить его в следующую. См. Раздел примеров в RFC 4716 , чтобы узнать, как переформатировать комментарии.

Наконец, я столкнулся с этой проблемой, используя ssh-keygen в CentOS 6.9. В моей версии для Mac OS Sierra ключевые комментарии правильно усекаются, чтобы избежать этой проблемы.

1
ответ дан 3 December 2019 в 11:36

Теги

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